[opus] [RFC PATCH v1 0/8] Ne10 fft fixed and previous

Viswanath Puttagunta viswanath.puttagunta at linaro.org
Fri May 8 10:22:25 PDT 2015


Hello Jean-Marc,

**Resending.. not sure why subject got removed earlier**

Below are the results that show test_unit_dft passes, but
test_unit_mdct fails (only for nfft=480, 960, 1920)
Note: Tested on BeagleboneBlack(Cortex-A8) fixed point on branch [1]

./test_unit_dft
nfft=32 inverse=0,snr = 88.394372
nfft=32 inverse=1,snr = 93.896470
nfft=128 inverse=0,snr = 89.185895
nfft=128 inverse=1,snr = 93.537021
nfft=256 inverse=0,snr = 88.353151
nfft=256 inverse=1,snr = 90.826012
nfft=36 inverse=0,snr = 87.883324
nfft=36 inverse=1,snr = 88.161852
nfft=50 inverse=0,snr = 84.841953
nfft=50 inverse=1,snr = 86.312280
nfft=60 inverse=0,snr = 142.086642
nfft=60 inverse=1,snr = 140.223589
nfft=120 inverse=0,snr = 139.717566
nfft=120 inverse=1,snr = 135.677978
nfft=240 inverse=0,snr = 137.783374
nfft=240 inverse=1,snr = 131.742062
nfft=480 inverse=0,snr = 137.329389
nfft=480 inverse=1,snr = 125.394139


Testing test_unit_mdct

nfft=32 inverse=0,snr = 85.342660
nfft=32 inverse=1,snr = 96.283780
nfft=256 inverse=0,snr = 86.729952
nfft=256 inverse=1,snr = 87.326203
nfft=512 inverse=0,snr = 82.575740
nfft=512 inverse=1,snr = 87.088448
nfft=1024 inverse=0,snr = 84.944481
nfft=1024 inverse=1,snr = 86.939423
nfft=2048 inverse=0,snr = 84.754290
nfft=2048 inverse=1,snr = 86.859531
nfft=36 inverse=0,snr = 84.423668
nfft=36 inverse=1,snr = 86.638850
nfft=40 inverse=0,snr = 83.808312
nfft=40 inverse=1,snr = 87.403083
nfft=60 inverse=0,snr = 84.983050
nfft=60 inverse=1,snr = 88.736219
nfft=120 inverse=0,snr = 82.342631
nfft=120 inverse=1,snr = 84.941462
nfft=240 inverse=0,snr = 88.011018
nfft=240 inverse=1,snr = 88.410825

nfft=480 inverse=0,snr = 9.016824
** poor snr: 9.016824 **

nfft=480 inverse=1,snr = 87.773827

nfft=960 inverse=0,snr = 11.813777
** poor snr: 11.813777 **

nfft=960 inverse=1,snr = 88.283572

nfft=1920 inverse=0,snr = 7.652986
** poor snr: 7.652986 **

nfft=1920 inverse=1,snr = 87.762925


Thanks,
Vish

[1]: https://git.linaro.org/people/viswanath.puttagunta/opus.git/shortlog/refs/heads/rfcv2_fft_fixed_exp
Regards,
Vish


On 8 May 2015 at 12:06, Jean-Marc Valin <jmvalin at jmvalin.ca> wrote:
> Is the actual output of the test posted somewhere? One thing I would
> suspect is that the test might use values that trigger overflows not
> generally triggered with audio.
>
>         Jean-Marc
>
> On 08/05/15 11:08 AM, Viswanath Puttagunta wrote:
>> Hello Timothy,
>>
>> Just FYI, Phil at ARM is still looking into why mdct is failing.. will
>> keep you posted. In the mean time, do you want me to disable NE10 for
>> mdct_forward and re-submit the patchset so we may make progress?
>>
>> Regards,
>> Vish
>>
>> On 30 April 2015 at 09:33, Viswanath Puttagunta
>> <viswanath.puttagunta at linaro.org> wrote:
>>>
>>> On 29 April 2015 at 17:22, Timothy B. Terriberry <tterribe at xiph.org> wrote:
>>>>
>>>> Viswanath Puttagunta wrote:
>>>>>
>>>>> This patch series is follow up on work I posted on [1].
>>>>> In addition to what was posted on [1], this patch series mainly
>>>>> integrates Fixed point FFT implementations in NE10 library into opus.
>>>>> You can view my opus wip code at [2].
>>>>
>>>>
>>>> Thanks, and I apologize for being slow here.
>>>>
>>>>>     - This was surprising to me because test_unit_dft passes for all
>>>>>       nfft including 60, 120, 240, 480. May be there are some data
>>>>>       corner cases that need further investigation.
>>>>
>>>>
>>>> Yes, that seems concerning. I'd like to at least understand the cause of the failures. "Audio is clearly audible" is not a very strong test for encoder quality regressions, but in the worst case we could just disable NE10 for mdct_forward.
>>>
>>> Yes, agree we need to root cause this.. I only mentioned audio is
>>> audible clearly to point out that NE10 fft is not completely messed
>>> up, but does have some corner cases where it is failing. ARM folks are
>>> actively looking into this issue, and expecting some resolution next
>>> week.
>>>
>>> Also, this NE10 fixed fft issue only impacts patches
>>> armv7,armv8: Optimize fixed point fft using NE10 library
>>> armv7,armv8: Extend fixed fft NE10 optimizations to mdct
>>>
>>> In the mean time, do you want me (as you suggested) disable NE10 fixed
>>> fft for mdct_forward? That way when it gets fixed in NE10, it will
>>> just be a one line change patch that will follow.
>>>
>>> Either way, request that we make progress on review/merge rest of the patches.
>> _______________________________________________
>> opus mailing list
>> opus at xiph.org
>> http://lists.xiph.org/mailman/listinfo/opus
>>


More information about the opus mailing list