Carles Fernandez
ed0654492d
Remove repeated sentence
2016-07-06 21:53:42 +02:00
Carles Fernandez
e4b0070e9a
Add volk_gnsssdr-config-info to the list of generated executables
2016-07-06 20:25:39 +02:00
Carles Fernandez
f3df860005
Starting 0.0.8git
2016-07-04 17:39:33 +02:00
Carles Fernandez
09a7eab397
Bump version number
2016-07-04 17:05:53 +02:00
Carles Fernandez
2374cb152c
Add CMake hint
...
See
78c8bc4a0e
2016-07-02 20:10:18 +02:00
Carles Fernandez
e6b62b8399
add --alignment and --malloc options to volk_gnsssdr-config-info
...
See
06ef4f42c7
2016-07-02 19:54:05 +02:00
Carles Fernandez
cf53f86aea
use GLIBCXX11 ABI
...
This should enable builds with GCC4 that link against libraries
like boost which were built with GCC5. See
e5fec2aaac
2016-07-02 19:41:15 +02:00
Carles Fernandez
512e2992e9
Document ENABLE_PROFILING option
2016-07-02 19:24:48 +02:00
Carles Fernandez
8cdcbb17d1
Fix typo
2016-07-02 19:14:05 +02:00
Carles Fernandez
d92b3598d7
Add option to launch volk_gnssssdr_profile after build
2016-07-02 18:54:39 +02:00
Carles Fernandez
0ddea14c57
Add automatic profiling after make
2016-07-02 13:34:00 +02:00
Carles Fernandez
a0bc6d7472
Don't override the BOOST_ROOT environment variable
2016-07-02 12:02:13 +02:00
Carles Fernandez
f180139968
Fix the CMake-based check for posix_memalign
2016-07-02 12:00:30 +02:00
Carles Fernandez
2f339d2ee7
fix error
2016-05-31 21:08:53 +02:00
Carles Fernandez
2abb774f6e
fix error
2016-05-31 21:06:28 +02:00
Carles Fernandez
ef6c5dd7bb
fix errors
2016-05-31 21:03:33 +02:00
Carles Fernandez
ce04d6889c
fix error
2016-05-31 20:58:59 +02:00
Carles Fernandez
c8f71204fc
Make kernels compatible with c98 standard
...
so the library can be built by more compilers
2016-05-31 20:56:19 +02:00
Carles Fernandez
5a73b4e047
Improve package reproducibility
...
Packages using CMake often use file(GLOB ...) to retrieve a list of
source files. As this is based on readdir(), the resulting file list
is unsorted. A common use case is to pass this list directly to
add_executable or add_library. But as the order is unpredictable, the
binaries are not reproducible (because the order in which the objects
are linked will vary).
See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=824263
2016-05-23 19:51:59 +02:00
Carles Fernandez
896d6bc045
Tag library version with git
2016-05-21 01:09:17 +02:00
Carles Fernandez
16c4bb677e
Fix building when using PyBOMBS
2016-05-21 01:06:46 +02:00
Carles Fernandez
daee8de0e0
Fix bug in AVX2 puppet
2016-05-21 00:42:21 +02:00
Carles Fernandez
19f46c2cd9
Bump version number to v0.0.7
...
preparing v0.0.7 release and minor code cleaning
2016-05-13 19:17:56 +02:00
Carles Fernandez
d5d80395ba
Update volk_gnsssdr_profile manpage
2016-05-11 19:20:01 +02:00
Carles Fernandez
dcc9b6ed8c
Remove compiler flags from MSVC builds
...
See https://github.com/gnuradio/volk/pull/78
2016-05-08 08:34:35 +02:00
Carles Fernandez
84911043b4
Documenting kernels constraint
2016-05-06 08:25:04 +02:00
Carles Fernandez
fd81154b95
Smaller figure
2016-05-05 20:37:32 +02:00
Carles Fernandez
f3f2e9458b
Adding caption and Doxygen path
2016-05-05 20:36:22 +02:00
Carles Fernandez
0881f19a89
Updating list of kernels
2016-05-05 19:40:34 +02:00
Carles Fernandez
1a1f0f9abe
Add reference to ION GNSS+ 2016 paper
2016-05-05 19:19:53 +02:00
Carles Fernandez
1b607751ef
Add graphic example of VOLK_GNSSSDR usage
2016-05-05 18:59:02 +02:00
Carles Fernandez
99d6ce9ba7
Remove line that was causing random fails in parallel compilations
...
in Mac OS X
2016-05-05 18:02:03 +02:00
Carles Fernandez
831cc75153
Remove tabs from the source code
2016-05-02 23:46:30 +02:00
Carles Fernandez
c6eec90849
adding zlib license text
2016-04-29 08:03:20 +02:00
Carles Fernandez
25e5c744d7
More consistent naming
...
now volk_gnsssdr_16ic_xn_resampler_16ic implements the same resampler
than volk_gnsssdr_32fc_xn_resampler_32fc. The old one, which is faster
in SSE implementations at the expense of some constraints on the inputs
(to be documented), is now named
volk_gnsssdr_16ic_xn_resampler_fast_16ic
2016-04-28 20:12:27 +02:00
Carles Fernandez
4c4f6c1def
Commenting out messages on standard output
...
which interferes with programs trying to use it for legitimate purposes.
2016-04-27 21:00:59 +02:00
Carles Fernandez
e102de53fc
fixing lintian warning spelling-error-in-binary
2016-04-26 20:06:49 +02:00
Carles Fernandez
36ab6a0e67
merging text fixes
2016-04-25 16:48:01 +02:00
Carles Fernandez
b2cc18bfa5
Adding AVX protokernel
2016-04-23 16:31:41 +02:00
Carles Fernandez
c6359c3313
fix in documentation
2016-04-23 16:30:36 +02:00
Carles Fernandez
2b7175083f
Merge branch 'next' of git+ssh://github.com/gnss-sdr/gnss-sdr into next
2016-04-13 18:26:19 +02:00
Carles Fernandez
414eaddb42
Fixing resamplers
...
Under some circumstances (i.e. negative Doppler) it could cause a
segmentation fault. It is now fixed for all protokernels.
2016-04-12 01:05:47 +02:00
Carles Fernandez
9cb60ec948
fixing resampler
2016-04-07 12:42:24 +02:00
Carles Fernandez
1aa9a9fd1e
Fixing resampler
2016-04-07 12:03:05 +02:00
Carles Fernandez
9ebbb3b460
fix kernel
...
This fixes a runtime error, since VOLK functions are static and a
segmentation fault was caused when aligned and unaligned versions were
called concurrently.
2016-04-03 09:07:10 +02:00
Carles Fernandez
a5fb34c800
Fixing NEON proto-kernels
2016-04-03 02:27:54 +02:00
Carles Fernandez
57107cf86d
Introducing a new resampler kernel for comparison
2016-04-01 12:41:00 +02:00
Carles Fernandez
7658f64527
adding unaligned protokernels
2016-04-01 10:36:52 +02:00
Carles Fernandez
5841258a36
bug fix
2016-04-01 01:51:58 +02:00
Carles Fernandez
99ceb30a0e
Fixes related to the MSVC compiler
2016-04-01 01:50:09 +02:00
Carles Fernandez
684073bef6
adding NEON puppet
2016-04-01 01:47:51 +02:00
Carles Fernandez
43330588a8
adding include for neon intrinsics
2016-04-01 01:25:57 +02:00
Carles Fernandez
f6cfc64cf7
adding NEON protokernel
2016-04-01 01:21:35 +02:00
Carles Fernandez
a71b118170
Workaround for problems with orc
2016-03-31 21:35:05 +02:00
Carles Fernandez
817139ba50
ask for aligned memory in a more portable way
2016-03-31 19:39:37 +02:00
Carles Fernandez
36660e05ca
Removing unused class (nco_lib, replaced by volk kernels)
2016-03-30 22:37:43 +02:00
Carles Fernandez
4f3273f296
code cleaning, removing tabs
2016-03-30 22:27:12 +02:00
Carles Fernandez
9eb175fb0e
Adding new resampler kernel and integrating it in the multicorrelator
2016-03-30 21:33:43 +02:00
Carles Fernandez
d8b45d9b79
fix wrong storeu by store
2016-03-28 13:51:51 +02:00
Carles Fernandez
78372ba2e9
adding _mm256_zeroupper() at the end of AVX and AVX2 protokernels
...
This avoids penalties for state transitions from 256-bit x86-AVX
instructions to x86-SSE instructions
2016-03-28 11:58:01 +02:00
Carles Fernandez
b1d99d58ec
fix typo in puppet initialization
...
The AVX2 protokernel achieves an acceleration factor x13.
2016-03-28 10:14:32 +02:00
Carles Fernandez
26e68e89f2
adding AVX2 protokernels (aligned and unaligned)
2016-03-28 09:42:55 +02:00
Carles Fernandez
7c1f5723e6
remove unneeded stores in NEON protokernels
2016-03-27 13:00:04 +02:00
Carles Fernandez
d113835073
adding new kernel: volk_gnsssdr_32fc_x2_rotator_dot_prod_32fc_xn
...
Including generic, SSE3 (aligned and unaligned), AVX (aligned and
unaligned) and NEON protokernels.
2016-03-27 12:50:53 +02:00
Carles Fernandez
751764343c
adding AVX2 protokerns
...
I haven't found a way to do the rotator part better than with SSE3. Only
the dot product takes real advantage of 256-bit registers. Even tough,
the gain with respect to SSE3 is about 12%.
2016-03-26 01:51:01 +01:00
Carles Fernandez
d987a04d42
adding AVX2 protokernels
2016-03-22 18:03:34 +01:00
Carles Fernandez
bd6c028ec4
bug fix
...
writing to the input pointer was having bad consequences (random fails
in other kernels)
2016-03-22 18:00:56 +01:00
Javier Arribas
0e47d97dec
Adding a missing include in gnsssdr volk kernel library (volk_gnsssdr_16ic_x2_rotator_dot_prod_16ic_xn)
2016-03-21 16:07:16 +01:00
Carles Fernandez
703de227a2
fix typo
2016-03-21 00:44:09 +01:00
Carles Fernandez
a908804b44
fix phase computation in the tail items of the NEON protokernel
2016-03-21 00:40:36 +01:00
Carles Fernandez
1983562496
The sincos kernel now accepts an initial phase
2016-03-21 00:38:08 +01:00
Carles Fernandez
485a405bab
Adding new neon kernel and solving x86 issues
...
Managing memory with volk_gnsssdr instead of malloc and free. This seems
to solve runtime problems (segmentation faults) in i386 (32 bit)
architectures.
2016-03-20 13:11:53 +01:00
Carles Fernandez
883cf629d1
Adding new NEON protokernel
...
Try another strategy based on multiply-and-accumulate for the dot
product. In all SIMD protokernels, managing memory with
volk_gnsssdr_malloc and volk_gnsssdr_free instead of calloc and free
2016-03-20 12:23:45 +01:00
Carles Fernandez
fa292961c1
Fix neon protokernel
2016-03-20 01:50:04 +01:00
Carles Fernandez
9c8fc9436e
Adding and integrating sincos kernel
2016-03-20 01:45:01 +01:00
Carles Fernandez
2be266cc71
adding sincos kernel
2016-03-19 21:41:19 +01:00
Carles Fernandez
c9ff9759cc
Fixing some numerical problems
2016-03-18 19:46:18 +01:00
Carles Fernandez
2cf1ea85af
fix app name in help message
2016-03-13 12:07:40 +01:00
Carles Fernandez
87dc56e147
Using vector multiply-accumulate in NEON kernels
...
Aprox 10% of improvememnt
2016-03-12 21:47:35 +01:00
Carles Fernandez
f7c1c9ce43
Using multiply-accumulate in NEON
2016-03-12 19:30:00 +01:00
Carles Fernandez
c236c3ab67
Exploiting multiply-accumulate in NEON
2016-03-12 13:32:10 +01:00
Carles Fernandez
a93a01e9b1
prefetching data
2016-03-12 12:22:26 +01:00
Carles Fernandez
268f298fad
More elegant workaround for 32-bit architecutres
2016-03-12 09:28:25 +01:00
Carles Fernandez
d9c333c85f
Improving documentation
...
Adding Doxygen documentation to VOLK_GNSSSDR kernels
2016-03-10 00:56:23 +01:00
Carles Fernandez
f6e713929a
Adding documentation
...
Copied from VOLK, with some minor changes
2016-03-09 21:01:22 +01:00
Carles Fernandez
81f4eadb5b
Deleting old, unused file
2016-03-09 19:35:56 +01:00
Carles Fernandez
243d66218b
Change @VERSION by @LIBVER@
2016-03-09 18:41:02 +01:00
Carles Fernandez
250375dbd3
Fix incorrect include when building with MSVC
...
Keeping track of VOLK's improvements, see
65539f2691
2016-03-09 18:23:19 +01:00
Carles Fernandez
9a92672905
Fix some CMake complaints
...
Keeping track of VOLK's improvements, see
434c994f21
2016-03-09 18:19:05 +01:00
Carles Fernandez
cf44382afe
tmpl: cast windows regs to int* calling cpuidex
...
Keeping track of VOLK's improvements. See
b1b69e1ae3
2016-03-09 18:15:28 +01:00
Carles Fernandez
1e9a9d1a55
reverting wrong commit
2016-03-09 15:56:07 +01:00
Carles Fernandez
59011a7772
prefetching data in the cache
2016-03-07 19:57:22 +01:00
Carles Fernandez
aac79eb78a
prefetching data in the cache
2016-03-07 19:25:12 +01:00
Carles Fernandez
a3d7683c85
Fix segmentation fault of volk_gnsssdr_profile in 32-bit architectures
...
Temporal deactivation of the unaligned protokernel of the multiple
correlator. It does not affect receiver's performance. The commit
includes other minor fixes.
2016-03-07 18:35:40 +01:00
Carles Fernandez
b24db5d77e
Fix compilation with CMake 3.5
...
The CMake variables CMAKE_BINARY_DIR and CMAKE_SOURCE_DIR should never be set. Now CMake 3.5 prevents the user from doing that. They have been replaced by their counterparts PROJECT_BINARY_DIR and PROJECT_SOURCE_DIR
2016-02-25 15:26:32 +01:00
Carles Fernandez
9ae59c2009
Adding missing include
2016-02-22 10:07:08 +01:00
Carles Fernandez
11c84ed8ad
Fixing kernels
2016-02-19 11:03:24 +01:00
Carles Fernandez
b2a654c646
fix typos
2016-02-14 15:06:45 +01:00
Carles Fernandez
1930f02c4f
saving one register in neon implementation
2016-02-14 15:02:17 +01:00
Carles Fernandez
6156f4b3de
some small fixes
2016-02-14 14:52:26 +01:00