x86-64-v4
x86-64-v4 is the psABI feature level that adds a specified AVX-512 subset to x86-64-v3. It requires enabled vector state and does not include every extension carrying an AVX-512 name.
What you need to know
x86-64-v4 is the psABI feature level that adds a specified AVX-512 subset to x86-64-v3. It requires enabled vector state and does not include every extension carrying an AVX-512 name.
How it works
The level adds AVX512F, AVX512BW, AVX512CD, AVX512DQ and AVX512VL to all v3 requirements. The vector state needed by these features must be fully enabled, including the additional AVX-512 state components. A partially exposed AVX-512 CPU model is not sufficient.
Where it is useful
A library's v4 variant can use the defined subset while retaining a baseline or v3 variant for other machines. A program that additionally needs VNNI, BF16 or another extension must detect it separately even after establishing v4.
How to check support and enablement
Validate all psABI requirements and the SDM's AVX-512 XCR0 checks. Use the effective feature set visible to the process, particularly in virtual machines or systems with policy-dependent feature exposure.
A hardware capability, the running operating environment and an application's binary requirements are different layers. Architecture names and ABI levels should be interpreted as explicit contracts rather than as a general newer-is-compatible rule.
What the feature does not establish
A generic AVX-512 flag is not proof of v4, and v4 is not a promise that every application will outperform its v3 build. AMX and later AVX-512 extensions are outside this level unless separately required.
Compatibility and performance in practice
Check the complete inherited requirements and the effective environment visible to the process. For a VM, inspect the guest rather than assuming the host model is exposed unchanged. A supported fallback build should state its own baseline clearly.
A practical verification checklist
- Record the exact processor or platform model and the application, OS and runtime versions involved. Preserve the wording of the actual error or requirement.
- Check the manufacturer reference for that exact model, then inspect the effective capability and enabled state in the environment where the program runs.
- Compare every requirement of the selected binary or backend. A similarly named feature, alias or broad technology label is not enough.
- Confirm the application selected the intended implementation. Use its documented diagnostics and a supported fallback when requirements are not met.
- Make one supported change at a time and repeat the same workload. Keep the original configuration and recovery path available.
If the feature is listed but software cannot use it
Start with the exact failing component. A hardware database describes recorded capability; the operating system or hypervisor can expose a different effective environment. An illegal-instruction error also needs investigation of the actual faulting instruction and binary build, because corruption or an unrelated unsupported instruction can produce a similar symptom.
Install the application, driver or runtime version supported for the exact platform, and use the vendor's documented baseline or fallback build if needed. A software update cannot create an instruction that the processor lacks. Firmware and security-policy changes should follow the system manufacturer's procedure and a recovery plan rather than a generic optimization recipe.
Sources and scope of this explanation
x86-64 psABI: processor architecture and microarchitecture levels · Intel 64 and IA-32 Architectures Software Developer's Manual · Linux kernel: using XSTATE features in user space
These references establish architectural behavior and software requirements. They do not independently verify every feature value on a linked hardware model page. For model support, use that page's manufacturer evidence and check the effective system configuration. This article does not supply a benchmark, certification or independent review date.
Sources and verification
Editorial ownership: Feex. No independent review date is recorded. How we research.
- x86-64 psABI: processor architecture and microarchitecture levels · Machine Interface, Processor Architecture: baseline and cumulative v2/v3/v4 feature table, OS-state checks and deployment recommendations.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Volumes 1 and 2 describe the named instruction families and CPUID; Volume 3 describes state, paging, VMX and protection controls. Architecture documentation does not establish support for a particular model.
- Linux kernel: using XSTATE features in user space · OS-enabled vector state, dynamically enabled tile state, signal-stack requirements and AMX permission flow. Linux-specific behavior is not a promise about another OS.
Was this article useful?
A yes or no is enough. Pick a reason if you want, or add a short note.
Thanks. That helps us improve this page.