search for: small_footprint

Displaying 13 results from an estimated 13 matches for "small_footprint".

2010 Jun 30
1
SMALL_FOOTPRINT?
Jean-Marc, Can you give us some insight into the meaning and usage of #define SMALL_FOOTPRINT that appears in cwrs.c? Thx MikeH -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/opus/attachments/20100630/6edffd7c/attachment-0002.htm
2016 Sep 28
2
[PATCH 2/5] Optimize fixed-point celt_fir_c() for ARM NEON
Linfeng Zhang wrote: > +#ifdef SMALL_FOOTPRINT > + for (i=0;i<N-7;i+=8) > + { > [snip over 80 lines of complicated NEON intrinsics code] > + } > +#else So, one of the points of SMALL_FOOTPRINT is to reduce the code size on targets where this matters (even if it means running slower), but this is an awful lot of code....
2017 Feb 18
0
[PATCH] Refactor silk_LPC_analysis_filter() & Optimize celt_fir_permit_overflow() for ARM NEON
Hi Linfeng, On 15/02/17 04:05 PM, Linfeng Zhang wrote: > The original celt_fir() is a little bit messy. It has 2 branches chosen > by #ifdef SMALL_FOOTPRINT. Yeah, I agree that the #ifdef SMALL_FOOTPRINT in celt_fir() is a bit of overkill since it's not saving much code space. I just pushed a commit that gets rid of it, also refactoring the #else case a bit (see below). > For floating-point, the 2 branches are identical (except the operation &...
2017 Feb 15
2
[PATCH] Refactor silk_LPC_analysis_filter() & Optimize celt_fir_permit_overflow() for ARM NEON
Hi Jean-Marc, The original celt_fir() is a little bit messy. It has 2 branches chosen by #ifdef SMALL_FOOTPRINT. For floating-point, the 2 branches are identical (except the operation sequence of accumulating x[i] to sum, which is not a big deal). For fixed-point, the 2 branches are different. I separate them into 2 functions: the new celt_fir(), and celt_fir_permit_overflow() which is the SMALL_FOOTPRINT br...
2016 Aug 26
2
Using opus on ATMEL 32-bit RISC microcontroller
Hi, First of all, I'm quite new to opus. I'm trying to use fixed point opus on an ATMEL AT32UC3B0512. I added the opus source into mine sw tree, I trim off code I don't use (eg. arm, x86 folders) It compiles, but the generated image is too big to fit in the flash. Have I any way to reduce the source footprint? (Eg. throw away unecessary files, if there are any..) Thanks, Daniele.
2017 Feb 15
4
[PATCH] Refactor silk_LPC_analysis_filter() & Optimize celt_fir_permit_overflow() for ARM NEON
Hi, Attached are two patches. Patch 1 refactors silk_LPC_analysis_filter(). And Patch 2 optimizes the new function celt_fir_permit_overflow() for ARM NEON. Please recommend a better function name. We did the same internal code review and testing already. Thanks, Linfeng -------------- next part -------------- An HTML attachment was scrubbed... URL:
2016 Aug 26
3
Using opus on ATMEL 32-bit RISC microcontroller
...a --disable-float-api configure flag > (corresponding to DISABLE_FLOAT_API in the code) that makes it possible > to shave a few kB off the image by dumping all support for > floating-point. Since I'm using FIXED_POINT, I have to pass also --disable-float-api? > There's also a SMALL_FOOTPRINT macro that you can define > that will make the code a little smaller. Thanks I will give a try! Cheers, Daniele.
2015 May 18
1
Minimum files for building an embedded Opus library
Dear sirs, I'm trying to build an Opus library for an embedded application to run on a Microchip PIC32MX processor and I get a lot of errors in compilation time. My question is, what should be the minimum files and options needed to have such building, having in mind that only the very basic functionality in fixed point arithmetic is needed? Looking forward to your answer. Kind
2016 Aug 26
0
Using opus on ATMEL 32-bit RISC microcontroller
...don't need. OTOH, a decoder implementation has to be complete. Other than that, there's a --disable-float-api configure flag (corresponding to DISABLE_FLOAT_API in the code) that makes it possible to shave a few kB off the image by dumping all support for floating-point. There's also a SMALL_FOOTPRINT macro that you can define that will make the code a little smaller. Cheers, Jean-Marc
2016 Jun 17
5
ARM NEON optimization -- celt_fir()
Hi all, This is Linfeng Zhang from Google. I'll work on ARM NEON optimization in the next few months. I'm submitting 2 patches in the following couple of emails, which have the new created celt_fir_neon(). I revised celt_fir_c() to not pass in argument "mem" in Patch 1. If there are concerns to this change, please let me know. Many thanks to your comments. Linfeng Zhang
2016 Aug 26
2
Using opus on ATMEL 32-bit RISC microcontroller
Hello Daniele It would be worthwhile to attach an external serial flash or USB thumb drive, if the intent is store data. This allows for far more flexibility in storage Regards Amit On Fri, Aug 26, 2016 at 11:02 AM, Jean-Marc Valin <jmvalin at jmvalin.ca> wrote: > On 26/08/16 11:40 AM, Daniele Barzotti wrote: > > You're right! I forgot to say that I need only the encoder
2016 Jul 14
6
Several patches of ARM NEON optimization
I rebased my previous 3 patches to the current master with minor changes. Patches 1 to 3 replace all my previous submitted patches. Patches 4 and 5 are new. Thanks, Linfeng Zhang
2016 Jul 14
0
[PATCH 2/5] Optimize fixed-point celt_fir_c() for ARM NEON
...andle the case that (ord % 4) is non-zero. */ + ALLOC(rnum, ord+3, opus_val16); + for (i=0;i<ord-3;i+=4) + vst1_s16(rnum+i, vrev64_s16(vld1_s16(num+ord-i-4))); + for (;i<ord;i++) + rnum[i] = num[ord-i-1]; + rnum[ord] = rnum[ord+1] = rnum[ord+2] = 0; + (void)arch; + +#ifdef SMALL_FOOTPRINT + for (i=0;i<N-7;i+=8) + { + int16x8_t x_s16x8 = vld1q_s16(_x+i); + int32x4_t sum0_s32x4 = vshll_n_s16(vget_low_s16 (x_s16x8), SIG_SHIFT); + int32x4_t sum1_s32x4 = vshll_n_s16(vget_high_s16(x_s16x8), SIG_SHIFT); + for (j=0;j<ord;j+=4) + { + const int16x4_t...