[Bench] Add support for liboffload#22653
Open
311Volt wants to merge 2 commits into
Open
Conversation
In upstream LLVM, olCreateEvent gained a `Flags` param - update UR adapter to pass OL_EVENT_FLAGS_NONE, matching the old behavior. Concurrently, olLaunchKernel switched to a pointer array for the kernel launch args. Luckily the adapter already tracks the information needed for the new API, which can be passed directly. This patch is concerned with resolving build errors with current upstream LLVM and retaining existing functionality, not with feature-completeness against new liboffload features.
Make the benchmark runner usable for local development as opposed to only CI/CD, and add support for the new liboffload SubmitKernel benchmark. liboffload (OL) SubmitKernel: - Add an OL runtime, excluded from the default supported-runtime set so it stays scoped to SubmitKernel and does not leak into other benchmarks. - Add --offload-install-dir / --offload-include-dir (passed through as OFFLOAD_INSTALL_DIR / OFFLOAD_INCLUDE_DIR). When both are set, the suite builds with -DBUILD_OL=ON and enables the OL SubmitKernel benchmark. - Add --force-offload-plugin=<name> to export FORCE_OFFLOAD_PLUGIN (backend name, e.g. level_zero/cuda/amdgpu/host) into the benchmark process, which liboffload uses to select the offload device. Local development: - Add --benchmarks-source-dir=<dir> to point the Compute Benchmarks suite at an existing source tree instead of cloning intel/compute-benchmarks. When set, all git clone/fetch/checkout operations are skipped. - After a successful build, GitProject writes a JSON build-complete marker (benchmark_build_complete.json) into the build dir recording the source commit and `git status --porcelain` fingerprint. Reruns skip the build when the fingerprint still matches, so editing a tracked file rebuilds automatically. A non-git source dir always rebuilds.
Contributor
|
@311Volt I see that you are a part of some internal Intel organizations on Github, so I suspect you are an Intel employee. I don't see your real name and Intel email in your profile. However, I see that you do commits with your Intel email address. Because of lack of some info, we see the following:
@sarnex, could you please remind, what @311Volt should do so the workflows run automatically for him? One of the options is to complete the 1source onboard procedure (if was not completed yet). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Add support for liboffload in the benchmarking script in
devops/scripts/benchmarksand its SubmitKernel implementation.To help with local development, this PR also adds:
--benchmarks-source-dir=<dir>option to point the Compute Benchmarks suite at an existing source tree instead of cloning intel/compute-benchmarks. When set, all git clone/fetch/checkout operations are skipped.git status --porcelainfingerprint. Reruns skip the build when the fingerprint still matches, so editing a tracked file rebuilds automatically. A non-git source dir always rebuilds.These are opt-in, for local development only. When called without these options ('Run benchmarks' action), the script behaves as before.
Stacked on: #22640 . Review
35eecaeand later.