Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 943189 - dev-libs/intel-compute-runtime: Intel dropped support for Gen8-Gen11 iGPUs
Summary: dev-libs/intel-compute-runtime: Intel dropped support for Gen8-Gen11 iGPUs
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 All
: Normal normal
Assignee: Jan Henke
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-11-10 17:04 UTC by Ivan Podmazov
Modified: 2025-03-12 03:19 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info '=dev-util/intel-graphics-compiler-2.5.7-r1::gentoo' (file_943189.txt,15.97 KB, text/plain)
2025-01-16 11:31 UTC, Ivan Podmazov
Details
/var/tmp/portage/dev-util/intel-graphics-compiler-2.5.7-r1/temp/build.log (build.log.xz,25.61 KB, application/x-xz)
2025-01-16 11:34 UTC, Ivan Podmazov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ivan Podmazov 2024-11-10 17:04:08 UTC
The package needs to be split, one for the latest runtime, one for the legacy.

https://gitlab.archlinux.org/archlinux/packaging/packages/intel-compute-runtime/-/issues/3

OpenCL doesn't work anymore on my Intel HD Graphics 530 (Skylake), attempt to build a program crashes the process with the message:

RequiresExtension: Feature requires the following SPIR-V extension:                                           
 SPV_KHR_non_semantic_info
Comment 1 Ionen Wolkens gentoo-dev 2024-11-10 17:12:58 UTC
I don't maintain this but I don't think this would be viable for long, these packages already gives a lot of headaches (esp. for a source based distro that needs to keep them compiling with modern toolchains) and keeping a version that is no longer supported upstream would likely fall apart rather quickly.
Comment 2 Ionen Wolkens gentoo-dev 2024-11-10 17:14:17 UTC
(In reply to Ionen Wolkens from comment #1)
> no longer supported upstream
Or is there a legacy branch that is still receiving support? May have misunderstood.
Comment 3 Ivan Podmazov 2024-11-10 17:21:57 UTC
Looks like there is a legacy branch that will receive no new features, but critical fixes only:

https://github.com/intel/compute-runtime/blob/master/LEGACY_PLATFORMS.md
Comment 4 Conrad Kostecki gentoo-dev 2024-11-12 10:42:42 UTC
FWICS, the current version in tree seems the legacy branch and newer versions dropped support.

I would tend to introduce a legacy slot instead of multiple variant packages. WDYT?
Comment 5 Ivan Podmazov 2024-11-13 09:47:02 UTC
(In reply to Conrad Kostecki from comment #4)
> FWICS, the current version in tree seems the legacy branch and newer
> versions dropped support.

Not quite, the current package version is 24.35.30872.25, while the first runtime release that dropped legacy support runtime is 24.35.30872.22.
 
> I would tend to introduce a legacy slot instead of multiple variant
> packages. WDYT?

Any solution that works is fine by me. It is unlikely that two branches can be installed at the same time, nor that somebody has such hardware configuration in the first place.
Comment 6 Ivan Podmazov 2024-11-13 09:56:15 UTC
(In reply to Ivan Podmazov from comment #5)
> Not quite, the current package version is 24.35.30872.25, while the first
> runtime release that dropped legacy support runtime is 24.35.30872.22.

The runtime stopped working after the update, so it is definitely the 'non-legacy' version.
Comment 7 Conrad Kostecki gentoo-dev 2024-11-13 10:07:02 UTC
(In reply to Ivan Podmazov from comment #5)
> Not quite, the current package version is 24.35.30872.25, while the first
> runtime release that dropped legacy support runtime is 24.35.30872.22.

thats why I talked about 'branch' ;-) 24.35 according to website.

(In reply to Ivan Podmazov from comment #6)
> (In reply to Ivan Podmazov from comment #5)
> > Not quite, the current package version is 24.35.30872.25, while the first
> > runtime release that dropped legacy support runtime is 24.35.30872.22.
> 
> The runtime stopped working after the update, so it is definitely the
> 'non-legacy' version.

Thats strange. Upstream says: In case of critical fixes we plan to deliver them through a new release from 24.35 release branch.

We have 24.35 branch, so you are sure?
Comment 8 Ivan Podmazov 2024-11-13 11:56:01 UTC
(In reply to Conrad Kostecki from comment #7)
> thats why I talked about 'branch' ;-) 24.35 according to website.

> We have 24.35 branch, so you are sure?

You're right, the branch is indeed 24.35. I believe that they meant that the legacy support will be based on this branch. Probably there are some patches or something that are applied to make deb packages with 'legacy1' suffix. But I can say for sure that the current ebuild downloads the latest runtime, not the legacy one.
Comment 9 Ivan Podmazov 2024-11-13 12:04:28 UTC
(In reply to Ivan Podmazov from comment #8)
> But I can say for sure that the current ebuild downloads the latest runtime,
> not the legacy one.

By the latest runtime I mean the one that does not support Gen8-Gen11 anymore.
Comment 10 Ivan Podmazov 2024-11-13 12:21:20 UTC
They write:

> If you are using legacy platform, follow latest 24.35 release procedure 
> instead the one below. More details in known issues section.

> Support for Gen8, Gen9 and Gen11 devices will be delivered via packages with legacy1 suffix:
>  - intel-opencl-icd-legacy1_24.35.30872.22_amd64.deb
>  - intel-level-zero-gpu-legacy1_1.3.30872.22_amd64.deb

I think the legacy runtime can be installed from a deb package only, not by building the 24.35 branch.
Comment 11 Conrad Kostecki gentoo-dev 2024-12-15 15:27:03 UTC
(In reply to Ivan Podmazov from comment #10)
> They write:
> 
> > If you are using legacy platform, follow latest 24.35 release procedure 
> > instead the one below. More details in known issues section.
> 
> > Support for Gen8, Gen9 and Gen11 devices will be delivered via packages with legacy1 suffix:
> >  - intel-opencl-icd-legacy1_24.35.30872.22_amd64.deb
> >  - intel-level-zero-gpu-legacy1_1.3.30872.22_amd64.deb
> 
> I think the legacy runtime can be installed from a deb package only, not by
> building the 24.35 branch.

No. I don't think so. There is actually a compile option, which even exists in newer versions: NEO_ALLOW_LEGACY_PLATFORMS_SUPPORT.

As for current status: I am trying to update intel-graphics-compiler (v1) with the latest v1 version for legacy, but unable to get a successful compilation. Any ideas appreciated. Once that fixed, I can continue to look into intel-compute-runtime.

-> https://github.com/intel/intel-graphics-compiler/issues/352
Comment 12 Larry the Git Cow gentoo-dev 2024-12-15 15:39:39 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56bc06608ed2515d3e63059f9c3207ba608abca6

commit 56bc06608ed2515d3e63059f9c3207ba608abca6
Author:     Conrad Kostecki <conikost@gentoo.org>
AuthorDate: 2024-12-15 15:32:26 +0000
Commit:     Conrad Kostecki <conikost@gentoo.org>
CommitDate: 2024-12-15 15:39:21 +0000

    dev-libs/intel-compute-runtime: enable support for legacy devices
    
    Bug: https://bugs.gentoo.org/943189
    Signed-off-by: Conrad Kostecki <conikost@gentoo.org>

 ...35.30872.25.ebuild => intel-compute-runtime-24.35.30872.25-r1.ebuild} | 1 +
 1 file changed, 1 insertion(+)
Comment 13 Conrad Kostecki gentoo-dev 2024-12-15 15:40:01 UTC
I've enabled 'NEO_ALLOW_LEGACY_PLATFORMS_SUPPORT' in existing 24.35.30872.25. Could someone please test this? You need to emerge the pushed -r1 version.
Comment 14 Conrad Kostecki gentoo-dev 2025-01-02 00:01:10 UTC
@Ivan Podmazov: Could you please give a test? Thanks!
Comment 15 Larry the Git Cow gentoo-dev 2025-01-09 15:13:10 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bbaa1c35976af056006e00263d6827e7c1d6674e

commit bbaa1c35976af056006e00263d6827e7c1d6674e
Author:     Conrad Kostecki <conikost@gentoo.org>
AuthorDate: 2025-01-09 15:10:36 +0000
Commit:     Conrad Kostecki <conikost@gentoo.org>
CommitDate: 2025-01-09 15:11:37 +0000

    dev-libs/intel-compute-runtime: add 24.52.32224.5
    
    This version will be masked initially, until split of legacy will
    happen.
    
    Bug: https://bugs.gentoo.org/943189
    Signed-off-by: Conrad Kostecki <conikost@gentoo.org>

 dev-libs/intel-compute-runtime/Manifest            |  1 +
 .../intel-compute-runtime-24.52.32224.5.ebuild     | 84 ++++++++++++++++++++++
 profiles/package.mask                              |  1 +
 3 files changed, 86 insertions(+)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=508558b0d32975523a189d442a2a3700971093c0

commit 508558b0d32975523a189d442a2a3700971093c0
Author:     Conrad Kostecki <conikost@gentoo.org>
AuthorDate: 2025-01-09 14:45:38 +0000
Commit:     Conrad Kostecki <conikost@gentoo.org>
CommitDate: 2025-01-09 15:11:37 +0000

    dev-util/intel-graphics-compiler: add 2.5.7
    
    This version will be masked initially, until split of legacy will
    happen.
    
    Bug: https://bugs.gentoo.org/943189
    Signed-off-by: Conrad Kostecki <conikost@gentoo.org>

 dev-util/intel-graphics-compiler/Manifest          |   1 +
 .../intel-graphics-compiler-2.5.7.ebuild           | 106 +++++++++++++++++++++
 profiles/package.mask                              |   5 +
 3 files changed, 112 insertions(+)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b8ed4c614111d2c2cdae9df6a53514de6937aae0

commit b8ed4c614111d2c2cdae9df6a53514de6937aae0
Author:     Conrad Kostecki <conikost@gentoo.org>
AuthorDate: 2025-01-09 13:25:52 +0000
Commit:     Conrad Kostecki <conikost@gentoo.org>
CommitDate: 2025-01-09 15:11:36 +0000

    dev-util/intel-graphics-compiler: add 1.0.17791.18
    
    This is the final branch for lecacy devices.
    
    Bug: https://bugs.gentoo.org/943189
    Signed-off-by: Conrad Kostecki <conikost@gentoo.org>

 dev-util/intel-graphics-compiler/Manifest          |   1 +
 .../intel-graphics-compiler-1.0.17791.18.ebuild    | 105 +++++++++++++++++++++
 2 files changed, 106 insertions(+)
Comment 16 Ivan Podmazov 2025-01-15 11:02:08 UTC
Sorry for the response delay.
I have tested the new package version and can confirm, it works again! Many, many thanks! Older hardware was revived and can serve a little longer now.

If I understand correctly, the driver code wasn't drastically rewritten and the device compatibility wasn't broken, they've just blocked older devices with a flag? That was a quite rude move from Intel.
Comment 17 Conrad Kostecki gentoo-dev 2025-01-15 16:46:15 UTC
(In reply to Ivan Podmazov from comment #16)
> Sorry for the response delay.
> I have tested the new package version and can confirm, it works again! Many,
> many thanks! Older hardware was revived and can serve a little longer now.

Thanks for testing! Which version did you tested?

This one? (the latest legacy versions according to upstream)
dev-libs/intel-compute-runtime-24.35.30872.32
dev-util/intel-graphis-compiler-1.0.17791.18

> If I understand correctly, the driver code wasn't drastically rewritten and
> the device compatibility wasn't broken, they've just blocked older devices
> with a flag? That was a quite rude move from Intel.

As for the legacy branches, this is the case. But since I noticed, that this legacy option still exists in newer releases, I would be curious, if you could test that. The option is still enabled in eBuild by me.

Could please unmask (via package.unmask) and try if older devices still work with newer releases?
dev-libs/intel-compute-runtime-24.52.32224.5
dev-util/intel-graphics-compiler-2.5.7-r1
Comment 18 Ivan Podmazov 2025-01-16 11:31:04 UTC
Created attachment 916705 [details]
emerge --info '=dev-util/intel-graphics-compiler-2.5.7-r1::gentoo'
Comment 19 Ivan Podmazov 2025-01-16 11:34:10 UTC
Created attachment 916706 [details]
/var/tmp/portage/dev-util/intel-graphics-compiler-2.5.7-r1/temp/build.log
Comment 20 Ivan Podmazov 2025-01-16 11:40:34 UTC
You're right! I've 'tested' the old version, and didn't look at the version number, how silly of me XD

I've attached the build log of the new graphics compiler, which is built first and fails.

Here's the output of `emerge -pqv '=dev-util/intel-graphics-compiler-2.5.7-r1::gentoo'`:

[ebuild     U ] dev-util/intel-graphics-compiler-2.5.7-r1 [1.0.17791.18] USE="-debug -vc" LLVM_SLOT="15"
Comment 21 Conrad Kostecki gentoo-dev 2025-01-16 11:45:25 UTC
(In reply to Ivan Podmazov from comment #20)
> You're right! I've 'tested' the old version, and didn't look at the version
> number, how silly of me XD

All fine. The new version is masked. So you can confirm, that at least with 'intel-graphis-compiler-1.0.17791.18' and 'intel-compute-runtime-24.35.30872.32' it works with legacy? Because I would take that versions then for legacy.

> I've attached the build log of the new graphics compiler, which is built
> first and fails.

Could you please try with enabled vc use flag?
Comment 22 Ivan Podmazov 2025-01-17 19:36:48 UTC
(In reply to Conrad Kostecki from comment #21)
> So you can confirm, that at least with
> 'intel-graphics-compiler-1.0.17791.18' and
> 'intel-compute-runtime-24.35.30872.32' it works with legacy?

Yep, I have these versions installed on two of my computers and I could compile and run code on HD Graphics 530 and UHD Graphics 620 without noticeable problems.  

> Could you please try with enabled vc use flag?

Still doesn't compile on both machines. It doesn't look good. Should I upload the whole build log?

```
/var/tmp/portage/dev-util/intel-graphics-compiler-2.5.7-r1/work/intel-graphics-compiler-2.5.7/IGC/VectorCompiler/lib/Driver/SPIRVWrapper.cpp: In function ‘int {anonymous}::spirvReadVerify(const char*, size_t, const uint32_t*, const uint64_t*, unsigned int, llvm::LLVMContext&, void (*)(const char*, size_t, void*), void*, void (*)(const char*, void*), void*)’:
/var/tmp/portage/dev-util/intel-graphics-compiler-2.5.7-r1/work/intel-graphics-compiler-2.5.7/IGC/VectorCompiler/lib/Driver/SPIRVWrapper.cpp:117:10: error: ‘class SPIRV::TranslatorOpts’ has no member named ‘setEmitFunctionPtrAddrSpace’
  117 |     Opts.setEmitFunctionPtrAddrSpace(true);                                                       
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~       
```
Comment 23 Conrad Kostecki gentoo-dev 2025-01-19 22:33:23 UTC
Hm, I am not able to reproduce.

As for IGC-2.5.7. Do you have this versions installed as deps?

dev-libs/intel-metrics-discovery-1.13.179
dev-libs/intel-metrics-library-1.0.182
dev-libs/level-zero-1.20.1
dev-util/intel-graphics-system-controller-0.9.5
dev-libs/intel-vc-intrinsics-0.21.0
dev-util/spirv-llvm-translator-15.0.8
Comment 24 Ivan Podmazov 2025-01-20 02:09:09 UTC
> As for IGC-2.5.7. Do you have this versions installed as deps?
> 
> dev-libs/intel-metrics-discovery-1.13.179
> dev-libs/intel-metrics-library-1.0.182
> dev-libs/level-zero-1.20.1
> dev-util/intel-graphics-system-controller-0.9.5
> dev-libs/intel-vc-intrinsics-0.21.0
> dev-util/spirv-llvm-translator-15.0.8

I had older versions of some of these packages. After manually adding them to accept_keywords and updating them I've managed to build the newest intel-graphics-compiler and intel-compute-runtime without errors.

However, the Intel OpenCL platform isn't available after the update. clinfo doesn't detect it anymore, not even after a reboot.

After a downgrade, the Intel platform becomes detected again instantly, without a reboot.
Comment 25 Conrad Kostecki gentoo-dev 2025-01-20 06:13:02 UTC
Allright, thanks for confirming! I will now have a look to split them in legacy and current.
Comment 26 Ivan Podmazov 2025-01-20 14:06:58 UTC
(In reply to Conrad Kostecki from comment #25)
> Allright, thanks for confirming! I will now have a look to split them in
> legacy and current.

Thank you for the support!
Comment 27 Conrad Kostecki gentoo-dev 2025-03-11 20:57:48 UTC
Ivan Podmazov: WDYT?

I tend to move current intel-graphics-compiler as seperate intel-graphics-compiler-legacy package for older GPUs?
Comment 28 Ivan Podmazov 2025-03-12 03:19:37 UTC
That's fine. I'd just need to uninstall the old package and install the new one, right?