Skip to content

Add cases for *_vector_width_long_long#1182

Merged
TApplencourt merged 2 commits intoKhronosGroup:mainfrom
KornevNikita:vector-width-long-long
Mar 19, 2026
Merged

Add cases for *_vector_width_long_long#1182
TApplencourt merged 2 commits intoKhronosGroup:mainfrom
KornevNikita:vector-width-long-long

Conversation

@KornevNikita
Copy link
Copy Markdown
Contributor

Copy link
Copy Markdown
Contributor

@bader bader left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@KornevNikita, please, fix CI checks.

@KornevNikita
Copy link
Copy Markdown
Contributor Author

No compiler supports this change yet, therefore adding under macros.

Copy link
Copy Markdown
Contributor

@bader bader left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@bader bader requested a review from a team February 27, 2026 16:33
@TApplencourt
Copy link
Copy Markdown
Contributor

No check for adativeCPP? But I guess the CI pass, so not required :)

@KornevNikita
Copy link
Copy Markdown
Contributor Author

No check for adativeCPP? But I guess the CI pass, so not required :)

@TApplencourt ACPP doesn't support the whole block:

// FIXME: Reenable when struct information descriptors are implemented
#if !SYCL_CTS_COMPILING_WITH_ADAPTIVECPP

@TApplencourt
Copy link
Copy Markdown
Contributor

Thanks!

  • WG Approval
  • Can Merge SYCL-DOC PR at the same time

uint32_t>(dev);
check_get_info_param<sycl::info::device::preferred_vector_width_long,
uint32_t>(dev);
#if !SYCL_CTS_COMPILING_WITH_SIMSYCL && !SYCL_CTS_COMPILING_WITH_DPCPP
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we should disable tests via SYCL_CTS_COMPILING_WITH_DPCPP. DPC++ claims conformance to the CTS, so we can't do this honestly if we disable some of the tests. I do not think any other tests are currently disabled for DPC++ with this macro.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

DPC++ claims conformance to the CTS

My understanding DPC++ claims conformance to specific versions of the spec/CTS. It doesn't mean that any DPC++ version passes any CTS version.

The spec, implementation and CTS all are moving targets. Here we test new functionality, which DPC++ implementation doesn't support yet.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we don't want to use this macro, then DPCPP needs to support this, there is no another way, right?

Anyways, I can quickly implement some dummy solution so the test passes, WDYT?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was assuming that test would just fail for DPC++ until we implement this feature, and that failure would ensure that we implement the feature before we submit our next conformance.

If we instead disable the test with the macro, what process do we have to ensure that the test is re-enabled by the time we submit our next conformance? I'm concerned that if we add the macro now to disable the test, we will just forget about it, and then we'll end up claiming conformance in the future for a CTS with some tests disabled.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Conformance logs which implementer sends the Khronos include SYCL-CTS commit hash and the diff applied locally on top of it (if any). Khronos working group is expected to raise concerns about disabled tests and not acknowledge tested implementation as conformant if any changes are considered to be unreasonable.

On DPC++ side, I expect @KornevNikita to handle it as usual (i.e. open a tracker, implement feature in DPC++, uplift DPC++ version in Khronos SYCL-CTS CI and remove guards).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it is unreasonable to expect the WG to read through the entire test suite each time there is a conformance submission to see if tests have been disabled. Instead, the CTS should be structured to make this obvious from the test run submission. Can we create a cmake config option like -D DISABLE_FAILING_TESTS_DPCPP, and structure the CTS so that tests are only disabled when that option is specified? That way, it will be obvious from the submission whether tests have been disabled. It will also be obvious to vendors even before they attempt to submit a conformance run. My concern is not that a vendor will intentionally try to seek conformance for a failing implementation. Instead, I'm concerned that we will simply forget to re-enable tests after they have been disabled.

Copy link
Copy Markdown
Contributor

@bader bader Mar 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it is unreasonable to expect the WG to read through the entire test suite each time there is a conformance submission to see if tests have been disabled.

I did this for the previous submission. It's quite easy because we use one standard macro to disable test parts per implementation. It takes less than a minute to check.

Instead, the CTS should be structured to make this obvious from the test run submission.

CTS provides an option to disable a test case. The submission log will state that test case is disabled.
Using this option for this change will mean that all device information query tests will be disabled.

@TApplencourt
Copy link
Copy Markdown
Contributor

WG: Agree to merge.

@TApplencourt TApplencourt merged commit b785735 into KhronosGroup:main Mar 19, 2026
9 checks passed
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.

4 participants