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

benie/test adapters #1020

Closed
wants to merge 425 commits into from
Closed

Conversation

kbenzie
Copy link
Contributor

@kbenzie kbenzie commented Oct 31, 2023

  • [SYCL] Add Unified Runtime Plugin (#7521)
  • [SYCL] Add ext_oneapi_unified_runtime SYCL backend (#7816)
  • [SYCL] Move device handling to Unified Runtime (#8088)
  • [SYCL][L0] Improvements to immediate command list settings (#8421)
  • [SYCL][UR] Update unified-runtime (#8315)
  • [SYCL][UR] Add UR bindings (#8400)
  • [SYCL][UR][L0] Correct global_mem_size reported (#8624)
  • [SYCL] Implement atomic_memory_scope_capabilities device query for OpenCL and Level Zero (#8595)
  • [SYCL] atomic_memory_order_capabilities query for device and context (#8517)
  • [SYCL][UR] Link UR PI against UR Loader (#8637)
  • Revert "[SYCL][UR] Link UR PI against UR Loader" (#8781)
  • [SYCL] Adds support for atomic fence capabilities device queries (#8586)
  • [SYCL][UR] Optimize ZE 2 UR convert (#8778)
  • [SYCL][UR][L0] Add UR_L0 environment variables (#8732)
  • [SYCL][UR] Use official device info property for c-slices (#8891)
  • [SYCL][UR] Link UR PI against UR Loader (#8865)
  • [SYCL][L0] Gracefully handle the case that L0 was already unloaded when we do cleanup (#8948)
  • [SYC] [L0] Enhance interop queue interface to choose standard or immediate commandlists (#7196)
  • [SYCL][UR] Replace definition of PI mutexes with UR mutexes (#9014)
  • [SYCL][UR] Update UR loader version (#9053)
  • [SYCL][UR] Replace _pi_object with _ur_object (#9082)
  • [SYCL][UR][L0] Move some code to ur_level_zero_common (#9113)
  • [NFC][SYCL][L0] Add infrastructure to know backend of a platform (#9067)
  • [SYCL] [L0] Enable immediate command lists by default. (#8982)
  • [SYCL] Fix handling of mem_channel buffer property (#9203)
  • [SYCL] Implement proper queries for aspect::ext_oneapi_srgb (#9243)
  • [SYCL][UR][L0] Port PI L0 environment variables to UR L0 (#9300)
  • [SYCL] [L0] Correct the device id check for PVC. (#9503)
  • [SYCL][UR][L0] First version of UR L0 adapter (#8744)
  • [SYCL][UR][L0] Fix some CI errors (#9628)
  • [SYCL][UR][L0] Fix some CI errors (#9628)
  • [SYCL][UR][L0] First version of UR L0 adapter (#8744)
  • [SYCL][UR][L0] Fix some CI errors (#9628)
  • [SYCL][UR][L0] Fix for CI error unused parameter 'Params'
  • [SYCL][UR][L0] Fix some CI errors (2) (#9629)
  • [SYCL][UR][L0] Fix casting in UR for boolean (#9654)
  • [SYCL][CI] Fuse self-build and no-asserts build (#9655)
  • [SYCL][UR][L0] Fix unused parameter (#9670)
  • [SYCL][UR][L0] Clean up events on queue wait (#9643)
  • [ur][L0] add external level zero adapter
  • [level-zero] fix build script and failing tests
  • [SYCL][UR] Some minor miscellaneous fixes (#9981)
  • [SYCL][UR][L0] Initialize correctly ze_command_queue_group_properties_t (#9982)
  • [SYCL][UR][L0] Do not destroy build log on piProgramBuild (#9980)
  • [SYCL] Support -ftarget-compile-fast in JIT mode (#9516)
  • [SYCL][UR] Update Unified Runtime tag to support UR_DEVICE_INFO_IP_VERSION (#9873)
  • [SYCL] Fix global memory reporting for Arc (#10013)
  • [SYCL] Fix self-build compilation after PR #9873 (#10018)
  • [SYCL][UR][L0] Use auto & to avoid copies on missing loops (#10023)
  • [SYCL][UR] Bump UR version and add missing values to pi2ur (#10049)
  • [SYCL][L0] Add memory access hint to piKernelSetArgMemObj (#9752)
  • update level-zero
  • add cuda adapter
  • [SYCL] Implement sycl_ext_oneapi_device_architecture on host for Level Zero and OpenCL (#9843)
  • [SYCL][Graph] L0 Backend support for SYCL Graphs (2/4) (#9992)
  • [SYCL][UR][L0] Rename ur level_zero files to match ur cuda filenames (#10067)
  • suppress git warnings about applying cuda patch twice
  • [SYCL][UR][L0] Use std::string instead of const char * in call map (#10252)
  • [SYCL][CUDA] Implement sycl_ext_oneapi_peer_access extension (#8303)
  • [SYCL][UR][L0] Don't execute loop for printing if UR_DEBUG not enabled (#10125)
  • [UR] update adapter to use newer sycl plugin version
  • [UR] Fix L0 plugin file names
  • [UR] Bump L0 Loader version
  • [SYCL][HIP] Port HIP plugin to Unified Runtime (#9617)
  • [SYCL][UR][HIP] remove unused parameter in ur hip (#10357)
  • [SYCL] Add queue properties to select submission mode (#9554)
  • [UR][HIP] Add ur hip target build to ur repo
  • [SYCL][Graph] Backend integration and feature additions for SYCL Graphs (3/4) (#10033)
  • update sycl adapters tag and add adapter CI
  • [SYCL][UR][L0] Correctly pass OwnNativeHandle property for Module (#10364)
  • [SYCL][UR][L0] Remove non-necessary barrier after copyRegion (#10373)
  • [adapters] only export get proc table symbols in adapters
  • [SYCL][Bindless][2/4] Add experimental implementation of SYCL bindless images extension (#10112)
  • [SYCL][UR][L0] Correct default for SYCL_PI_LEVEL_ZERO_FILTER_EVENT_WAIT_LIST (#10319)
  • [SYCL][UR] Fix device partition queries (#10355)
  • [SYCL][UR] Fix device partition queries (#10355)
  • [SYCL] [L0] Add user APIs to import / release host memory from USM. (#9294)
  • [SYCL] [L0] Add user APIs to import / release host memory from USM. (#9294)
  • [HIP][UR] Use primary context in HIP adapter (#10514)
  • [SYCL][L0] Remove not needed mutex (#10516)
  • [SYCL][PI] Restore CUDA and HIP plugin ABI (#10518)
  • [SYCL][UR][L0] Clean up PI references in Level Zero adapter (#10572)
  • [SYCL][UR] Bump UR and implement adapter handles (#10349)
  • [SYCL][UR] Bump UR and implement adapter handles (#10349)
  • [SYCL][L0] Optimize mutex acquisition. (#10595)
  • [ur] Fix adapters linker script path on Linux
  • [UR] Implement CUDA native handle tests
  • [SYCL][UR][L0] Increment count on events on assignment (#10588)
  • [SYCL][UR][L0] Use atoi instead of stoi when reading env vars (#10599)
  • [SYCL][UR][L0] Replace USM allocator with UMF abstractions (#10269)
  • [SYCL][UR][L0] fix non-virtual destructor error (#10631)
  • [UR] Add license to missing files
  • [SYCL][UR] Fix device partition queries (2) (#10592)
  • [SYCL][UR] Fix device partition queries (3) (#10649)
  • [ADAPTERS] update to latest from sycl
  • [ADAPTERS] HIP specific CTS
  • [git] Fix external directory ignore file globbing
  • [SYCL][UR] Update Unified Runtime to v0.7 (#10664)
  • [cts][adapters] fix potential strict-aliasing violation
  • [ur][adapters][hip] fix potential strict-aliasing violation
  • [loader] add hip to the known adapters list
  • [adapters] enable developer mode in adapters CI
  • [UR] Port PI CUDA unittests to UR
  • [UR] Include overloads for complete types
  • [UR] Fix review feedback
  • [SYCL][UR][L0] Deprecate SYCL_ENABLE_PCI (#10681)
  • [UR] Port HIP unittests for intel/llvm
  • [UR] Fix gcc diagnostic warning for deprecated
  • [SYCL][UR][L0] Don't overwrite context's devices (#10794)
  • [SYCL][UR][L0] Return correct error code if mem leak is detected (#10786)
  • [SYCL][UR][L0] Fix command buffer memory leaks and minor formatting issues (#10769)
  • Generate conformance test cases with adapters
  • [SYCL][UR][L0] use portable format specifiers for pointer ints (#10752)
  • [CUDA][HIP][UR] Fix race condition in adapters (#10826)
  • Test parts of API with libFuzzer.
  • Add preview of the OpenCL adapter to the adapters branch (Add preview of the OpenCL adapter to the adapters branch #809)
  • [UR] Remove Prefixes from CUDA tests
  • [UR] Remove Prefixes from HIP tests
  • [adapters] update to latest sycl (with 0.7.1 tag)
  • [ur] remove operator<< overload for definitions of handle types
  • [SYCL][Graph] Throw an exception when unsupported features used in a graph (#10789)
  • [SYCL][UR][L0] Fix some leftovers from PI-UR porting (#10785)
  • [SYCL][UR][L0] Correctly set OwnNativeHandle on image create (#10919)
  • Add prefetch for HIP USM allocations (#10430)
  • [UR][CUDA][HIP] Fix Set Arg Local (#10710)
  • [UR][CUDA][HIP] Fix Set Arg Local (#10710)
  • [SYCL][UR][HIP] Check if module needs to be unloaded (#10787)
  • [UR][CUDA][HIP][L0] Cleanup licence header (#10824)
  • [UR][CUDA][HIP][L0] Cleanup licence header (#10824)
  • [fuzz test] add link with seed corpus info
  • [cmake] Use separate FetchSource's per adapter
  • [fuzz test] discover all corpora in 'corpus' dir
  • [fuzz test] make all fuzz tests verbose by default
  • [cts] Add adapters ignore lists for conformance tests
  • [Adapters] Add new CI workflow to run CTS on HW
  • [SYCL][HIP] Implemented supported make_* interop functions. (#10526)
  • [ur] Introduce urinfo tool
  • [CTS] fix cts device adapter L0 match file
  • Run fuzz test with L0 when available
  • Add information on generating new corpus files
  • [SYCL] Optimize urEnqueueEventsWaitWithBarrier for in-order queues (#10995)
  • [ci] fix running cts tests that require device binaries
  • Remove phony nightly CI workflow
  • Speed up CI jobs
  • Remove now redundant job (w/o HW)
  • Enable tracing in fuzz tests
  • [SYCL][HIP] Add managed memory USM checks for HIP prefetch (#10761)
  • Add codegen example
  • Add conda dependencies
  • Update codegen to support llvm16
  • Disable building codegen example if the necessary packages are not found
  • [ur] Add adapter handle support to codegen example
  • Add missing copyright to the codegen example
  • Change spir to spir64 to allow for correct execution on PVC
  • Add UR_BUILD_EXAMPLE_CODEGEN cmake option
  • [SYCL] [UR] Fix for make_queue. (#11046)
  • [UR][CUDA][HIP] Replace ur::assertion with UR_CHECK_ERROR (#10986)
  • [SYCL][UR] Implement usm memory pool for hip adapter. (#11065)
  • [SYCL][UR] Remove unused MaxAllocSize member variable and fix unused parameter 'Alignment' warning (#11154)
  • [SYCL][UR][L0] Use uint8_t instead of uint32_t for 2 cases of urContextGetInfo (#10929)
  • [SYCL] Return Success in USM Mem Free if L0 driver is already released (#11075)
  • [SYCL][UR][L0] Replace memory type look-up with UMF tracking (#10807)
  • [SYCL][UR][L0] Fix USMProxyPool unused parameter errors (#11178)
  • [PI][UR][HIP][CUDA][L0][NCPU] Pull in latest UR fixes. (#11155)
  • [PI][UR][HIP][CUDA][L0][NCPU] Pull in latest UR fixes. (#11155)
  • [SYCL] Add esimd as an optional device feature (#10017)
  • [SYCL] Add esimd as an optional device feature (#10017)
  • Revert "[PI][UR][HIP][CUDA][L0][NCPU] Pull in latest UR fixes." (#11227)
  • Revert "[PI][UR][HIP][CUDA][L0][NCPU] Pull in latest UR fixes." (#11227)
  • [SYCL][Graph] Bug fixes for hanging tests and urCommandBufferAppendKernelLaunchExp (#11232)
  • [UR][L0] Make the queue [root-]device appear first in the context (#11213)
  • [UR] Move sources into correct directory
  • [UR][L0] Setup CMake for L0 sources
  • [SYCL][HIP] Fix hip prefetch/mem_advise (noop) for rocm < 5.0 (#10958)
  • [UR] keep clang-format style
  • [SYCL][NFC] Make UR_CHECK_ERROR a void return macro (#11100)
  • [UR][L0] Do not rely on CTAD to avoid build warnings/failures (#11255)
  • [SYCL] Fix uninitialized variables (#11289)
  • Temporarily disable running check-generated target in windows CI.
  • [test] improve match file error output
  • Add use of threads so -lpthread works when building
  • Use autogenerated tools
  • Add anonymous namespace
  • Undo code changes and add fix in cmake
  • Add required
  • Only add flag if using pthreads
  • Remove misplaced statement from urKernelCreate doc
  • [cts] add integer overflow/bounds check tests for rect APIs
  • (NATIVECPU) added #define for device binary target
  • (NATIVECPU) added #define for device binary target
  • Revert "(NATIVECPU) added #define for device binary target"
  • Revert "(NATIVECPU) added #define for device binary target"
  • (NATIVECPU) added Native CPU macro
  • (NATIVECPU) updated files for new macro
  • [CMake] Minor cleanups and updates in top-level CMakeLists
  • [CMake] Omit warning for missing 'generate' command - make it a status
  • [CMake] Look for clang-format only if UR_FORMAT_CPP_STYLE is on
  • [CMake] Make Python3 required dependency
  • Add UR_DEVICE_INFO_ESIMD_SUPPORT_EXP
  • Rework change to not use experimental infrastructure
  • Formatting and cleanup
  • [UR] Bump sycl nightly version
  • [SYCL][UR][L0] Modify flag for zeInit (#11242)
  • [UR] Fix formatting
  • Use absolute path for adapter .def files
  • [L0] Add missing loader interfaces to L0 adapter
  • Followup review feedback on e2e codegen example
  • [L0] Add missing image.cpp source file to the adapter
  • [UR][L0] Cleanup L0 License headers
  • [SYCL][CUDA] Port CUDA plugin to Unified Runtime (#9512)
  • [SYCL][CUDA] Fix post merge errors from #9512 (#9872)
  • [SYCL][CUDA][HIP] Block until the event is ready to start profiling. (#9938)
  • [SYCL][UR] Update Unified Runtime tag to support UR_DEVICE_INFO_IP_VERSION (#9873)
  • [SYCL] Fix self-build compilation after PR #9873 (#10018)
  • [SYCL][CUDA] Fix broken synchronization of CUstreams (#10031)
  • Partially reverts back the update on guess local work size function. (#10055)
  • [SYCL][UR] Bump UR version and add missing values to pi2ur (#10049)
  • [SYCL][CUDA] Remove size checks from USM allocations (#10034)
  • [SYCL][Graph] L0 Backend support for SYCL Graphs (2/4) (#9992)
  • [SYCL][UR][CUDA] Fix typo in ur_device_handle_t (#10130)
  • [SYCL][HIP] Ignore unused PI command-buffer parameters (#10192)
  • [SYCL][CUDA] Fix cuDeviceGetUuid for older CUDA version (#10205)
  • [SYCL][CUDA] Cached info from CUDA API calls to the kernel and device classes (#10104)
  • [SYCL][UR][CUDA] Remove unnecessary UR entry point validation (#9969)
  • [SYCL][CUDA] Implement sycl_ext_oneapi_peer_access extension (#8303)
  • [PI][UR] Report error from cuInit (#10353)
  • [SYCL][CUDA] Remove SYCL dependencies from CUDA UR adapter (#10135)
  • [SYCL][Bindless][2/4] Add experimental implementation of SYCL bindless images extension (#10112)
  • [SYCL][UR][CUDA] Fix some issues in cuda adapter's urDeviceGetInfo. (#10248)
  • [SYCL][CUDA] Fix device creation from native handle (#10450)
  • [SYCL][Bindless] Fix compiler Werrors (#10464)
  • [SYCL][UR] Fix device partition queries (#10355)
  • [SYCL] [L0] Add user APIs to import / release host memory from USM. (#9294)
  • [CUDA][UR] Cache the max local mem size (#10577)
  • [SYCL][PI] Restore CUDA and HIP plugin ABI (#10518)
  • [SYCL][UR] Bump UR and implement adapter handles (#10349)
  • [SYCL][CUDA] Make plugin specific error return an error (#10626)
  • [SYCL][CUDA] Pass device from context in create queue. (#10491)
  • [SYCL][CUDA] ifdef cuda 11.5 datatypes (#10691)
  • [SYCL][CUDA] fix compilation of CUDA plugin on Windows with MSVC (#10809)
  • [SYCL][UR][CUDA] Fix a few issues in the cuda adapter revealed by UR enqueue CTS. (#10244)
  • [CUDA][HIP][UR] Fix race condition in adapters (#10826)
  • [SYCL][UR] Implement usm memory pool for cuda adapter. (#10758)
  • [SYCL][CUDA] Add std::ignore for USM alloc args that are only used in an assert. (#10899)
  • [UR][CUDA][HIP] Fix Set Arg Local (#10710)
  • [UR][CUDA][HIP][L0] Cleanup licence header (#10824)
  • [SYCL][HIP] Implemented supported make_* interop functions. (#10526)
  • [UR][CUDA] Ifdef remaining CUDA 11 datatypes (#10922)
  • [SYCL][CUDA] Reintroduce removing of size checks from USM allocations (#11023)
  • [UR][CUDA][HIP] Replace ur::assertion with UR_CHECK_ERROR (#10986)
  • [SYCL][CUDA][Bindless] Add support for normalized channel types (#11120)
  • [SYCL][UR][CUDA] Mirror SYCL_PI env vars with UR prefix (#10045)
  • [PI][UR][HIP][CUDA][L0][NCPU] Pull in latest UR fixes. (#11155)
  • [SYCL] Add esimd as an optional device feature (#10017)
  • Revert "[PI][UR][HIP][CUDA][L0][NCPU] Pull in latest UR fixes." (#11227)
  • [SYCL][CUDA] Multiple fixes for the CUDA adapter (#11121)
  • [SYCL][NFC] Make UR_CHECK_ERROR a void return macro (#11100)
  • [SYCL][NFC] Remove unused lambda capture (#11269)
  • [CUDA] Move adapter sources into the cuda adapter folder
  • CI: Cancel stale workflows when new commits are added to a PR
  • CI: Also cancel stale Bandit runs
  • Add test workflow for codegen example
  • [UR][HIP] Copy adapter code from intel/llvm
  • [UR][HIP] Fixup licenses and loader interface
  • [UR] Fix include path
  • [CUDA] Update license headers and fix compilation issues ([CUDA] Update license headers and fix compilation issues #900)
  • [HIP][UR] Fix hip include dir
  • [UR][L0] Propagate errors from USMAllocationMakeResident
  • [UR][Tests] fix match.py on-error printing
  • [UR][Tests] print test command and full path to output, when CTS fails
  • [UR][Tests] don't remove file with test output; we clean it up on match start
  • [SYCL][CUDA] Implement ext_oneapi_queue_priority (#11296)
  • [UR][L0][CMake] Disable warning for ICX on Windows
  • [L0] fix windows cmake scripts
  • [UR][L0] Copy prebuilt L0 to avoid leaking shared folder path
  • Add CODEOWNERS file
  • [CUDA] Fix queue creation with native handle
  • [HIP] Enable kernel finalization using comgr
  • Re add extended deleters
  • [UR][L0] Fix minor code duplication
  • Add code owners for the CUDA and HIP adapters
  • Use teams for plugin codeowners
  • Use CUDA team for HIP adapter too
  • Change xfail list
  • [UR][L0] Add adapter source to codeowners file
  • Update HIP adapter codeowners to use specific team
  • [Command-buffer][L0] Reset sync-point events
  • [Command-buffer][L0] Condense signalling
  • [SYCL][OpenCL] Port OpenCL plugin to Unified Runtime (#10490)
  • [OpenCL] Follow up changes after moving the adapter
  • [OpenCL] Allow upstream to manually set the OpenCL target ([OpenCL] Allow upstream to manually set the OpenCL target #969)
  • Revert "[UR][L0] Propagate errors from USMAllocationMakeResident"
  • Set command-buffer experimental feature codeowners
  • [CUDA][EXP] CUDA adapter support for command buffers
  • Refactor unions to using std::variant
  • CODEOWNERS for Bindless Images
  • [UR][Tests] Print all CTS outputs (from gtest) in CI
  • Use std::get<BufferMem>
  • Revert "Bump adapters branch"
  • [CUDA][HIP] Move adapter specific testing out of CTS

iclsrc and others added 30 commits August 18, 2023 12:09
…i-calls-adapters

Test parts of API with libFuzzer.
[UR] Remove `cuda_`/`hip_` prefixes from tests files.
[adapters] update to latest sycl (with 0.7.1 tag)
…graph (#10789)

This PR contains a set of changes that implement throwing an exception
when a feature unsupported by

[sycl_ext_oneapi_graph](https://github.com/intel/llvm/blob/sycl/sycl/doc/extensions/proposed/sycl_ext_oneapi_graph.asciidoc)
is used.

An error is thrown when an application uses the following features with
the graph extension:
* An unsupported extension.
* Querying the event returned from graph submission for profiling
information.
* Level Zero immediate command-list (see
intel/llvm#10467)
* Specialization constants, kernel bundles, or reductions are used in a
graph node.

## Authors

Co-authored-by: Pablo Reble <pablo.reble@intel.com>
Co-authored-by: Julian Miller <julian.miller@intel.com>
Co-authored-by: Ben Tracy <ben.tracy@codeplay.com>
Co-authored-by: Ewan Crawford <ewan@codeplay.com>
Co-authored-by: Maxime France-Pillois
<maxime.francepillois@codeplay.com>
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
This change is necessary to workaround a delightful bug in either HIP
runtime, or the HIP spec.

It's discussed at length in github.com/intel/llvm/issues/7252 but for
the purposes of this patch, it suffices to say that a call to
`hipMemPrefetchAsync` is *required* for correctness in the face of
global atomic operations on (*at least*) shared USM allocations.

The architecture of this change is slightly strange on first sight in
that we reduntantly track allocation information in several places. The
context now keeps track of all USM mappings. We require a mapping of
pointers to the allocated size, but these allocations aren't pinned to
any particular queue or HIP stream.
The `hipMemPrefetchAsync`, however, requires the associated HIP stream
object, and the size of the allocation. The stream comes
hot-off-the-queue *only* just before a kernel is launched, so we need to
defer the prefetch until we have that information.

Finally, the kernel itself keeps track of pointer arguments in a more
accessible way so we can determine which of the kernel's pointer
arguments do, in-fact, point to USM allocations.
In the CUDA/HIP adapters `urKernelSetArgValue` was being used to
implement both `urKernelSetArgValue` & `urKernelSetArgLocal`. However,
if the validation layer is enabled in UR then the path to set local arg
is never taken since it includes a check that `pArgValue` is not null.

This PR:
 * Implements `urKernelSetArgLocal` for CUDA/HIP adapters
* Changes `pi2ur` to call `urKernelSetArgLocal` when `arg_value` is
`nullptr`
* Implements `urKernelSetArgLocal` for L0 adapter - this just calls back
into `urKernelSetArgValue`.
In the CUDA/HIP adapters `urKernelSetArgValue` was being used to
implement both `urKernelSetArgValue` & `urKernelSetArgLocal`. However,
if the validation layer is enabled in UR then the path to set local arg
is never taken since it includes a check that `pArgValue` is not null.

This PR:
 * Implements `urKernelSetArgLocal` for CUDA/HIP adapters
* Changes `pi2ur` to call `urKernelSetArgLocal` when `arg_value` is
`nullptr`
* Implements `urKernelSetArgLocal` for L0 adapter - this just calls back
into `urKernelSetArgValue`.
In the HIP adapter the HIP module is not set until the program is built
with `urProgramBuild`, therefore we should check that the module
actually needs to be unloaded in `urProgramRelease`.

The following will result in a failure, but should still be valid UR
trace:

```cpp
uint8_t *source = "<some ptx>";
ur_program_handle_t prog;
urProgramCreate(context, device, sizeof(source), ptxSource, nullptr, &prog);
urProgramRelease(prog); // fails when it tries to unload the module.
```
Fix the license headers at the top of each source file in the unified
runtime directory.

---------

Co-authored-by: Alexey Bader <alexey.bader@intel.com>
Fix the license headers at the top of each source file in the unified
runtime directory.

---------

Co-authored-by: Alexey Bader <alexey.bader@intel.com>
While attempting to enable the Level-Zero and OpenCL adapters at the
same time git will report an error due to the OpenCL tag not existing in
the intel/llvm clone use for the Level-Zero adapter. Furthermore, if I
wanted to test separate bug fixes for the CUDA and HIP adapters from
different sources, this would also not be possible.

This patch uses a separate FetchSource for each adapter to allow each
adapters source to be fetched independently of the others and moves
those clones into the build directory. This does result in additional
git clones when enabling multiple adapters and again in multiple build
directories but avoids conflicting remote URL's or multiple build
configurations trampling on each others checked out tags.
and re-name the label to 'fuzz-short' for easier usage.
…e-clones

[cmake] Use separate FetchSource's per adapter
This change enables conformance tests on HW with adapters.
Tests that currently do not pass are ignored, but in the future,
when they are all fixed, tests should pass without using this functionality.
[cts] Add adapters ignore lists for conformance tests
EwanC and others added 29 commits October 17, 2023 09:57
Rather than having a command-list wide barrier and separate
signal command, have a single barrier command which signals
the UR command-buffer signal event and waits on the
events that correspond to sync-points.

Co-authored-by: Pablo Reble <pablo.reble@intel.com>
Co-authored-by: Martin Morrison-Grant <martin.morrisongrant@codeplay.com>
Co-authored-by: Petr Vesely <petr.vesely@codeplay.com>
Co-authored-by: Callum Fare <callum@codeplay.com>
Co-authored-by: aarongreig <aarongreig01@gmail.com>
- Update Cmake to use local adapter source files
- Update license headers
- Add virtual memory entrypoints to interface_loader
- Add .clang-format
- Update CODEOWNERS file for OpenCL adapter
…#969)

- Upstream CI is unable to use find_package() for OpenCL. This
commit allows it to set the target manually and skip the call to
find_package().
- This commit also changes UR to use the OpenCL::OpenCL target.
It provides a simpler alternative to import the opencl library
without having to use add_library().
Set [unified-runtime-command-buffer-write](https://github.com/orgs/oneapi-src/teams/unified-runtime-command-buffer-write] as the codeowners of the command-buffer experimental feature.
Including:
* Adapter implementations
* Specification document
* YML definition
…rror_checking

Revert "[UR][L0] Propagate errors from `USMAllocationMakeResident`"
…eowners

Set command-buffer experimental feature codeowners
- Implement initial subset of command buffer functions for CUDA
- Report command buffer extension as supported from device query
- Some additional methods and refactoring to reuse existing adapter code
[CUDA] Fix queue creation with native handle
[UR][HIP] Enable kernel finalization using comgr
Add `unified-runtime-bindless-images-write` team
as code owners for anything related to images.
[Command-buffer][L0] Reset sync-point events
Print all CTS outputs (from gtest) in CI.
…iant

[HIP][CUDA] Change unions in ur_mem_handle_t_ to stdvariant
…-changes-into-adapters

Bump adapters branch
This is required after oneapi-src#961
…some-main-changes-into-adapters

Revert "Bump adapters branch"
[CUDA][EXP] CUDA adapter support for command buffers
This patch moves the `test-adapter-cuda` and `test-adapter-hip` test
suites out of the `test/conformance` directory. The goal of this move is
to ensure that all adapters will be tested with the same set and number
of conformance tests, making conformance pass rates directly comparable
between adapters. Up to now the CUDA and HIP adapters have included
additional unit tests of internals which skews pass rates.
@kbenzie kbenzie closed this Oct 31, 2023
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.