[Speex-dev] Blackfin port on Visual DSP, Michael Shatz ?

Jean-Marc Valin jean-marc.valin at usherbrooke.ca
Tue Oct 16 16:56:22 PDT 2007


Some things to check. Do you compile with VAR_ARRAYS? If not, you can
probably reduce the size of the managed stack. In terms of data RAM,
everything should fit into SRAM easily. I've done some massive wideband
RAM reduction in 1.2beta2. If it's not working on Blackfin, then we'd
need to investigate that first. Depending on whether you're using all
the bit-rates, you might want to put only some of the codebooks in SRAM
(if you tell me what bit-rate, I can tell you which codebooks you need).

About code, it could be a bit more tricky and I don't know whether
everything can fit into SRAM.

> Jean-Marc, I don't want to come back on the debate,
> but I think you should include the VDSP architecture.

What do you mean by "the VDSP architecture"?

> (there is also a problem with variables named "bank"
> which is a compiler keyword...)

You don't even need that part of the code actually. Try getting the
git/svn version where I actually did a split into libspeex and
libspeexdsp. The one you need is libspeex only.

Cheers,

	Jean-Marc

Stéphane Lesage wrote:
> Hi,
> 
> I'm using the Speex codec on my Blackfin-based board,
> and plain-C performance is pretty poor.
> 
> Decoder is OK (something 25 MIPS for wide-band).
> But Encoder is not (wide-band quality 8, complexity 1):
> - 162 MIPS with Analog-Devices lib
> - 128 MIPS with 1.2beta2 (faster but not working)
> 
> I don't worry that much, as it's not the optimized version, and everything
> is running in SDRAM.
> 
> Can you give me some advice on what I should try to put into internal SRAM ?
> Critical code ? Input samples ? Code-books ?
> Can we pre-allocate internal buffers heavily used by the encoder ?
> 
> 
> I'm also trying to compile Speex with asm optimizations.
> But it's targetted for GCC...
> 
> I went through the archives, and found some entry-points to port
> asm-constraints to the VDSP compiler.
> But I'm facing the problem of 'dynamic' labels for loops.
> 
> I don't know if Michael Shatz has completed the port...
> If you're reading this. Would you share your files ?
> 
> 
> 
> Best regards.
> 


More information about the Speex-dev mailing list