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

add test for object comparability #1485

Open
bashbaug opened this issue Sep 5, 2022 · 3 comments · May be fixed by #2171 or #2176
Open

add test for object comparability #1485

bashbaug opened this issue Sep 5, 2022 · 3 comments · May be fixed by #2171 or #2176
Labels
mobica-backlog Issue approved by WG for Mobica to work on

Comments

@bashbaug
Copy link
Contributor

bashbaug commented Sep 5, 2022

See KhronosGroup/OpenCL-Docs#797.

We should add basic testing for object comparability, to ensure that object handles compare equal when they are queried from child objects.

@bashbaug bashbaug added the mobica-triage Issue proposed for addition to Mobica's backlog (needs WG approval) label Feb 20, 2024
@neiltrevett neiltrevett added mobica-backlog Issue approved by WG for Mobica to work on and removed mobica-triage Issue proposed for addition to Mobica's backlog (needs WG approval) labels Sep 24, 2024
@bashbaug
Copy link
Contributor Author

bashbaug commented Sep 24, 2024

A good initial step towards resolving this issue would be a test plan documenting what will be tested.

@shajder
Copy link
Contributor

shajder commented Oct 24, 2024

@bashbaug @Snektron in most cases such comparability is already performed, I went through spec and CTS. It looks like the problem is mostly related to querying command queues, I found multiple similar comments:

    // We can not check if this is the right queue because this is an opaque
    // object.

I am assuming this is no longer correct statement and we should compare queried command queues just like in cases of command_buffer_get_command_buffer_info.cpp. Below my comments for completed and missing cases:

  1. clGetCommandBufferInfoKHR with params:
  1. clGetCommandQueueInfo with params:
  1. clGetContextInfo with param:
  • CL_CONTEXT_DEVICES (including multi-device case) - comparison missing
  1. clGetDeviceInfo with param:
  • CL_DEVICE_PLATFORM - comparison missing
  1. clGetGLContextInfoKHR with params:
  • CL_CURRENT_DEVICE_FOR_GL_CONTEXT_KHR - comparison missing,
  • CL_DEVICES_FOR_GL_CONTEXT_KHR - comparison missing
  1. clGetKernelInfo with params:
  1. clGetMemObjectInfo with params:
  1. clGetMutableCommandInfoKHR with params:
  1. clGetProgramInfo with params:
  • CL_PROGRAM_CONTEXT - done,
  • CL_PROGRAM_DEVICES (including multi-device case) - comparison missing
  1. clGetSamplerInfo with param:
  1. clGetSemaphoreInfoKHR with params:
  1. clGetEventInfo with params:

I will appreciate discussion over these concerns:

  1. Is the above list complete, any thoughts on complementing that ?
  2. Already covered cases are spreaded among CTS. I guess there is no way around than to follow that scheme with missing cases, right ?

@shajder
Copy link
Contributor

shajder commented Dec 6, 2024

Due to the fact that the required changes cover different areas of CTS, the work plan for this task includes the creation of separate PRs for each of the following cases:

  • CL_QUEUE_DEVICE_DEFAULT
  • CL_CONTEXT_DEVICES
  • CL_DEVICE_PLATFORM
  • CL_CURRENT_DEVICE_FOR_GL_CONTEXT_KHR
  • CL_DEVICES_FOR_GL_CONTEXT_KHR
  • CL_PROGRAM_DEVICES

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
mobica-backlog Issue approved by WG for Mobica to work on
Projects
None yet
3 participants