Andreas Abel
57fab08aad
Merge pull request #42 from iwereth/master
...
`native_write_msr` compatibilty for kernel 6.16+
2026-01-26 00:54:39 +01:00
Andreas Abel
9c1f659433
Minor improvements
2026-01-26 00:53:23 +01:00
Andreas Abel
96992fe7c8
Support for RDPRU
...
Fixes #44
2026-01-25 19:15:32 +01:00
Andreas Abel
4802651ad6
Merge pull request #43 from GuillaumeDIDIER/master
...
[minor] Fix semi-colon in python
2026-01-25 17:47:44 +01:00
Andreas Abel
3eb002078a
Add a dependency-breaking instruction for false flag dependencies
...
Fixes issue #34
2026-01-24 23:23:43 +01:00
Andreas Abel
110c563f7d
Additional TP experiments
2026-01-24 19:39:43 +01:00
Andreas Abel
723c3ae8a2
cpuBench support for ARL-E
2026-01-18 20:00:06 +01:00
Andreas Abel
f752bfeb6c
Add experiments with clean upper 32 bits for 32/64-bit GPR operands
2026-01-17 21:17:08 +01:00
Andreas Abel
cea9344dd6
Add an additional latency experiment
...
This makes issues like #29 less likely to occur.
2026-01-09 23:25:17 +01:00
Andreas Abel
ca271bea41
Add support for {rd,wr}{fs,gs}base
...
Fixes #30
2025-11-23 22:32:46 +01:00
Guillaume DIDIER
da0d29434e
[minor] Fix semi-colon in python
2025-11-18 08:59:47 +01:00
Andreas Abel
eaf5306080
PTWRITE support
...
Fixes #41
Note that PTWRITE potentially has variable throughput, depending on IA32_RTIT_STATUS. This is currently not handled.
2025-11-16 21:33:09 +01:00
Andreas Abel
884f82742e
Initial support for Arrow Lake
2025-11-15 23:40:47 +01:00
Deepak Sharma
78fde5bc68
native_write_msr compatibilty for kernel 6.16+
...
Since kernel 6.16 release, we have the patch https://lore.kernel.org/all/20250427092027.1598740-14-xin@zytor.com/ merged mainline with the commit `785cdec46e92`
It introduces some changes to definition of macros associated with msr operations
Change `native_write_msr` arguments to support this change, along with proper version checks
2025-11-16 02:31:34 +05:30
Andreas Abel
3980e61377
cpuBench support for EMR, MTL, and ZEN5
2025-06-08 21:39:09 +02:00
Andreas Abel
b3191d26c0
Workaround for https://sourceware.org/bugzilla/show_bug.cgi?id=32813
2025-06-08 21:35:50 +02:00
Andreas Abel
08e351b7fb
configs for EMR, MTL, and ARL
2025-05-18 16:22:49 +02:00
Andreas Abel
c7bce4bebc
update CPUID
2025-05-17 20:48:06 +02:00
Andreas Abel
217c2c3307
compatibility with recent kernels
2025-03-04 00:43:51 +01:00
Andreas Abel
faf75236ca
ranges
2023-03-12 13:48:05 +01:00
Andreas Abel
6fa0df0469
extended asm syntax
2023-01-09 17:25:41 +01:00
Andreas Abel
a7c8989664
Merge pull request #28 from bjzhjing/add-kernel-mode-fix
...
fix kernel mode crashing in Ubuntu 22.04
2022-12-10 20:09:24 +01:00
Cathy Zhang
e13f0aee33
fix kernel mode crashing in Ubuntu 22.04
...
While build nanoBench kernel module in Ubuntu 22.04, gcc is with
-mfunction-return=thunk-extern as default option. According to chapter
6.1.1 JMP2RET in the following reference:
https://www.amd.com/system/files/documents/ \
technical-guidance-for-mitigating-branch-type-confusion.pdf
all 'ret' instructions are consolidated into a single piece of code.
Instead of functions ending with a 'ret' instruction, they instead end
with "jump __x86_return_thunk".
Since a 'jmp' instruction is provided instead of 'ret' at the end of
each function, it cause functions like create_runtime_code() copy much
more assembler code into runtime_code memory than it should during
runtime. Memory protection fault happens finally while running.
To address the above issue, option -mfunction-return=keep is provided
for kernel mode to overwrite the gcc default behavior in Ubuntu 22.04.
This can ensure function has 'ret' instruction generated.
Signed-off-by: Cathy Zhang <cathy.zhang@intel.com >
2022-12-06 21:48:56 -08:00
Andreas Abel
c157f74ded
improved measurements
2022-12-05 17:11:28 +01:00
Andreas Abel
1ef0dc17dc
fixes #26
2022-12-04 00:17:06 +01:00
Andreas Abel
88d021d86e
update
2022-11-28 16:32:32 +01:00
Andreas Abel
09e6a3d6fc
support for Zen4
2022-11-18 11:32:43 +01:00
Andreas Abel
b0d03d6ad7
memory initialization
2022-08-13 20:56:54 +02:00
Andreas Abel
0dcae1fc1e
Zen3 fix
2022-04-28 00:05:02 +02:00
Andreas Abel
d3d4060be3
cycle-by-cycle measurements
2022-01-21 00:12:50 +01:00
Andreas Abel
7f7a7eb53a
minor change
2022-01-20 23:21:10 +01:00
Andreas Abel
0ef60f2a59
filter output option
2022-01-20 16:27:58 +01:00
Andreas Abel
15b1ccb275
support for Tremont
2022-01-18 19:01:33 +01:00
Andreas Abel
5bffd03b71
support for Airmont
2022-01-18 02:52:42 +01:00
Andreas Abel
1bbedf2927
minor change
2022-01-17 16:51:56 +01:00
Andreas Abel
86f4a69813
minor fix
2022-01-16 20:40:36 +01:00
Andreas Abel
dfbd89b928
file ownerships
2022-01-15 17:57:28 +01:00
Andreas Abel
a148f95497
helper functions
2022-01-14 20:51:50 +01:00
Andreas Abel
c44e017398
support for Bonnell
2022-01-14 20:22:37 +01:00
Andreas Abel
52e601ebc5
support for Goldmont
2022-01-13 01:14:41 +01:00
Andreas Abel
12381d0324
format specifiers
2022-01-13 01:13:40 +01:00
Andreas Abel
40e764db45
refactoring
2022-01-12 23:21:00 +01:00
Andreas Abel
39f97457c6
improved drain_frontend
2022-01-12 20:33:09 +01:00
Andreas Abel
a1ad0fbf47
consistency
2022-01-12 17:14:49 +01:00
Andreas Abel
3330672330
improved counter configuration
2022-01-12 17:11:46 +01:00
Andreas Abel
73b5ac65e3
FP16
2022-01-11 23:16:44 +01:00
Andreas Abel
6e55106bf5
support for Goldmont Plus
2022-01-08 00:53:37 +01:00
Andreas Abel
9c12de2c70
FP16
2022-01-07 23:40:12 +01:00
Andreas Abel
2a767183a3
minor fixes
2022-01-03 22:26:54 +01:00
Andreas Abel
b156941b23
ADL cache
2022-01-03 22:25:26 +01:00