oneapi-src / oneapi-src/unified-runtime

[CUDA] Enable XPTI tracing in CI builds

Open
#1,098 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

ci/cd cuda
Dominant language
C++
Stars
57
Forks
120
Avg merge
1d 14h
Merged PRs (30d)
1

Description

The CUDA adapter has the ability to do tracing, which is gated behind the XPTI_ENABLE_INSTRUMENTATION preprocessor macro. This macro is set through the SYCL_ENABLE_XPTI_TRACING CMake variable when building with SYCL, but it is never set for out-of-tree builds. This support should be enabled for CI builds.

Tracing support for CUDA currently requires being able to find the CUPTI library on the system, as the CUDA adapter is linked against libcupti.so / cupti.dll. Once support for lazy loading of the CUPTI library (See https://github.com/oneapi-src/unified-runtime/pull/1070) is merged along with the required PI changes, this should be enabled.

Related issue: https://github.com/oneapi-src/unified-runtime/issues/1009

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the out-of-tree CI CMake configuration and the CUDA adapter's use of SYCL_ENABLE_XPTI_TRACING and XPTI_ENABLE_INSTRUMENTATION. Check the linked lazy-CUPTI-loading work and required PI changes first; done means CI builds enable CUDA tracing and can find or load CUPTI successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp
Domain
build-system, ci-cd
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.