Skip to content

Commit 86d1715

Browse files
authored
Merge branch 'main' into fix_kernel_arg_indices
2 parents 0a071be + ef70004 commit 86d1715

File tree

324 files changed

+6291
-4388
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

324 files changed

+6291
-4388
lines changed

.github/workflows/benchmarks-reusable.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,3 +236,8 @@ jobs:
236236
with:
237237
path: ur-repo/benchmark_results.html
238238
key: benchmark-results-${{ matrix.adapter.str_name }}-${{ github.run_id }}
239+
240+
- name: Get information about platform
241+
if: ${{ always() }}
242+
working-directory: ${{ github.workspace }}/ur-repo/
243+
run: .github/scripts/get_system_info.sh

.github/workflows/e2e_core.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,11 @@ jobs:
192192
id: tests
193193
run: ninja -C build-e2e check-sycl-e2e || echo "e2e tests have failed. Ignoring failure."
194194

195+
- name: Get information about platform
196+
if: ${{ always() }}
197+
working-directory: ${{github.workspace}}/ur-repo
198+
run: .github/scripts/get_system_info.sh
199+
195200
# FIXME: Requires pull-request: write permissions but this is only granted
196201
# on pull requests from forks if using pull_request_target workflow
197202
# trigger but not the pull_request trigger..

README.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,14 @@ history to avoid pulling potentially breaking changes from the `main` branch.
7676

7777
## Third-Party tools
7878

79-
Tools can be acquired via instructions in [third_party](/third_party/README.md).
79+
The recommended method to install the third-party tools is using a Python
80+
virtual environment, for example:
81+
82+
```bash
83+
$ python -m venv .venv
84+
$ source .venv/bin/activate
85+
$ pip install -r third_party/requirements.txt
86+
```
8087

8188
## Building
8289

cmake/helpers.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ set(CFI_FLAGS "")
8383
if (CFI_HAS_CFI_SANITIZE)
8484
# cfi-icall requires called functions in shared libraries to also be built with cfi-icall, which we can't
8585
# guarantee. -fsanitize=cfi depends on -flto
86-
set(CFI_FLAGS "-flto -fsanitize=cfi -fno-sanitize=cfi-icall -fsanitize-ignorelist=${CMAKE_SOURCE_DIR}/sanitizer-ignorelist.txt")
86+
set(CFI_FLAGS "-flto -fsanitize=cfi -fno-sanitize=cfi-icall -fsanitize-ignorelist=${PROJECT_SOURCE_DIR}/sanitizer-ignorelist.txt")
8787
endif()
8888

8989
function(add_ur_target_compile_options name)

examples/collector/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ add_ur_library(${TARGET_NAME} SHARED
1010
)
1111

1212
target_include_directories(${TARGET_NAME} PRIVATE
13-
${CMAKE_SOURCE_DIR}/include
13+
${PROJECT_SOURCE_DIR}/include
1414
)
1515

1616
target_link_libraries(${TARGET_NAME} PRIVATE ${TARGET_XPTI})

include/ur_api.h

Lines changed: 68 additions & 54 deletions
Large diffs are not rendered by default.

include/ur_ddi.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -651,6 +651,7 @@ typedef ur_result_t(UR_APICALL *ur_pfnGetKernelProcAddrTable_t)(
651651
/// @brief Function-pointer for urKernelSuggestMaxCooperativeGroupCountExp
652652
typedef ur_result_t(UR_APICALL *ur_pfnKernelSuggestMaxCooperativeGroupCountExp_t)(
653653
ur_kernel_handle_t,
654+
ur_device_handle_t,
654655
uint32_t,
655656
const size_t *,
656657
size_t,

include/ur_print.hpp

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2074,6 +2074,9 @@ inline std::ostream &operator<<(std::ostream &os, enum ur_platform_info_t value)
20742074
case UR_PLATFORM_INFO_BACKEND:
20752075
os << "UR_PLATFORM_INFO_BACKEND";
20762076
break;
2077+
case UR_PLATFORM_INFO_ADAPTER:
2078+
os << "UR_PLATFORM_INFO_ADAPTER";
2079+
break;
20772080
default:
20782081
os << "unknown enumerator";
20792082
break;
@@ -2127,6 +2130,19 @@ inline ur_result_t printTagged(std::ostream &os, const void *ptr, ur_platform_in
21272130

21282131
os << ")";
21292132
} break;
2133+
case UR_PLATFORM_INFO_ADAPTER: {
2134+
const ur_adapter_handle_t *tptr = (const ur_adapter_handle_t *)ptr;
2135+
if (sizeof(ur_adapter_handle_t) > size) {
2136+
os << "invalid size (is: " << size << ", expected: >=" << sizeof(ur_adapter_handle_t) << ")";
2137+
return UR_RESULT_ERROR_INVALID_SIZE;
2138+
}
2139+
os << (const void *)(tptr) << " (";
2140+
2141+
ur::details::printPtr(os,
2142+
*tptr);
2143+
2144+
os << ")";
2145+
} break;
21302146
default:
21312147
os << "unknown enumerator";
21322148
return UR_RESULT_ERROR_INVALID_ENUMERATION;
@@ -13187,6 +13203,12 @@ inline std::ostream &operator<<(std::ostream &os, [[maybe_unused]] const struct
1318713203
ur::details::printPtr(os,
1318813204
*(params->phKernel));
1318913205

13206+
os << ", ";
13207+
os << ".hDevice = ";
13208+
13209+
ur::details::printPtr(os,
13210+
*(params->phDevice));
13211+
1319013212
os << ", ";
1319113213
os << ".workDim = ";
1319213214

scripts/YaML.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -336,6 +336,7 @@ plural form *enumerators* is abbreviated to `etors`.
336336
- An etor requires the following scalar fields: {`name`, `desc`}
337337
+ `desc` will be used as the etors's description comment
338338
+ If the enum has `typed_etors`, `desc` must begin with type identifier: {`"[type]"`}
339+
+ `desc` may contain the [optional-query] annotation. This denotes the etor as an info query which is optional for adapters to implement, and may legally result in a non-success error code.
339340
+ `name` must be a unique ISO-C standard identifier, and be all caps
340341
- An etor may take the following optional scalar field: {`value`, `version`}
341342
+ `value` must be an ISO-C standard identifier

scripts/benchmarks/benches/options.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ class Options:
2626
# these two should probably be merged into one setting
2727
stddev_threshold: float = 0.02
2828
epsilon: float = 0.02
29+
iterations_stddev: int = 5
2930

3031
options = Options()
3132

0 commit comments

Comments
 (0)