| 48 | EMPTY_BODY_FIXTURE_TEST_CASE(SimpleQueue, SimpleQueueFixture<acl::Target::GpuOcl>, framework::DatasetMode::ALL) |
| 49 | |
| 50 | TEST_CASE(KhrQueuePriorities, framework::DatasetMode::ALL) |
| 51 | { |
| 52 | acl::StatusCode err = acl::StatusCode::Success; |
| 53 | |
| 54 | acl::Context ctx(acl::Target::GpuOcl, &err); |
| 55 | ARM_COMPUTE_ASSERT(err == acl::StatusCode::Success); |
| 56 | |
| 57 | acl::Queue queue(ctx, &err); |
| 58 | ARM_COMPUTE_ASSERT(err == acl::StatusCode::Success); |
| 59 | |
| 60 | cl_device_id cl_dev; |
| 61 | auto status = AclGetClDevice(ctx.get(), &cl_dev); |
| 62 | ARM_COMPUTE_ASSERT(status == AclSuccess); |
| 63 | |
| 64 | std::string extensions = cl::Device(cl_dev).getInfo<CL_DEVICE_EXTENSIONS>(); |
| 65 | if (extensions.find("cl_khr_priority_hints") != std::string::npos) |
| 66 | { |
| 67 | cl_int error = CL_SUCCESS; |
| 68 | |
| 69 | cl_context cl_ctx; |
| 70 | auto status = AclGetClContext(ctx.get(), &cl_ctx); |
| 71 | ARM_COMPUTE_ASSERT(status == AclSuccess); |
| 72 | |
| 73 | /* Check a queue with high priority */ |
| 74 | cl_queue_properties queue_properties[] = {CL_QUEUE_PRIORITY_KHR, CL_QUEUE_PRIORITY_HIGH_KHR, 0}; |
| 75 | cl_command_queue priority_queue = clCreateCommandQueueWithProperties(cl_ctx, cl_dev, queue_properties, &error); |
| 76 | ARM_COMPUTE_ASSERT(error == CL_SUCCESS); |
| 77 | |
| 78 | clReleaseCommandQueue(priority_queue); |
| 79 | } |
| 80 | } |
| 81 | |
| 82 | TEST_SUITE_END() // Queue |
| 83 | TEST_SUITE_END() // UNIT |
nothing calls this directly
no test coverage detected