summaryrefslogtreecommitdiff
path: root/volk/lib
Commit message (Collapse)AuthorAgeFilesLines
...
| * volk: fixup QA's fcompare to test all differencesNathan West2014-01-271-2/+13
| | | | | | | | | | | | | | This addresses bug 627 by adding a fabs call when checking if a number is close to 0. If this is the case we also make sure the other buffer is within tolerance. For the normal test case wrap the percent difference in fabs rather than just the difference.
| * volk: proposed solutions to bugs 582/583Nathan West2014-01-271-2/+22
| | | | | | | | | | | | | | 582 and 583 are probably compiler bugs, and an upstream bug has been filed on launchpad with Linaro GCC. A static cast of the tolerance is not happening on armhf architectures. The work around forces a cast by using the values immediately after assignment.
* | volk: adding volk_malloc and volk_free functions to handle allocation of ↵Tom Rondeau2014-01-152-0/+177
| | | | | | | | aligned memory.
* | Merge branch 'maint'Tom Rondeau2014-01-101-1/+1
|\| | | | | | | | | Conflicts: volk/apps/volk_profile.cc
| * build: fixing various warning from clang.Julien Olivain2014-01-101-1/+1
| | | | | | | | Addresses iss #586; adapted for current set of warnings after patches since this issue was posted.
* | Merge branch 'maint'Tom Rondeau2014-01-091-15/+47
|\|
| * volk: modifying tests for AVX and SSE4a support in compiler/CPU.Tom Rondeau2014-01-091-36/+51
| |
| * volk: test for clang version; if less than 3.2, disable SSE4a machine due to ↵Tom Rondeau2014-01-061-0/+15
| | | | | | | | a bug in the compiler support.
| * volk: some versions of clang have problems with cvtpi32_ps.Tom Rondeau2014-01-061-19/+21
| | | | | | | | We make a separate cmake check here for xgetbv and cvtpi32_ps and set definitions accordingly.
* | Merge branch 'maint'Tom Rondeau2013-12-172-2/+3
|\|
| * volk: fixed issue with size_t comparison of std::string function (compare ↵Tom Rondeau2013-12-171-1/+2
| | | | | | | | against std::npos, not -1).
| * volk: cleaned up 32fc_x2_dot_prod_32fc code. Improved results; fixed on OS X.Tom Rondeau2013-12-171-1/+1
| | | | | | | | | | | | - Added unaligned versions of kernels. - Fixed issues with tail handling - Use _mm_setzero_ps instead of subtracting to zero out values
| * volk: clang/linux/avx fixTim O'Shea2013-12-101-1/+1
| | | | | | | | cmake: findIce fix (search $CMAKE_INSTALL_PREFIX first for source installed 3.5 needed for clang)
* | volk: adding constants from cmake into volk. Access through new ↵Tom Rondeau2013-12-122-2/+91
| | | | | | | | volk-config-info app (similar to gnuradio-config-info).
* | runtime: install compiler information volk: install compiler information, ↵Tim O'Shea2013-12-123-8/+22
| | | | | | | | output timing in ms, add benchmark mode (run all kernels even if only generic is available)
* | volk: clang/linux/avx fixTim O'Shea2013-12-121-1/+1
|/ | | | cmake: findIce fix (search $CMAKE_INSTALL_PREFIX first for source installed 3.5 needed for clang)
* volk: using union for float to int conversion in volk_32f_invsqrt_32f.Tim O'Shea2013-12-011-0/+1
| | | | Removes warning about type-punned pointer. Also, produces noticeable speed increase using GCC, though slightly slower with clang.
* cmake: fixes for Apple (specifically; clang generically) to handle some ↵Michael Dickens2013-11-261-2/+27
| | | | missing AVX instructions.
* volk: explicitly casting tolerance to float or unsigned int for passing to ↵Tom Rondeau2013-11-191-10/+13
| | | | | | fcpmare or icompare in QA tests. On ARMs, passing tol as a float to icompare that expects an unsigned int caused improper casting. Fixes bug #582.
* volk: allow AVX to compile using any compiler accepting xgetbvMicheal Dickens2013-10-121-33/+24
|
* volk: update QA test to use non integer multiples of register sizes to ↵Doug Geiger2013-08-271-76/+76
| | | | ensure we test the tail cases.
* volk: tests if xgetbv (an avx instruction) is really, truly available. ↵Michael Dickens2013-08-271-1/+30
| | | | Allows us to build on OSX with GCC.
* volk: fix popcnt in volk_rank_archsJosh Blum2012-11-141-3/+10
| | | | | | | | | | | | The naive ranking system uses a popcnt to see which impl matches the most archs. GCC gives us a builtin popcnt. MSVC also has __popcnt, but it seems to be segfaulting, probably because the rank archs.c is built arch indepdent. So, a manual popcnt has been implemented for all non gcc builin cases. This is superior because 1) it doesnt segfault, 2) it covers all compilers. Also note that the implementation does not have to be fast, this is a one-time lookup process while the kernel table is loaded.
* Merge branch 'master' into nextJohnathan Corgan2012-09-101-1/+1
|\
| * volk: forgot critical variable subsJosh Blum2012-09-101-1/+1
| |
* | volk: commit the super squash (volk dir only changes)Josh Blum2012-08-307-167/+249
| |
* | Merge branch 'master' into nextJohnathan Corgan2012-08-301-1/+3
|\|
| * Merge branch 'maint'Johnathan Corgan2012-08-301-1/+3
| |\
| | * volk: dont set CMAKE_REQUIRED_FLAGS when emptyJosh Blum2012-08-301-1/+3
| | |
* | | Merge branch 'master' into nextJohnathan Corgan2012-08-281-0/+13
|\| |
| * | Merge branch 'maint'Johnathan Corgan2012-08-281-0/+13
| |\|
| | * volk: special werror unused cmd line arg for clangJosh Blum2012-08-281-0/+13
| | |
* | | Merge branch 'qtsink_menus' into nextTom Rondeau2012-07-291-0/+2
|\ \ \ | |/ / |/| |
| * | Merge branch 'next' into qtsink_menusTom Rondeau2012-07-171-2/+3
| |\ \
| * | | qtgui: using volk to handle conversion/decomposing float/complex to double ↵Tom Rondeau2012-07-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | buffers. Adding an unaligned 32fc_deinterleave_64f_x2 volk kernel to support this.
| * | | Merge branch 'master' into my_qtsinkTom Rondeau2012-06-2418-338/+335
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: gr-qtgui/include/qtgui_sink_c.h gr-qtgui/include/qtgui_sink_f.h gr-qtgui/include/qtgui_util.h gr-qtgui/lib/ConstellationDisplayPlot.cc gr-qtgui/lib/FrequencyDisplayPlot.cc gr-qtgui/lib/SpectrumGUIClass.cc gr-qtgui/lib/TimeDomainDisplayPlot.cc gr-qtgui/lib/WaterfallDisplayPlot.cc gr-qtgui/lib/qtgui_sink_c.cc gr-qtgui/lib/qtgui_sink_f.cc gr-qtgui/lib/spectrumdisplayform.cc
* | | | | volk: fix for win64 MSVC not having MMX supportJosh Blum2012-07-171-1/+7
| |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) For the machine defs that will pass on windows, generate a machine with mmx and without using mmx| 2) In the cmakelists, we overrule MMX arch on MSVC 64. Also overrule redundant machines for when MMX does pass. 3) Set LV_HAVE_SSE && LV_HAVE_MMX for volk_16i_32fc_dot_prod_32fc_a. Afterall, it is calling into MMX intrinsics as well.
* | | | volk: adding unaligned byteswap kernel.Tom Rondeau2012-07-151-1/+2
| | | |
* | | | volk: fix volk_32f_x2_dot_prod_32f_u_sse tail caseJosh Blum2012-07-041-1/+1
| |/ / |/| |
* | | volk: fixing some volk kernels.Tom Rondeau2012-06-221-2/+2
| | | | | | | | | | | | This should fix some problems with gr-filter QA tests. Also removes some warnings.
* | | Merge branch 'gr_filter'Johnathan Corgan2012-06-201-1/+4
|\ \ \ | |_|/ |/| |
| * | volk: adding new kernels to test and profile.Tom Rondeau2012-06-151-1/+4
| | |
* | | volk: fix profiler comparisonJohnathan Corgan2012-05-121-1/+1
| | |
* | | volk: add SIMD implementation for fixed phase rotationNick McCarthy2012-05-113-7/+18
|/ /
* | volk: code simplification, overrule macro and python optsJosh Blum2012-04-191-21/+32
| |
* | volk: avoid sse2 saturation issue 32768->32767Josh Blum2012-04-191-1/+1
| |
* | volk: added set_float_rounding to volk_cpu_initJosh Blum2012-04-191-0/+5
| |
* | volk: avx overrule is gcc4.4, make prints matchJosh Blum2012-04-191-14/+16
| |
* | volk: disable AVX if GCC version < 4.6.0Nick Foster2012-04-191-0/+13
| |
* | volk: remove norc, implement machine overruleJosh Blum2012-04-191-13/+30
| |