Intel Arc SR-IOV "hack"?

Hi.

In Wendell’s latest Linux channel video, at around the 15:50 mark, he mentions there being a hack for the A770 to turn on SR-IOV.

I’ve been trying to find out more about this, but having problems finding anything solid.

Can anyone point me in the right direction to find more information?

Also does it only work on Intel’s limited 16GB A770, or also other vendors A770 and even the A750 and A380?

Thanks.

11 Likes

Yes are there More Infos pls? I even would buy that Card for just that purpose.

1 Like

I am also looking forward to know more about this hack.

Also looking for info, I spent a good amount of time looking on Bilibili, Zhihu and some other blog sites. I presume any info on this is somewhere on a private wechat or other cn community I have yet to discover

It seems like it’s a crossflash to flex170 GPU. I have one GPU this works on, one it doesn’t. Not sure the issue. There’s some other problems maybe related to bar I haven’t figured out. But flex170 does what we want…

4 Likes

Ok, I am waiting on a a770 to test on.

As far as flashing method I presume following available flash guides (here) should suffice. I did notice that the firmware that is in the latest drivers from intel doesn’t include any oproms for the flex 170 (but does for the 140), I wonder if that has anything to do with how the flashing process works on these intel gpus? if a gpu has additional oprom the crossflash doesn’t work (or viseversa?).

1 Like

Hello, long time lurker and watcher. Can’t believe this was the topic that would get me to finally register but I had a lot of questions on my mind when this hack was mentioned in the video and reading the post and learning it is definitively a cross-flash, I wanted to share some thoughts and concerns from my own research to hopefully have it addressed in some way in the future since I am sure I probably hit a brick wall on that front and do want to know if I can get it answered if and when a guide/video comes out about this. Hopefully not giving too much away here but anyways, If one looks at the documentation for the Intel Graphics Firmware flash tool, IGSC, on Github, there’s a bunch of options around the firmware updating including allowing for downgrading. Due to the separation of the GSC Firmware and OPROM, it isn’t clear if you can get away with only needing the OPROM updated here but it would be great if that was the case.

It does get a little murky once you are forced to deal with the GSC Firmware. I’m not entirely sure how you can modify or get that firmware flashed onto a device with IGSC itself since there isn’t an option there to force flashing. Weirdly enough however, XPUManager or xpumcli /xpu-smi, which is basically nvidia-smi or rocm-smi for Intel, does have this as seen here (And yes, it does work partially on Intel Arc despite it only officially supporting Intel Flex and is criminally underrated due to Intel not even doing much with it outside of the datacenter, it seems).

❯ xpu-smi updatefw --help
Update GPU firmware

Usage: xpu-smi updatefw [Options]
  xpu-smi updatefw -d [deviceId] -t GFX -f [imageFilePath]
  xpu-smi updatefw -d [pciBdfAddress] -t GFX -f [imageFilePath]

Options:
  -h,--help                   Print this help message and exit
  -j,--json                   Print result in JSON format
                              
  -d,--device                 The device ID or PCI BDF address
  -t,--type                   The firmware name. Valid options: GFX, GFX_DATA, GFX_CODE_DATA, GFX_PSCBIN, AMC. AMC firmware update just works on Intel M50CYP server (BMC firmware version is 2.82 or newer) and Supermicro SYS-620C-TN12R server (BMC firmware version is 11.01 or newer).
  -f,--file                   The firmware image file path on this server
  -u,--username               Username used to authenticate for host redfish access
  -p,--password               Password used to authenticate for host redfish access
  -y,--assumeyes              Assume that the answer to any question which would be asked is yes
  --force                     Force GFX firmware update. This parameter only works for GFX firmware.

That implies strongly that this functionality should exist in IGSC as well somewhere but I’m not entirely sure if it is user facing.

The other thing though that does concern me a bit afterwards is the prerequisites for making SR-IOV work even after the crossflash works and what is supposedly needed. If you run the precheck command as seen in the documentation, I see the following on my home system running an AMD CPU.

❯ xpu-smi vgpu --precheck
+----------+---------------------------------------------------------------------------------------+
| VMX Flag | Result: Fail                                                                          |
|          | Message: No VMX flag, Please ensure Intel VT enabled in BIOS                          |
+----------+---------------------------------------------------------------------------------------+
| SR-IOV   | Result: Fail                                                                          |
|          | Message: Failed to read sriov_totalvfs.                                               |
+----------+---------------------------------------------------------------------------------------+
| IOMMU    | Result: Pass                                                                          |
|          | Message:                                                                              |
+----------+---------------------------------------------------------------------------------------+

To pass the check, it seems like VT-x/VMX flag is required but that is Intel-only. I don’t see any reason why this shouldn’t work using AMD’s virtualization instead, SVM, but I think that alone will block you from using the utility to manage vGPUs Intel’s way so it’s either manually editing a file or doing it via some Linux internal manner of which I would be surprised at the latter since SR-IOV right now heavily depends on vendor support to be functional. Anyways, looking forward to learning about this when the time is right and hopefully the concerns and thoughts I expressed here can be addressed when that time comes.

Also really regretting only registering now since I can’t include links which would’ve made my post even better. (Edit: Now I can, thank you, and have edited my post to add the appropriate links).

3 Likes

Given there was a minor CVE that only affected Arc cards made during October 2022 to December 2022, I wonder if the minor revision from January 2023 might affect this cross flash?

1 Like

Unfortunately per their official instructions from intel’s guide on setting up virtualization/sriov for the flex series (look for “Virtualization Guide for Intel® Data Center GPU Flex Series” or intel-data-center-gpuflexseries-virtualization-guide.pdf on search engines) checking for vmx support is one of the manual prechecks they use as well in that guide

Also on another note it looks like there are 10 intel gpu flex 170 listed on eBay right now for $9000 each… Very rare to see

Has anyone made any progress on this? I have been scouring for any information on how to achieve it. I have an A770 16GB LE in my Proxmox box so would love to get SR-IOV working on it.

1 Like

Soon ™. I really really don’t want to be the one to break cover on this…buttttt

It’s kinda important there is no way to stuff the genie back in the bottle via future update too. It’s not obvious IMHO

One of these days level1 will be large enough we can just pay folks to work on this full time :smiley:

Thinking about doing a community bounty for this kinda thing too. First one to xyz wins

6 Likes

So what gpu should i have on hand prior to you dropping the video

1 Like

The guess is that you need a 16GB A770 which is the direct consumer analog of the Intel Flex 170 GPU. And unfortunately, it is the only card in Intel’s stack that has a enterprise counterpart. The Intel Flex 140 uses the same die as the A310/380 but is a dual GPU on a single card.

1 Like

Look to be hard to get a good deal on them used so ended up getting new. Hopefully they will remain in stock when the video is released

selling my 3060 right now :smiley: iam ready :smiley:

Intel Arc A770 Limited Edition 16GB is on its way !

1 Like

I wanted to see what the Flex 170 sold for… and it’s over $9,000 after tax on eBay. :scream::rofl:

1 Like

I don’t know much about the hardware needed to support this stuff but I really wish vendors would quit fighting and trying to lock this into enterprise only.

Ideally we’d see standard extensions for all GPUs so that we’d have virtualization support on the same level as CPUs.

I really want us to get native overprovisioning with no need for splitting resources like the NVIDIA methods that people were doing on the 2000 series and earlier consumer cards.

That would let us do some much more granular sandboxing of GPU heavy applications without either losing tons of performance or needing to do a ton of manual management of VMs and swapping resources around to them.

Here it is :smiley: iam ready

1 Like


Ready hopefully we get some details soon

Hope it works on these cards too since Wendell said works on one but not the other

2 Likes