Commit graph

121 commits

Author SHA1 Message Date
Andrea Mazzoleni
f181eb96e7 Use the optimal displacement depending on the number of disks 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
8f45779253 Change RAID AVX512/GFNI functions to use forward iterations 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
26a1e3efda Remove the special case of a single data disk when not strictly required 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
87db4d8778 Remove unused level 0 from the pshufb table 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
c15269d271 Change the AVX512BW generation to use pshufb also for Q parity 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
44bd4d7b13 Extend the pshufb table to include the Q parity coefficients 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
1021288edd New displacement benchmarks 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
4d8138e9bd Simplify GFNI implementations 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
af008b220f Always build RAID test with USE_RAID_AES 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
fabaa8d1b3 Assume the assembler supports all x86 SSE/AVX instructions 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
312e7212c4 Extend the RAID regression test to detect unset parity 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
1dd1845a5b Add support for AVX2 GFNI 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
7602094692 Disable AVX512 on CPUs with narrow shuffle ports or double-pumped 256-bit datapath 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
46f152daf2 Revise the RAID library Makefile 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
80dfbfd6de Be more clear when GFNI is really used 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
99f8ec9675 Optimize AVX512 gen1 parity with the vpternlogq instruction 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
f691c6f90a Add tables for the AES Polynomial 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
bef65f1a51 Comment about the RAID optimizations 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
f4318ae604 Use a simpler approach in the new AVX512 generation functions 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
ade2c6c96d Preliminary support for AVX512GFNI 2026-07-13 11:03:56 +02:00
Andrea Mazzoleni
20d7a9d513 Change commenting style 2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
21e2f0455d Add detection of AVX2GFNI 2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
19ba549ea4 Add more AVX512 functions for parity 2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
5050c52d15 Preliminary support for ADVX512 2026-07-13 11:03:55 +02:00
Christoph Hellwig
9e7dfb3a78 Make all RAID forwarders static and local using a new registration interface
Co-authored-by: Andrea Mazzoleni <amadvance@gmail.com>
2026-07-13 11:03:55 +02:00
Andrea Mazzoleni
562d59d9c8 Avoid a folding VLA warning in clang 2026-07-06 15:57:49 +02:00
Andrea Mazzoleni
ae9b472898 Add detection of AVX512BW and AVX512GFNI 2026-04-16 00:13:51 +02:00
Andrea Mazzoleni
b709371d2d Fix typos in the comment of the raid library
Some checks are pending
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-04-15 10:53:25 +02:00
Andrea Mazzoleni
0d0431a907 Simpler Copyright string 2026-04-09 17:56:49 +02:00
Christoph Hellwig
60269a1236 Use SPDX (https://spdx.dev/) tags to identify the license used for each
file, and a COPYING file explaining the licensing scheme, with the actual
licenses listed in the LICENSES/ directory.
2026-04-02 16:01:37 +02:00
Andrea Mazzoleni
e80734fc4c Fix typos 2026-01-22 16:13:25 +01:00
Andrea Mazzoleni
f7798b2357 Update performance test of raid.c
Some checks failed
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
2025-10-14 23:26:34 +02:00
Andrea Mazzoleni
13a4872e69 Revise the top comment of raid.c
Some checks failed
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
2025-10-13 17:32:55 +02:00
Andrea Mazzoleni
56c4076e23 Avoid a warning about function pointer conversion. No functional changes 2025-01-23 15:51:59 +01:00
Andrea Mazzoleni
607564c5fe Fix some typos 2023-12-09 10:45:26 +01:00
Jens Kühnel
6b3ac2a6cb Update address of FSF in GPLv2 2023-08-09 14:44:48 +02:00
Andrea Gelmini
2dacb15516 Fix typos
Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2022-07-21 14:48:48 +02:00
Andrea Gelmini
986e9b4131 Fix typos 2020-05-26 12:50:15 +02:00
Andrea Mazzoleni
21241c5078 Preliminary advise support 2016-05-15 14:50:59 +02:00
Andrea Mazzoleni
9430106c71 Allow to disable inline assembly from configure
This is required for the -fsanitize options that don't
support inline assembly statements.
2016-01-09 11:19:52 +01:00
Andrea Mazzoleni
cffa2f0c10 Better Atom prediction of fastest RAID implementation 2015-11-21 09:08:53 +01:00
Andrea Mazzoleni
77117b1cd5 Add some more warning checks, and fix the ones reported 2015-08-05 09:42:11 +02:00
Andrea Mazzoleni
1c06674d1a Some comments about x86 optimizations 2015-06-20 16:47:50 +02:00
Andrea Mazzoleni
2ae9d8d41a Add recognition of new Atom CPUs 2015-06-04 22:38:32 +02:00
Andrea Mazzoleni
35b1b08b6c Clean the cpu.h header 2015-03-30 23:36:36 +02:00
Andrea Mazzoleni
8a0d49b21e Fix the selftest due missing return value 2015-03-30 22:23:23 +02:00
Andrea Mazzoleni
0ac0a8eceb Extend the raid regression test with some more case 2015-03-30 18:57:33 +02:00
Andrea Mazzoleni
dd888c30db Add better checks at the raid funtions 2015-03-27 08:44:20 +01:00
Andrea Mazzoleni
20a565a8c1 Add missing new file 2015-03-21 17:18:03 +01:00
Andrea Mazzoleni
f48c0c3cd0 Rename raid_rec_dataonly() to raid_data() 2015-03-21 17:16:16 +01:00