summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * arm: NEON optimisations for gf_w16Janne Grunau2014-10-244-51/+435
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimisations for the 4,16 split table region multiplications. Selected time_tool.sh 16 -A -B results for a 1.7 GHz cortex-a9: Region Best (MB/s): 532.14 W-Method: 16 -m SPLIT 16 4 -r SIMD - Region Best (MB/s): 212.34 W-Method: 16 -m SPLIT 16 4 -r NOSIMD - Region Best (MB/s): 801.36 W-Method: 16 -m SPLIT 16 4 -r SIMD -r ALTMAP - Region Best (MB/s): 93.20 W-Method: 16 -m SPLIT 16 4 -r NOSIMD -r ALTMAP - Region Best (MB/s): 273.99 W-Method: 16 -m SPLIT 16 8 - Region Best (MB/s): 270.81 W-Method: 16 -m SPLIT 8 8 - Region Best (MB/s): 70.42 W-Method: 16 -m COMPOSITE 2 - - Region Best (MB/s): 393.54 W-Method: 16 -m COMPOSITE 2 - -r ALTMAP -
| * arm: NEON optimisations for gf_w8Janne Grunau2014-10-245-89/+428
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimisations for the 4,4 split table region multiplication and carry less multiplication using NEON's polynomial long multiplication. arm: w8: NEON carry less multiplication Selected time_tool.sh results for a 1.7GHz cortex-a9: Region Best (MB/s): 375.86 W-Method: 8 -m CARRY_FREE - Region Best (MB/s): 142.94 W-Method: 8 -m TABLE - Region Best (MB/s): 225.01 W-Method: 8 -m TABLE -r DOUBLE - Region Best (MB/s): 211.23 W-Method: 8 -m TABLE -r DOUBLE -r LAZY - Region Best (MB/s): 160.09 W-Method: 8 -m LOG - Region Best (MB/s): 123.61 W-Method: 8 -m LOG_ZERO - Region Best (MB/s): 123.85 W-Method: 8 -m LOG_ZERO_EXT - Region Best (MB/s): 1183.79 W-Method: 8 -m SPLIT 8 4 -r SIMD - Region Best (MB/s): 177.68 W-Method: 8 -m SPLIT 8 4 -r NOSIMD - Region Best (MB/s): 87.85 W-Method: 8 -m COMPOSITE 2 - - Region Best (MB/s): 428.59 W-Method: 8 -m COMPOSITE 2 - -r ALTMAP -
| * arm: NEON optimisations for gf_w4Janne Grunau2014-10-244-50/+335
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimisations for the single table region multiplication and carry less multiplication using NEON's polynomial multiplication of 8-bit values. The single polynomial multiplication is not that useful but vector version is for region multiplication. Selected time_tool.sh results for a 1.7GHz cortex-a9: Region Best (MB/s): 672.72 W-Method: 4 -m CARRY_FREE - Region Best (MB/s): 265.84 W-Method: 4 -m BYTWO_p - Region Best (MB/s): 329.41 W-Method: 4 -m TABLE -r DOUBLE - Region Best (MB/s): 278.63 W-Method: 4 -m TABLE -r QUAD - Region Best (MB/s): 329.81 W-Method: 4 -m TABLE -r QUAD -r LAZY - Region Best (MB/s): 1318.03 W-Method: 4 -m TABLE -r SIMD - Region Best (MB/s): 165.15 W-Method: 4 -m TABLE -r NOSIMD - Region Best (MB/s): 99.73 W-Method: 4 -m LOG -
| * arm: NEON optimisations for XOR in gf_multby_oneJanne Grunau2014-10-091-0/+35
| |
| * use posix_memalign to align memory for SIMD region testsJanne Grunau2014-10-093-13/+66
| | | | | | | | Properly emulate aligned allocation if posix_memalign is not available.
| * configure: add ARM/AArch64 NEON supportJanne Grunau2014-10-093-0/+74
| | | | | | | | Checks for arm_neon.h header.
| * simd: rename the region flags from SSE to SIMDJanne Grunau2014-10-0911-90/+99
| | | | | | | | | | SSE is not the only supported SIMD instruction set. Keep the old names for backward compatibility.
| * check: split unit tests and support paralell executionJanne Grunau2014-10-093-12/+17
| |
| * build: fix out of source tree buildJanne Grunau2014-10-094-8/+8
| |
| * build: make CFLAGS user setableJanne Grunau2014-10-091-3/+3
|/ | | | | There is no need to force the non-default CFLAGS on users trying to set them via enviroment variable or on configure command.
* Merged in dachary/gf-complete/wip-static-code-analysis (pull request #24) Kevin Greenan2014-10-032-2/+1
|\ | | | | static code analysis fixes
| * remove dead code in create_gf_from_argvLoic Dachary2014-09-171-1/+0
| | | | | | | | | | | | | | | | Since there can only be one -m, base cannot be set by -m COMPOSITE and then deallocated on the second -m if it is bugous. The second -m will exit on error at _gf_errno = GF_E_TWOMULT;. Signed-off-by: Loic Dachary <loic-201408@dachary.org>
| * disable gf_error_check test that requires >> 64Loic Dachary2014-09-171-1/+1
|/ | | | | | Because >> 64 does not have a defined behavior. Signed-off-by: Loic Dachary <loic-201408@dachary.org>
* Merged in beol/gf-complete (pull request #23) Kevin Greenan2014-08-231-1/+6
|\ | | | | On CPU that doesn't support SSE4.2 instructions set, this will fail
| * On CPU that doesn't support SSE4.2 instructions set, this will failLeo Laksmana2014-08-231-1/+6
|/ | | | | | | because incorrect header is included. smmintrin.h => SSE4.1 nmmintrin.h => SSE4.2
* Removed comments marking CARRY_FREE_GK additions.Adam Disney2014-06-165-12/+2
|
* Merge remote-tracking branch 'dalgaaf/wip-da-sca-20140513'Adam Disney2014-06-169-37/+37
|\
| * gf_w32.c: remove dead assignment with no effectDanny Al-Gaaf2014-05-141-1/+0
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_time.c: remove dead assignment to 'elapsed'Danny Al-Gaaf2014-05-141-2/+0
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w32.c: fix/remove some dead assignmentsDanny Al-Gaaf2014-05-141-8/+4
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w16.c: fix/remove some dead assignmentsDanny Al-Gaaf2014-05-141-2/+2
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w128.c: remove some dead assignmentsDanny Al-Gaaf2014-05-141-3/+0
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w8.c: fix dead assignment report from scan-buildDanny Al-Gaaf2014-05-141-1/+2
| | | | | | | | | | | | Fix dead assignment in case of INTEL_SSSE3 defined. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w64.c: remove dead assignments and unused variable 'm2'Danny Al-Gaaf2014-05-141-3/+1
| | | | | | | | | | | | | | The 'm2' variable in gf_w64_clm_multiply_region_from_single_2() isn't used except for calculations on 'm2' which are not used later in the code. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w64.c: remove dead assigments in gf_w64_shift_multiply()Danny Al-Gaaf2014-05-141-3/+0
| | | | | | | | | | | | | | These assigments are never used and directly overwritten later in the function. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * tools/gf_poly.c: fix undefined allocation of 0 bytesDanny Al-Gaaf2014-05-141-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to man page of malloc the behaviour in case of allocation size of 0 bytes is undefined: "If size was equal to 0, either NULL or a pointer suitable to be passed to free() is returned" Fix for clang scan-build report: Unix API Undefined allocation of 0 bytes (CERT MEM04-C; CWE-131) 210 poly = (gf_general_t *) malloc(sizeof(gf_general_t)*(n+1)); 9 Call to 'malloc' has an allocation size of 0 bytes Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w32.c: fix dereference of undefined pointer valueDanny Al-Gaaf2014-05-131-1/+1
| | | | | | | | | | | | Check for array boundaries of 't' in while loop header. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * test/gf_unit.c: free memory after usageDanny Al-Gaaf2014-05-131-7/+13
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_inline_time.c: fix memory leakDanny Al-Gaaf2014-05-131-4/+6
| | | | | | | | | | | | | | | | Free all with malloc allocated memory before exit. Change if checks against 'w' to be a if-else check to prevent checking after already matched. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
* | Fixed a few minor warnings when running autogen.sh.Adam Disney2014-06-165-20/+8
| |
* | Merge remote-tracking branch 'jayrde/wip-autoconf-cleanup'Adam Disney2014-06-1623-42961/+69
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .gitignore INSTALL Makefile.in aclocal.m4 config.guess config.sub configure examples/Makefile.in include/config.h.in include/config.h.in~ install-sh ltmain.sh m4/libtool.m4 m4/ltversion.m4 missing src/Makefile.in test/Makefile.in tools/Makefile.in
| * | ignore more library files and eecutablesJens Rosenboom2014-03-181-1/+21
| | |
| * | fixup AM_INIT_AUTOMAKE callJens Rosenboom2014-03-181-1/+1
| | |
| * | add autogen.sh call to READMEJens Rosenboom2014-03-181-0/+1
| | |
| * | cleanup unused flag leftover from commit fb0bbdcfJens Rosenboom2014-03-181-4/+0
| | |
| * | Merge branch 'wip-autoconf-cleanup' of ↵Jens Rosenboom2014-03-180-0/+0
| |\ \ | | | | | | | | | | | | https://bitbucket.org/jayrde/gf-complete into wip-autoconf-cleanup
| | * | Created new branch wip-autoconf-cleanupJens Rosenboom2014-03-180-0/+0
| | | |
| * | | remove obsolete filesJens Rosenboom2014-03-182-148/+0
| | | |
| * | | add more autogenerated files to be ignoredJens Rosenboom2014-03-181-0/+7
| | | |
| * | | remove autogenerated files from repositoryJens Rosenboom2014-03-1817-38854/+0
| | | |
| * | | add .gitignoreJens Rosenboom2014-03-181-0/+41
| |/ /
* | | autoreconf'd to reflect addition of --disable-sseKevin Greenan2014-06-093-2/+18
| | |
* | | Adding option to disable SSE in autoconf scriptKevin Greenan2014-06-091-0/+8
| | |
* | | Removed PDF from the repo and added a note in the README that describes how toKevin Greenan2014-06-092-2/+4
| | | | | | | | | | | | get the manual.
* | | Implemented CARRY_FREE_GK. Sections added are tagged with a comment //ADAMAdam Disney2014-06-065-15/+163
| |/ |/| | | | | for easy navigation.
* | Merged in dalgaaf/gf-complete/wip-da-coverity-rebased (pull request #21) Kevin Greenan2014-04-277-12/+17
|\ \ | | | | | | Fixes for some issues found via Coverity in the Ceph project.
| * | gf_w4.c: remove some dead codeDanny Al-Gaaf2014-04-221-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fix for coverity issue from Ceph project: CID 1193093 (#1 of 1): Structurally dead code (UNREACHABLE) unreachable: This code cannot be reached: "return gf_w4_double_table_i...". Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | gf.c: fix pointless expressionDanny Al-Gaaf2014-04-221-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove identical expression, reorganize code in gf_error_check() to be identical handled trough all checks. Removed (raltmap && arg1 != 4) check - this is dead code (arg1 is always 4 in this code path). Fix for coverity issue from Ceph project: CID 1193071 (#1 of 1): Same on both sides (CONSTANT_EXPRESSION_RESULT) pointless_expression: The expression (arg1 == 4 && arg2 == 32) || (arg1 == 4 && arg2 == 32) does not accomplish anything because it evaluates to either of its identical operands, arg1 == 4 && arg2 == 32. Did you intend the operands to be different? Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | fix comment/message on GF_E_SP128_A/GF_E_SP128_SDanny Al-Gaaf2014-04-222-4/+4
| | | | | | | | | | | | | | | | | | Swap comments/messages on GF_E_SP128_A/GF_E_SP128_S. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | gf_w8.c: add missing breaksDanny Al-Gaaf2014-04-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since there is no comment indicating fallthrough on purpose added a break in switch value 5 and 6. Fix for coverity issue from Ceph project: CID 1193084 (#1 of 1): Missing break in switch (MISSING_BREAK) unterminated_case: This case (value 5) is not terminated by a 'break' statement. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>