discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] sparc <--> x86 data exchange


From: Stephane Fillod
Subject: Re: [Discuss-gnuradio] sparc <--> x86 data exchange
Date: Sat, 17 Dec 2005 01:38:31 +0100
User-agent: Mutt/1.5.11

On Fri, Dec 16, 2005 at 03:04:01PM -0800, Matt Ettus wrote:
[..]
> This would actually be a good place to make use of liboil, the library
> of optimized inner loops.  They have code for all sorts of conversions,
> and they pick up MMX and SSE-type optimizations automatically.

Indeed. liboil is really promising.
I was waiting for GNU Radio 2.6 to be released, and provided you and
Eric agree, IMHO it would be a smart move to "outsource" the SIMD 
speedups to liboil for the next GNU Radio release. It's way easier 
to develop speedups in liboil, introduce new archs, have them improved
by people other than the GNU Radio gang (IOW share efforts and benefits),
etc.

Right now, I'm creating the missing liboil API entries along with 
reference implementations. Reference implementations are plain 
C code which implements the algorithm in a clear, readable, high-
precision and always right way. Most of the time, reference 
implementations are horribly slow. But it's not a problem.
Based on the reference prototype, you may write as many optimized
implementations as you want. The liboil framework makes it easy
to automate testing against the reference implementation and corner 
cases (spill, alignment, ..). Always wondered whether SSE or 
3DNow! is faster on some new AMD chip?  Don't care about that,
liboil benchmarks at run time your breed(1) of optimized 
implementations and selects the one which has the best rating.

(1) not *genetically* engineered so far, sorry Eric ;-)

Expect liboil to gain more momentum, and pass the word among
the other SDR projects you may be involved in.

One thing I will need quickly is the list of inner loops in the need 
of optimization (OProfile reports anyone?). This is to begin with 
creating the API entries and the reference implementations. Then,
making it familiar to some ears, liboil is "The library that just 
keeps getting optimized better".


> See http://liboil.freedesktop.org/wiki/FrontPage

Definitely worth mentioning!

-- 
Stephane




reply via email to

[Prev in Thread] Current Thread [Next in Thread]