discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: volk questions


From: Johannes Demel
Subject: Re: volk questions
Date: Sat, 14 Oct 2023 09:39:58 +0200
User-agent: Mozilla Thunderbird

Hi Fons,

first off, we'd need to know a bit more about your setup. Could you share the versions of VOLK and your host system, e.g. OS, version, etc. Furthermore, do you use a VM, a container, or smth like this?

Regarding your question, if these functions may be useful to VOLK / GNU Radio. I'd say yes. We'd have to figure out how this may work in practice though. I'd suggest to start with a PR.

Cheers
Johannes

On 13.10.23 16:08, Fons Adriaensen wrote:
Hello all,

I've recently installed volk on two machines, both Intel i5
but different types.

1. On one of the two machines 'make' failed while 'cmake ..'
ran without errors. Installing boost fixed this. Could it be
that the cmake step doesn't check for boost ?

2. On one the two machines, 'volk_profile -R volk_32f_sin_32f'
only tests the SSE4 versions even if AVX is supported (as
confirmed by profiling e.g. volk_32f_asin_32f), and an AVX
implemention is available (it is the selected one on the
other machine). Why is this ?

3. The reason I installed volk was to compare it against
some SSE4 code I developed for sin() and cos(). These calls
use cycles instead of rads as the argument as I find that
generally more convenient. They are not to full float32
precision, but more than good enough for e.g. music
synthesis. Testing them against volk on the two machines
produces:

fons@zita1:~/library/ssemath> testsin
sinf():               0.005975 us
volk_32f_sin_32f():   0.003983 us (SSE4.1)
sse_fastsin_f32():    0.000802 us

fons@zita4:~/library/ssemath> testsin
sinf():               0.005324 us
volk_32f_sin_32f():   0.002579 us (AVX2)
sse_fastsin_f32():    0.001088 us

The results for volk are consistent with the volk_profile
as above.

Harmonic distortion is:

  Harm  Level (dB)
     3 -162.0
     5 -137.8
     7 -128.6
     9 -147.3
    11 -141.1
    13 -138.1
    15 -138.1
    17 -138.6
    19 -139.4
    21 -140.5
    23 -141.6
    25 -142.8
    27 -143.6
    29 -144.6
    31 -145.7
THD:  -125.7

Would such routines be useful in volk / gnuradio ?

Ciao,




reply via email to

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