Re: [Discuss-gnuradio] Using gnu-radio for project

2008-09-30 Thread Eric Blossom
On Tue, Sep 30, 2008 at 02:50:50PM -0400, Philip Balister wrote:
> On Tue, Sep 30, 2008 at 2:43 PM, Eric Blossom <[EMAIL PROTECTED]> wrote:
> > On Tue, Sep 30, 2008 at 02:03:14PM -0400, Philip Balister wrote:
> >> > This is great.  What we've been thinking about is building a library
> >> > of SIMD accelerated primitives, along the lines of Intel's Integrated
> >> > Performance Primitives.  The crucial differences would be: free
> >> > software (GPLv3); support for SSE, SSE2, SSE3, Altivec and Cell SPE
> >> > instruction sets.
> >>
> >> Do you mind adding NEON to this list?  NEON is a SIMD unit on ARM
> >> Cortex-A8 processors. Information on NEON instructions is at
> >> http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204h/Bcfjicfj.html.
> >> Sorry it si the superseded link, I'm too lazy to find the current one
> >> :)
> >
> >
> > NEON's fine by me, as long as you're doing the work :-)
> 
> I just want to make sure the work has somewhere to go.

Yep, me too.

> >> liboil is used by a number of desktop programs, spending time on this
> >> would be a win for me :)
> >
> > The issues I see with it is that there's currently no support for
> > complex- in the framework, and that the intel function naming
> > convention doesn't map well (at all?) into the liboil framework.
> 
> Well, who said it was an Intel dominated world?

Nobody.  However, they have provided over 1000 pages of detailed
documentation on their API.  Since a big part of any effort is
figuring out what the API should be, I'd prefer to use theirs (and
their documentation) than to reinvent the wheel.

Eric


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


RE: [Discuss-gnuradio] Using gnu-radio for project

2008-09-30 Thread Bob McGwier
I agree with this because of the Beagle board and the efficacy of OMAP
processors for embedded SDR apps.  With TI finally giving us free
development tools for noncommercial activities (not exactly GPL v3) the 6000
DSP part on the OMAP and the Neon are both sources of considerable MIPS at
very low power.

We should think about how to officially support libraries based on open
source we develop but for which there are NO free tools for some of the more
interesting parts coming out way including Cell, OMAP, Tilera Tile64, and
more.  We are doing this now for USRP2.  It is time to make a simple policy
statement that open source, but binary support is accepted and encouraged
given these conditions: A), B), 



Bob

ARRL SDR Working Group Chair
Member: ARRL, AMSAT, AMSAT-DL, TAPR, Packrats,
NJQRP, QRP ARCI, QCWA, FRC.
"Trample the slow   Hurdle the dead"

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of
Philip Balister
Sent: Tuesday, September 30, 2008 2:03 PM
To: Eric Blossom; Inderaj Bains; discuss-gnuradio@gnu.org
Subject: Re: [Discuss-gnuradio] Using gnu-radio for project

On Tue, Sep 30, 2008 at 1:48 PM, Eric Blossom <[EMAIL PROTECTED]> wrote:
> On Mon, Sep 29, 2008 at 03:13:09PM -0700, Inderaj Bains wrote:
>> Thanks Eric,
>> Yes I want to use SIMD. Since I want to spend most time improving
>> performance, it would be nice if I can start off from something
functioning
>> or put together something quickly.
>> How much effort would it be to get a GSM (other?) all software system
>> together (except A/D I guess). Maybe I could use pre-generated streams on
>> both ends in software.
>>
>> Thanks
>> Inderaj
>
> This is great.  What we've been thinking about is building a library
> of SIMD accelerated primitives, along the lines of Intel's Integrated
> Performance Primitives.  The crucial differences would be: free
> software (GPLv3); support for SSE, SSE2, SSE3, Altivec and Cell SPE
> instruction sets.

Do you mind adding NEON to this list?  NEON is a SIMD unit on ARM
Cortex-A8 processors. Information on NEON instructions is at
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204h/Bcfjicf
j.html.
Sorry it si the superseded link, I'm too lazy to find the current one
:)

> Our working title for this is the "Generic Performance Primtives" (GPP).
>
> One unresolved issue is what code to start with.  We need a framework
> that provides for reference implementations, QA, testing all argument
> alignments, correctness, performance, etc; runtime dispatch based on
> the equivalent of cpuid; can be built as both shared and static
> libraries (need static on the SPE).
>
> The basic idea (for the user visible routines) would be to start with
> the well thought out API described in Volume 1 (Signal Processing) of
> the IPP docs, peforming a s/ipp/gpp/g.
>
>
http://softwarecommunity.intel.com/isn/downloads/softwareproducts/pdfs/34649
9.pdf
>
>
http://softwarecommunity.intel.com/isn/downloads/softwareproducts/pdfs/34653
2_userguide_win_ia32.pdf
>
>
> Two possible starting points are:
>
>  liboil  http://liboil.sourceforge.net(currently x86, x86-64 and
PPC)

liboil is used by a number of desktop programs, spending time on this
would be a win for me :)

Philip

>  Framewave   http://framewave.sourceforge.net (x86 and x86-64 only)
>
>  (Framewave is built on top of SSEPlus, a thin wrapper on top of the SSE
>  C/C++ intrinsics.  http://sseplus.sourceforge.net
>  Mostly it appears that they provide emulations for instructions that
>  are missing at a particular level.  E.g., your code could target SSE3,
>  and they'd emulate the missing addsub instruction in terms of SSE.)
>
>
> For starters, it would be great if you could look at these two options
> (and any others that you come across) and let us know how you think
> these would work out as starting points, given the requirements above.
>
> If this seems like more than you want to bite off, I can provide a
> list of high-priority functions and you could start implementing the
> reference version and any of the SSE*, Altivec or SPE versions that
> grab your attention.  We're big on complex arithmetic :-)
>
> Please let me know how this sounds and if you've got any comments or
questions.
>
> Thanks!
> Eric
>
>
> ___
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio



___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Using gnu-radio for project

2008-09-30 Thread Philip Balister
On Tue, Sep 30, 2008 at 2:43 PM, Eric Blossom <[EMAIL PROTECTED]> wrote:
> On Tue, Sep 30, 2008 at 02:03:14PM -0400, Philip Balister wrote:
>> > This is great.  What we've been thinking about is building a library
>> > of SIMD accelerated primitives, along the lines of Intel's Integrated
>> > Performance Primitives.  The crucial differences would be: free
>> > software (GPLv3); support for SSE, SSE2, SSE3, Altivec and Cell SPE
>> > instruction sets.
>>
>> Do you mind adding NEON to this list?  NEON is a SIMD unit on ARM
>> Cortex-A8 processors. Information on NEON instructions is at
>> http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204h/Bcfjicfj.html.
>> Sorry it si the superseded link, I'm too lazy to find the current one
>> :)
>
>
> NEON's fine by me, as long as you're doing the work :-)

I just want to make sure the work has somewhere to go.

>
>
>> > Our working title for this is the "Generic Performance Primtives" (GPP).
>> >
>> > One unresolved issue is what code to start with.  We need a framework
>> > that provides for reference implementations, QA, testing all argument
>> > alignments, correctness, performance, etc; runtime dispatch based on
>> > the equivalent of cpuid; can be built as both shared and static
>> > libraries (need static on the SPE).
>> >
>> > The basic idea (for the user visible routines) would be to start with
>> > the well thought out API described in Volume 1 (Signal Processing) of
>> > the IPP docs, peforming a s/ipp/gpp/g.
>> >
>> >  
>> > http://softwarecommunity.intel.com/isn/downloads/softwareproducts/pdfs/346499.pdf
>> >
>> >  
>> > http://softwarecommunity.intel.com/isn/downloads/softwareproducts/pdfs/346532_userguide_win_ia32.pdf
>> >
>> >
>> > Two possible starting points are:
>> >
>> >  liboil  http://liboil.sourceforge.net(currently x86, x86-64 and 
>> > PPC)
>>
>> liboil is used by a number of desktop programs, spending time on this
>> would be a win for me :)
>
> The issues I see with it is that there's currently no support for
> complex- in the framework, and that the intel function naming
> convention doesn't map well (at all?) into the liboil framework.

Well, who said it was an Intel dominated world?

Philip


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Using gnu-radio for project

2008-09-30 Thread Eric Blossom
On Tue, Sep 30, 2008 at 02:03:14PM -0400, Philip Balister wrote:
> > This is great.  What we've been thinking about is building a library
> > of SIMD accelerated primitives, along the lines of Intel's Integrated
> > Performance Primitives.  The crucial differences would be: free
> > software (GPLv3); support for SSE, SSE2, SSE3, Altivec and Cell SPE
> > instruction sets.
> 
> Do you mind adding NEON to this list?  NEON is a SIMD unit on ARM
> Cortex-A8 processors. Information on NEON instructions is at
> http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204h/Bcfjicfj.html.
> Sorry it si the superseded link, I'm too lazy to find the current one
> :)


NEON's fine by me, as long as you're doing the work :-)


> > Our working title for this is the "Generic Performance Primtives" (GPP).
> >
> > One unresolved issue is what code to start with.  We need a framework
> > that provides for reference implementations, QA, testing all argument
> > alignments, correctness, performance, etc; runtime dispatch based on
> > the equivalent of cpuid; can be built as both shared and static
> > libraries (need static on the SPE).
> >
> > The basic idea (for the user visible routines) would be to start with
> > the well thought out API described in Volume 1 (Signal Processing) of
> > the IPP docs, peforming a s/ipp/gpp/g.
> >
> >  
> > http://softwarecommunity.intel.com/isn/downloads/softwareproducts/pdfs/346499.pdf
> >
> >  
> > http://softwarecommunity.intel.com/isn/downloads/softwareproducts/pdfs/346532_userguide_win_ia32.pdf
> >
> >
> > Two possible starting points are:
> >
> >  liboil  http://liboil.sourceforge.net(currently x86, x86-64 and 
> > PPC)
> 
> liboil is used by a number of desktop programs, spending time on this
> would be a win for me :)

The issues I see with it is that there's currently no support for
complex- in the framework, and that the intel function naming
convention doesn't map well (at all?) into the liboil framework.

Eric


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Using gnu-radio for project

2008-09-30 Thread Philip Balister
On Tue, Sep 30, 2008 at 1:48 PM, Eric Blossom <[EMAIL PROTECTED]> wrote:
> On Mon, Sep 29, 2008 at 03:13:09PM -0700, Inderaj Bains wrote:
>> Thanks Eric,
>> Yes I want to use SIMD. Since I want to spend most time improving
>> performance, it would be nice if I can start off from something functioning
>> or put together something quickly.
>> How much effort would it be to get a GSM (other?) all software system
>> together (except A/D I guess). Maybe I could use pre-generated streams on
>> both ends in software.
>>
>> Thanks
>> Inderaj
>
> This is great.  What we've been thinking about is building a library
> of SIMD accelerated primitives, along the lines of Intel's Integrated
> Performance Primitives.  The crucial differences would be: free
> software (GPLv3); support for SSE, SSE2, SSE3, Altivec and Cell SPE
> instruction sets.

Do you mind adding NEON to this list?  NEON is a SIMD unit on ARM
Cortex-A8 processors. Information on NEON instructions is at
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204h/Bcfjicfj.html.
Sorry it si the superseded link, I'm too lazy to find the current one
:)

> Our working title for this is the "Generic Performance Primtives" (GPP).
>
> One unresolved issue is what code to start with.  We need a framework
> that provides for reference implementations, QA, testing all argument
> alignments, correctness, performance, etc; runtime dispatch based on
> the equivalent of cpuid; can be built as both shared and static
> libraries (need static on the SPE).
>
> The basic idea (for the user visible routines) would be to start with
> the well thought out API described in Volume 1 (Signal Processing) of
> the IPP docs, peforming a s/ipp/gpp/g.
>
>  
> http://softwarecommunity.intel.com/isn/downloads/softwareproducts/pdfs/346499.pdf
>
>  
> http://softwarecommunity.intel.com/isn/downloads/softwareproducts/pdfs/346532_userguide_win_ia32.pdf
>
>
> Two possible starting points are:
>
>  liboil  http://liboil.sourceforge.net(currently x86, x86-64 and PPC)

liboil is used by a number of desktop programs, spending time on this
would be a win for me :)

Philip

>  Framewave   http://framewave.sourceforge.net (x86 and x86-64 only)
>
>  (Framewave is built on top of SSEPlus, a thin wrapper on top of the SSE
>  C/C++ intrinsics.  http://sseplus.sourceforge.net
>  Mostly it appears that they provide emulations for instructions that
>  are missing at a particular level.  E.g., your code could target SSE3,
>  and they'd emulate the missing addsub instruction in terms of SSE.)
>
>
> For starters, it would be great if you could look at these two options
> (and any others that you come across) and let us know how you think
> these would work out as starting points, given the requirements above.
>
> If this seems like more than you want to bite off, I can provide a
> list of high-priority functions and you could start implementing the
> reference version and any of the SSE*, Altivec or SPE versions that
> grab your attention.  We're big on complex arithmetic :-)
>
> Please let me know how this sounds and if you've got any comments or 
> questions.
>
> Thanks!
> Eric
>
>
> ___
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Using gnu-radio for project

2008-09-30 Thread Eric Blossom
On Mon, Sep 29, 2008 at 03:13:09PM -0700, Inderaj Bains wrote:
> Thanks Eric,
> Yes I want to use SIMD. Since I want to spend most time improving
> performance, it would be nice if I can start off from something functioning
> or put together something quickly.
> How much effort would it be to get a GSM (other?) all software system
> together (except A/D I guess). Maybe I could use pre-generated streams on
> both ends in software.
> 
> Thanks
> Inderaj

This is great.  What we've been thinking about is building a library
of SIMD accelerated primitives, along the lines of Intel's Integrated
Performance Primitives.  The crucial differences would be: free
software (GPLv3); support for SSE, SSE2, SSE3, Altivec and Cell SPE
instruction sets.

Our working title for this is the "Generic Performance Primtives" (GPP).

One unresolved issue is what code to start with.  We need a framework
that provides for reference implementations, QA, testing all argument
alignments, correctness, performance, etc; runtime dispatch based on
the equivalent of cpuid; can be built as both shared and static
libraries (need static on the SPE).

The basic idea (for the user visible routines) would be to start with
the well thought out API described in Volume 1 (Signal Processing) of
the IPP docs, peforming a s/ipp/gpp/g.

  
http://softwarecommunity.intel.com/isn/downloads/softwareproducts/pdfs/346499.pdf

  
http://softwarecommunity.intel.com/isn/downloads/softwareproducts/pdfs/346532_userguide_win_ia32.pdf


Two possible starting points are:

 liboil  http://liboil.sourceforge.net(currently x86, x86-64 and PPC)
 Framewave   http://framewave.sourceforge.net (x86 and x86-64 only)

 (Framewave is built on top of SSEPlus, a thin wrapper on top of the SSE
 C/C++ intrinsics.  http://sseplus.sourceforge.net 
 Mostly it appears that they provide emulations for instructions that
 are missing at a particular level.  E.g., your code could target SSE3,
 and they'd emulate the missing addsub instruction in terms of SSE.)


For starters, it would be great if you could look at these two options
(and any others that you come across) and let us know how you think
these would work out as starting points, given the requirements above.

If this seems like more than you want to bite off, I can provide a
list of high-priority functions and you could start implementing the
reference version and any of the SSE*, Altivec or SPE versions that
grab your attention.  We're big on complex arithmetic :-)

Please let me know how this sounds and if you've got any comments or questions.

Thanks!
Eric


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Using gnu-radio for project

2008-09-29 Thread Inderaj Bains
Thanks Eric,
Yes I want to use SIMD. Since I want to spend most time improving
performance, it would be nice if I can start off from something functioning
or put together something quickly.
How much effort would it be to get a GSM (other?) all software system
together (except A/D I guess). Maybe I could use pre-generated streams on
both ends in software.

Thanks
Inderaj

On Mon, Sep 29, 2008 at 11:47 AM, Eric Blossom <[EMAIL PROTECTED]> wrote:

> On Sat, Sep 27, 2008 at 03:37:34PM -0700, Inderaj Bains wrote:
> > Dear Friends,
> >
> > For a school project, I am looking to speed up a software radio.
> > I downloaded and built gnu-radio and dial-tone works.
> >
> > Ideally, I'd like to start with a functioning GSM (others?) radio
> > which runs in software and speed up the computationally intensive
> > components (which gnu radio might be using the fpga for)
>
> Good.  Are you thinking about using various SIMD instruction sets, or
> something else?
>
> > PS.  I have no background in dsp/signal-processing but have good
> > programming background and my day job is writing compilers.
>
> Eric
>



-- 
~Inderaj
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Using gnu-radio for project

2008-09-29 Thread Eric Blossom
On Sat, Sep 27, 2008 at 03:37:34PM -0700, Inderaj Bains wrote:
> Dear Friends,
> 
> For a school project, I am looking to speed up a software radio.
> I downloaded and built gnu-radio and dial-tone works.
> 
> Ideally, I'd like to start with a functioning GSM (others?) radio
> which runs in software and speed up the computationally intensive
> components (which gnu radio might be using the fpga for)

Good.  Are you thinking about using various SIMD instruction sets, or
something else?

> PS.  I have no background in dsp/signal-processing but have good
> programming background and my day job is writing compilers.

Eric


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] Using gnu-radio for project

2008-09-27 Thread Inderaj Bains
Dear Friends,

For a school project, I am looking to speed up a software radio.
I downloaded and built gnu-radio and dial-tone works.

Ideally, I'd like to start with a functioning GSM (others?) radio
which runs in software and speed up the computationally intensive
components (which gnu radio might be using the fpga for)

I would really appreciate if someone could help me in trying to figure
out if/how gnu-radio is a good fit and/or point to other open source
projects.

Thanks,
-Bains


PS.  I have no background in dsp/signal-processing but have good
programming background and my day job is writing compilers.
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio