CPU does not support x86-64-v2 #3099
-
|
Hi gem5 community! I'm trying to compile and run my own simple binary workloads, and I'm running into the same issue any time that I try to run them. After the regular gem5 preamble, I see: Fatal glibc error: CPU does not support x86-64-v2and the simulation ends. This happens for every x86 workload I compile; it also happens on the "annotate this" binary from the 2024 bootcamp. It seems like an issue with the glibc version on my environment, but I'm not sure what the best way to address this is. Has anyone found a workaround for this? Thank you! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
|
I think I found a likely cause in FamilyModelStepping = VectorParam.UInt32(
[0x00020F51, 0x00000805, 0xEFDBFBFF, 0x00000209],
"type/family/model/stepping and feature flags",
)Based on the comment in the file, the order is If those bits are not set in gem5’s default CPUID mask, that would be consistent with: I am not sure whether this default is intentionally conservative or whether another config path overrides it, but this looks like a plausible repo-side explanation for the issue and may require either a CPUID override or a patch. For feature-level reference, I was looking here: https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels |
Beta Was this translation helpful? Give feedback.
It seems like gem5 supports the features required for v2 however it contains stubbed for extensions like AVX which are required in v3. I think the easiest solution for your current problem would be to target v2 in glibc so you do not need to worry about the stubs.