1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-11-14 22:04:57 +00:00
Commit Graph

2065 Commits

Author SHA1 Message Date
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
6cf47e1958 orc is giving some problems in Ubuntu 14.04 2016-03-31 21:20:02 +02:00
Carles Fernandez
817139ba50 ask for aligned memory in a more portable way 2016-03-31 19:39:37 +02:00
Carles Fernandez
3d733a5140 initializing all members in the constructor 2016-03-31 00:27:33 +02:00
Carles Fernandez
228645586e Merge branch 'next' of https://github.com/carlesfernandez/gnss-sdr into next 2016-03-30 23:51:00 +02:00
Carles Fernandez
60cc057eb6 Fix defects detected by Coverity scan 2016-03-30 23:49:53 +02:00
Carles Fernandez
1946e3b6e3 sync 2016-03-30 22:56:37 +02:00
Carles Fernandez
864c81b082 Merge branch 'next' of https://github.com/carlesfernandez/gnss-sdr into next 2016-03-30 22:48:32 +02:00
Carles Fernandez
36660e05ca Removing unused class (nco_lib, replaced by volk kernels) 2016-03-30 22:37:43 +02:00
Carles Fernandez
806fdcdade code cleaning 2016-03-30 22:28:13 +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
70a2c5837c code cleaning 2016-03-30 21:09:38 +02:00
Javier Arribas
b2034896e1 Merge branch next_gps_20ms_corr with next. Removing obsolete code and code cleaning 2016-03-30 15:03:25 +02:00
Javier Arribas
d15066fda6 Bug fix in Hybrid PVT date/time computation. Removed the obsolete GPS L1 Optim tracking block 2016-03-29 18:40:00 +02:00
Javier Arribas
e37824787e Adding RX clock offset [s] storage in LS PVT class member 2016-03-29 18:12:59 +02:00
Carles Fernandez
81ae079c06 Merge branch 'next' of https://github.com/carlesfernandez/gnss-sdr into next 2016-03-29 12:16:37 +02:00
Carles Fernandez
1b9516fa8b Integrating the new volk kernel in the multiple correlator (32 bits)
and some cleaning
2016-03-28 16:35:55 +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
4411af40b3 Updating armadillo version to 6.600.5 2016-03-25 12:22:51 +01:00
Javier Arribas
500dc59516 Release candidate of the GPS L1 C/A telemetry decoder supporting variable tracking correlation length 2016-03-22 18:07:12 +01:00
Carles Fernandez
31d0366d73 Merge branch 'next' of https://github.com/carlesfernandez/gnss-sdr into next 2016-03-22 18:04:52 +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
Carles Fernandez
daa794d251 sync 2016-03-21 17:55:33 +01:00
Carles Fernandez
3777943dbd sinc 2016-03-21 17:38:35 +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
b888573c3d Replacing the fxp_nco by the sincos kernel 2016-03-21 01:49:59 +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
c60dff01c5 update 2016-03-20 15:02:56 +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
9cb43ef84a Adding missing library link 2016-03-20 02:46:15 +01:00