Intel® ISA Extensions
Use hardware-based isolation and memory encryption to provide more code protection in your solutions.
Announcements
Intel Customer Support will be observing the Martin Luther King holiday on Monday, Jan. 17, and will return on Tues. Jan. 18.
For the latest information on Intel’s response to the Log4j/Log4Shell vulnerability, please see Intel-SA-00646

AMX support in SDE incomplete?

Beulich__Jan
Beginner
1,059 Views

Looking at CPUID output with -spr I notice

- leaf 7 subleaf 0 EDX bits 24 and 25 set, but bit 22 clear (i.e. no AMX-BF16)

- leaf D subleaf 0 ECX being 0xA80 (i.e. covering just the low 8 XCR0 bits)

- leaf D subleaf 17 and 18 entirely empty

Is this intentional?

0 Kudos
1 Solution
AdyT_Intel
Moderator
1,009 Views

Yes, you are correct. We did miss updating the value for the max leaf reported (i.e. leaf 0 - EAX).

You can fix it yourself by editing the CPUID definition file for SPR (this is a text file in the kit).

The file is under the: misc/cpuid/spr/cpuid.def directory in the kit. The file format is quite simple. Just edit the entry for leaf 0 and put 1e instead of the current value of 14. 

Thanks for reporting this. We will fix it for next release.

View solution in original post

7 Replies
Beulich__Jan
Beginner
1,056 Views

And to add to the apparent mess

- leaf 0 EAX = 1A (i.e. no leaves 1D and 1E)

Otoh leaf 7 subleaf 0 EAX has bits 17 and 18 set.

Beulich__Jan
Beginner
1,051 Views

I'm sorry - I was wrong with "leaf 7 subleaf 0 EDX bits 24 and 25 set, but bit 22 clear (i.e. no AMX-BF16)"; apparently I couldn't count. All other aspects look to apply, though.

AdyT_Intel
Moderator
1,018 Views

This is not intention, I'll review the CPUID definition for all the AMX features.

AdyT_Intel
Moderator
1,015 Views

I checked the CPUID definition for Sapphire Rapids CPU and I found that the bits are correct.

This means:
- Leaf 7 sub-leaf 0  => EDX is 0x03554110 (bits 22,24,25 are set).
- Leaf 0xd sub -leaf 0 => EAX is 0x600ff (bits 17/18 are set)

However, the current version of Intel SDE (8.56) does not support XSAVE/XRSTOR  for the AMX data and does not emulate the XFD feature. 

Please note that this CPUID definition is available under the -spr CPU knob.

 

Beulich__Jan
Beginner
1,013 Views

I did check with -spr, yes. Bits 17 and 18 set in D:0:EAX implies subleaves 17 and 18 also supplying non-zero output, aiui.

What's more important for my immediate purpose though are leaves 1D and 1E, which are missing altogether (due to the highest leave reported being 14 iirc). Without these I can't determine tile valid configuration(s).

AdyT_Intel
Moderator
1,010 Views

Yes, you are correct. We did miss updating the value for the max leaf reported (i.e. leaf 0 - EAX).

You can fix it yourself by editing the CPUID definition file for SPR (this is a text file in the kit).

The file is under the: misc/cpuid/spr/cpuid.def directory in the kit. The file format is quite simple. Just edit the entry for leaf 0 and put 1e instead of the current value of 14. 

Thanks for reporting this. We will fix it for next release.

View solution in original post

Beulich__Jan
Beginner
991 Views

Ah, interesting, thanks. This then also allowed me to fix leaf The file specifies subleaves hex 17 and 18, when it should be hex 11 and 12 (dec 17 and 18).

There are also similar max leaf issues in other files - I've changed skl, snr, and tnt here, but I think I saw a few more where I simply thought I didn't care for now.

Reply