The plugin class provides a unified interface to the underlying low-level runtimes for the device-agnostic SYCL runtime.
More...
#include <detail/plugin.hpp>
|
| plugin ()=delete |
|
| plugin (ur_adapter_handle_t adapter, backend UseBackend) |
|
plugin & | operator= (const plugin &)=delete |
|
| plugin (const plugin &)=delete |
|
plugin & | operator= (plugin &&other) noexcept=delete |
|
| plugin (plugin &&other) noexcept=delete |
|
| ~plugin ()=default |
|
template<sycl::errc errc = sycl::errc::runtime> |
void | checkUrResult (ur_result_t ur_result) const |
|
std::vector< ur_platform_handle_t > & | getUrPlatforms () |
|
ur_adapter_handle_t | getUrAdapter () |
|
template<UrApiKind UrApiOffset, typename... ArgsT> |
ur_result_t | call_nocheck (ArgsT... Args) const |
| Calls the UR Api, traces the call, and returns the result. More...
|
|
template<UrApiKind UrApiOffset, typename... ArgsT> |
void | call (ArgsT... Args) const |
| Calls the API, traces the call, checks the result. More...
|
|
template<sycl::errc errc, UrApiKind UrApiOffset, typename... ArgsT> |
void | call (ArgsT... Args) const |
|
bool | hasBackend (backend Backend) const |
| Tells if this plugin can serve specified backend. More...
|
|
void | release () |
|
int | getPlatformId (ur_platform_handle_t Platform) |
|
int | getStartingDeviceId (ur_platform_handle_t Platform) |
|
void | setLastDeviceId (ur_platform_handle_t Platform, int Id) |
|
void | adjustLastDeviceId (ur_platform_handle_t Platform) |
|
bool | containsUrPlatform (ur_platform_handle_t Platform) |
|
std::shared_ptr< std::mutex > | getPluginMutex () |
|
The plugin class provides a unified interface to the underlying low-level runtimes for the device-agnostic SYCL runtime.
Definition at line 44 of file plugin.hpp.
◆ plugin() [1/4]
sycl::_V1::detail::plugin::plugin |
( |
| ) |
|
|
delete |
◆ plugin() [2/4]
sycl::_V1::detail::plugin::plugin |
( |
ur_adapter_handle_t |
adapter, |
|
|
backend |
UseBackend |
|
) |
| |
|
inline |
◆ plugin() [3/4]
sycl::_V1::detail::plugin::plugin |
( |
const plugin & |
| ) |
|
|
delete |
◆ plugin() [4/4]
sycl::_V1::detail::plugin::plugin |
( |
plugin && |
other | ) |
|
|
deletenoexcept |
◆ ~plugin()
sycl::_V1::detail::plugin::~plugin |
( |
| ) |
|
|
default |
◆ adjustLastDeviceId()
void sycl::_V1::detail::plugin::adjustLastDeviceId |
( |
ur_platform_handle_t |
Platform | ) |
|
|
inline |
◆ call() [1/2]
template<UrApiKind UrApiOffset, typename... ArgsT>
void sycl::_V1::detail::plugin::call |
( |
ArgsT... |
Args | ) |
const |
|
inline |
Calls the API, traces the call, checks the result.
- Exceptions
-
sycl::runtime_exception | if the call was not successful. |
Definition at line 138 of file plugin.hpp.
References checkUrResult().
◆ call() [2/2]
template<sycl::errc errc, UrApiKind UrApiOffset, typename... ArgsT>
void sycl::_V1::detail::plugin::call |
( |
ArgsT... |
Args | ) |
const |
|
inline |
- Exceptions
-
sycl::exceptions(errc) | if the call was not successful. |
Definition at line 145 of file plugin.hpp.
◆ call_nocheck()
template<UrApiKind UrApiOffset, typename... ArgsT>
ur_result_t sycl::_V1::detail::plugin::call_nocheck |
( |
ArgsT... |
Args | ) |
const |
|
inline |
Calls the UR Api, traces the call, and returns the result.
Usage:
ur_result_t Err = Plugin->call<UrApiKind::urEntryPoint>(Args);
Plugin->checkUrResult(Err);
- See also
- plugin::checkUrResult
Definition at line 124 of file plugin.hpp.
References adapterReleased.
◆ checkUrResult()
template<sycl::errc errc = sycl::errc::runtime>
void sycl::_V1::detail::plugin::checkUrResult |
( |
ur_result_t |
ur_result | ) |
const |
|
inline |
◆ containsUrPlatform()
bool sycl::_V1::detail::plugin::containsUrPlatform |
( |
ur_platform_handle_t |
Platform | ) |
|
|
inline |
◆ getPlatformId()
int sycl::_V1::detail::plugin::getPlatformId |
( |
ur_platform_handle_t |
Platform | ) |
|
|
inline |
◆ getPluginMutex()
std::shared_ptr<std::mutex> sycl::_V1::detail::plugin::getPluginMutex |
( |
| ) |
|
|
inline |
◆ getStartingDeviceId()
int sycl::_V1::detail::plugin::getStartingDeviceId |
( |
ur_platform_handle_t |
Platform | ) |
|
|
inline |
◆ getUrAdapter()
ur_adapter_handle_t sycl::_V1::detail::plugin::getUrAdapter |
( |
| ) |
|
|
inline |
◆ getUrPlatforms()
std::vector<ur_platform_handle_t>& sycl::_V1::detail::plugin::getUrPlatforms |
( |
| ) |
|
|
inline |
◆ hasBackend()
bool sycl::_V1::detail::plugin::hasBackend |
( |
backend |
Backend | ) |
const |
|
inline |
Tells if this plugin can serve specified backend.
For example, Unified Runtime plugin will be able to serve multiple backends as determined by the platforms reported by the plugin.
Definition at line 153 of file plugin.hpp.
◆ operator=() [1/2]
plugin& sycl::_V1::detail::plugin::operator= |
( |
const plugin & |
| ) |
|
|
delete |
◆ operator=() [2/2]
plugin& sycl::_V1::detail::plugin::operator= |
( |
plugin && |
other | ) |
|
|
deletenoexcept |
◆ release()
void sycl::_V1::detail::plugin::release |
( |
| ) |
|
|
inline |
◆ setLastDeviceId()
void sycl::_V1::detail::plugin::setLastDeviceId |
( |
ur_platform_handle_t |
Platform, |
|
|
int |
Id |
|
) |
| |
|
inline |
◆ adapterReleased
bool sycl::_V1::detail::plugin::adapterReleased = false |
The documentation for this class was generated from the following file: