Andrea Mazzoleni
|
b78542685f
|
Add portable 128-bit vector parity routines for gen1/gen2/genz to optimize non-x86 CPUs
|
2026-06-04 21:18:47 +02:00 |
|
Andrea Mazzoleni
|
d03a583523
|
Use vpternlogq in raid_gen3-6_avx512bw to fuse sequential vpxorq instructions into single 3-way XORs
|
2026-06-04 17:48:25 +02:00 |
|
Andrea Mazzoleni
|
7a2eac4bb3
|
Gate AVX-512BW gen1/gen2 behind slow_avx512() to avoid double-pumped shuffle penalties
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-06-04 09:41:53 +02:00 |
|
Andrea Mazzoleni
|
9ce976232c
|
Remove the unused number of data disks from the vector allocation
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
The same addressing rules are applied to the parity disks because
they are used as data disks during recovery operations.
|
2026-06-03 22:01:00 +02:00 |
|
Andrea Mazzoleni
|
287135e2c1
|
Inject variable page-offset noise to disk buffer displacement to mitigate prefetcher contention
|
2026-06-03 22:01:00 +02:00 |
|
Andrea Mazzoleni
|
ff1056547d
|
Use the optimal displacement depending on the number of disks
|
2026-06-03 22:01:00 +02:00 |
|
Andrea Mazzoleni
|
fdadb443ad
|
Change RAID AVX512/GFNI functions to use forward iterations
|
2026-06-03 22:01:00 +02:00 |
|
Andrea Mazzoleni
|
54f1185cde
|
Remove the special case of a single data disk when not strictly required
|
2026-06-03 22:01:00 +02:00 |
|
Andrea Mazzoleni
|
33a62a4c74
|
Remove unused level 0 from the pshufb table
|
2026-06-03 22:01:00 +02:00 |
|
Andrea Mazzoleni
|
5fb82d6195
|
Change the AVX512BW generation to use pshufb also for Q parity
|
2026-06-03 22:01:00 +02:00 |
|
Andrea Mazzoleni
|
d9798b6377
|
Extend the pshufb table to include the Q parity coefficients
|
2026-06-03 22:01:00 +02:00 |
|
Andrea Mazzoleni
|
eff01f8c8f
|
New displacement benchmarks
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
14053fb682
|
Simplify GFNI implementations
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
31d6c05eea
|
Always build RAID test with USE_RAID_AES
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
e3a0671c00
|
Assume the assembler supports all x86 SSE/AVX instructions
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
00d272a8b9
|
Extend the RAID regression test to detect unset parity
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
f9a1370b42
|
Add support for AVX2 GFNI
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
8ae654d8a6
|
Disable AVX512 on CPUs with narrow shuffle ports or double-pumped 256-bit datapath
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
c0c10197bd
|
Revise the RAID library Makefile
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
2a3f1e5f2f
|
Be more clear when GFNI is really used
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
821a0e444e
|
Optimize AVX512 gen1 parity with the vpternlogq instruction
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
7e7751a68a
|
Add tables for the AES Polynomial
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
31c394ec84
|
Comment about the RAID optimizations
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
914a0216b4
|
Use a simpler approach in the new AVX512 generation functions
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
746a9b8940
|
Preliminary support for AVX512GFNI
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
5caae12610
|
Change commenting style
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
e06d8ab550
|
Add detection of AVX2GFNI
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
b61168a561
|
Add more AVX512 functions for parity
|
2026-06-03 22:00:59 +02:00 |
|
Andrea Mazzoleni
|
18aa07be36
|
Preliminary support for ADVX512
|
2026-06-03 22:00:59 +02:00 |
|
Christoph Hellwig
|
c889153cb2
|
Make all RAID forwarders static and local using a new registration interface
Co-authored-by: Andrea Mazzoleni <amadvance@gmail.com>
|
2026-06-03 22:00:59 +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
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
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
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 |
|