struct sycl_backend_enumerator
Declaration
struct sycl_backend_enumerator { /* full declaration omitted */ };
Description
Enumerates the SYCL backends devices are compatible with and that Celerity has been compiled with. This type implements the (nameless) concept accepted by pick_devices
.
Member Aliases
- using backend_type = sycl_backend_type;
- using device_type = sycl::device;
Member Function Overview
- available_backends() const → std::vector<backend_type>
- compatible_backends(const sycl::device & device) const → std::vector<backend_type>
- get_priority(backend_type type) const → int
- is_specialized(backend_type type) const → bool
Member Functions
¶std::vector<backend_type> available_backends()
const
std::vector<backend_type> available_backends()
const
Description
Lists the backend types Celerity has been compiled with.
¶std::vector<backend_type> compatible_backends(
const sycl::device& device) const
std::vector<backend_type> compatible_backends(
const sycl::device& device) const
Description
Lists the backend types a device is compatible with, even if Celerity has not been compiled with that backend.
Parameters
- const sycl::device& device
¶int get_priority(backend_type type) const
int get_priority(backend_type type) const
Description
Returns a priority value for each backend type, where the highest-priority compatible backend type should offer the best performance.
Parameters
- backend_type type
¶bool is_specialized(backend_type type) const
bool is_specialized(backend_type type) const
Description
Queries whether a given backend type is specialized (for diagnostics only).
Parameters
- backend_type type