On Tue, Nov 8, 2011 at 9:08 PM, Josh Blum <j...@ettus.com> wrote: > Hey list, > > I have been itching to make some new gnuradio blocks that make use of > volk. So to avoid disturbing the delicate balance of code in > gnuradio-core, I have produced a new component called gr-basic. > > The goal of gr-basic is to replace many of the blocks in gnuradio-core > with vector optimized blocks that call into volk; and to make it easy > for users to extend blocks to support new data types. You can see the > branch here: http://gnuradio.org/cgit/jblum.git/log/?h=gr_basic > > So far, gr-basic has the familiar add, multiply, subtract and divide > block, but with 2 major differences: > > 1) > It is very easy to add new data types to these blocks. So it doesn't > suffer from the confusing code generation or naming convention issues > with the existing adder. So rather than generating gr_add_* for each > data type, there is one block add, which takes as a parameter, the data > type. > > 2) > Some of the adder implementations use volk routines. We happened to > already have a volk routine for adding floats, so rather than calling > into the generic implementation, we call into a work function that calls > the volk add routine, seen here: > > http://gnuradio.org/cgit/jblum.git/tree/gr-basic/lib/gr_basic_add.cc?h=gr_basic#n45 > > Just as a rough benchmark, you can expect a 30% savings in overhead from > the adder (tested on a sse machine). > > I hope that this gives users a good starting point for optimizing > gnuradio blocks with volk! > > -Josh >
So I like everything about this but the name. We could stuff all of this under the "gnuradio.gr" namespace in Python, or we could name this "gr-math." Actually, while I was typing this, I'm thinking we rename the directory to be "gr-blocks" but put them under the "gnuradio.gr" namespace. I'm expecting that since you've used different names for the blocks because of the data-type handling that they won't collide with what's in guradio-core right now. Thanks! Tom
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio