Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP DNM] levelzero: use zesInit() when available #594

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

bgoglin
Copy link
Contributor

@bgoglin bgoglin commented Jun 9, 2023

Don't merge until a compute-runtime release supports zesInit(). Blacklist the releases with unsupported zesInit() in the error messages before merging this PR.

Refs #687

TODO just drop releases without zesInit() and abort if the backend if zesInit() fails
TODO check whether zesInit() must be called in a constructor before any other zeInit() or just in the hwloc backend as usual.
TODO requires oneapi-src/level-zero#153

When zesInit() is available (starting in specs 1.5), we don't need
all the stuff to set ZES_ENABLE_SYSMAN=1 in the environment anymore.

This assumes that zesInit() works for real, which was not the case
in first compute-runtime releases (it returned "unsupported").
Those releases won't be supported anymore because they'd need
a runtime-check at configure time to find out that the ZES_ENABLE_SYSMAN=1
stuff must be enabled.

Only use a compile-check to switch between zesInit() and
ZES_ENABLE_SYSMAN=1, and tell users to avoid those L0 runtime
versions where zesInit() fails.

Signed-off-by: Brice Goglin <[email protected]>
@saik-intel
Copy link

@bgoglin zesInit () is fully supported avaliable , can you start using zesInit()

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants