[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] Google Summer of Code 2014 applicant : Optimizati
From: |
Bogdan Diaconescu |
Subject: |
Re: [Discuss-gnuradio] Google Summer of Code 2014 applicant : Optimization with VOLK |
Date: |
Tue, 25 Feb 2014 05:21:35 -0800 (PST) |
Hi Abhishek,
When implemented gr-dvbt (https://github.com/BogdanDIA/gr-dvbt) I used VOLK in
many places to speed-up the processing. However, there is a great deal of
speed-up that still need to be achieved on both Tx/Rx in order to lower cpu
cycles consumption so there are a lot of challenges in the project from this
point of view.
For example the Viterbi implementation is done using intrinsics instead of
using VOLK just because when I used VOLK it was quite slow, achieving only
16mbps of processing per single thread (7-8mbps on just C implementation).
Using intrinsics it raised the spead to 32-37mbps per thread which is quite
good but the code is not directly portable. So, a good Viterbi decoder that
achieves easily over 60mbps speed at input is still necessary probably not only
in dvb-t implementation but perhaps in other applications. Just to add more to
the challenge one may want to have a readable code beside the necessary speed
(Spiral viterbi implementation is on the opposite side).
The OFDM synchronization code is also very time consuming and although uses
VOLK already it can be using with great benefit new AVX2 instructions. Actually
many of the blocks can use new instructions to speed-up the data processing.
Basically, for dvb-t on it's maximum speed with OFDM FFT 8k, QAM-64 and
puncturing rate 7/8 the output of video is of 32mbps which means more than
60mbps of processing speed after de-puncturing. A bigger challenge would be
implementing real life DVB-S receiver where the data rate is over 50mbps at
video output :) ).
This is just my short insight of challenges one may face when dealing with
speed optimizations in a modern communication project.
Bogdan
--------------------------------------------
On Sun, 2/23/14, Abhishek Bhowmick <address@hidden> wrote:
Subject: [Discuss-gnuradio] Google Summer of Code 2014 applicant :
Optimization with VOLK
To: address@hidden
Date: Sunday, February 23, 2014, 8:52 AM
Hello,
I have completed a Bachelor's degree in
Electrical Engineering from IIT Bombay, India and will be
joining a masters program in Computer Science in August. For
the summer, I am interested in participating GSoC 2014 and
GNU Radio is an organization where my background fits
nicely.
I went through the ideas page and was
particularly interested in doing performance optimization
with VOLK. After going through some online documentation
about the library and the SDR'12 paper, I realised that
following areas need work :
1. Profiling GNU radio code to identify new
kernels and implement them for existing Intel SIMD
extensions, also porting kernels to other ISA extensions.
2. Better testing of the effects of more complex
scheduler logic on larger environments (beyond simple
kernels)
3. Exploring extension of Volk to GPU ISAs, to
leverage chips such as AMD Fusion (However, this seems to
more research than software development)
According to the GSoC proposal, point (1) seems
to be the expectation. Given this, I would like some advice
on how to go ahead looking for potential ideas (and some
feedback on feasibility of the other ideas as well)
My background : C++, Python, Signal Processing,
Computer Architecture
Thanks,
Abhishek Bhowmick
-----Inline Attachment Follows-----
_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
- [Discuss-gnuradio] Google Summer of Code 2014 applicant : Optimization with VOLK, Abhishek Bhowmick, 2014/02/23
- Re: [Discuss-gnuradio] Google Summer of Code 2014 applicant : Optimization with VOLK,
Bogdan Diaconescu <=
- Re: [Discuss-gnuradio] Google Summer of Code 2014 applicant : Optimization with VOLK, Tom Rondeau, 2014/02/25
- Re: [Discuss-gnuradio] Google Summer of Code 2014 applicant : Optimization with VOLK, Bogdan Diaconescu, 2014/02/25
- Re: [Discuss-gnuradio] Google Summer of Code 2014 applicant : Optimization with VOLK, West, Nathan, 2014/02/25
- Re: [Discuss-gnuradio] Google Summer of Code 2014 applicant : Optimization with VOLK, West, Nathan, 2014/02/25
- Re: [Discuss-gnuradio] Google Summer of Code 2014 applicant : Optimization with VOLK, Abhishek Bhowmick, 2014/02/26