|
Uni20
Asynchronous tensor and runtime library.
|
Classes | |
| class | CusolverError |
| Exception carrying a failed cuSOLVER operation and device identity. More... | |
| class | ExecutionLease |
| Move-only pairing of one cuSOLVER handle slot and one idle stream. More... | |
| class | ExecutionPool |
| Device-local cuSOLVER handle pool paired with the shared stream pool. More... | |
| class | HandleSlot |
| One reusable cuSOLVER handle and its handle-local state. More... | |
Functions | |
| void | check (cusolverStatus_t status, std::string_view operation, int device, std::source_location where=std::source_location::current()) |
Raise unless a cuSOLVER call returned CUSOLVER_STATUS_SUCCESS. | |
| ExecutionPool & | execution_pool (cuda::DeviceResources &resources) |
| Return the lazily constructed cuSOLVER execution pool for one device. | |
| ExecutionPool & | execution_pool (cuda::DeviceResources &resources, std::size_t handle_count) |
| Configure or return the canonical cuSOLVER execution pool for one device. | |
| void | raise_error (cusolverStatus_t status, std::string_view operation, int device, std::source_location where=std::source_location::current()) |
| Raise a structured cuSOLVER provider failure. | |
| std::string_view | status_name (cusolverStatus_t status) noexcept |
| Return a stable symbolic name for a cuSOLVER status value. | |
| void uni20::cusolver::check | ( | cusolverStatus_t | status, |
| std::string_view | operation, | ||
| int | device, | ||
| std::source_location | where | ||
| ) |
Raise unless a cuSOLVER call returned CUSOLVER_STATUS_SUCCESS.
| ExecutionPool & uni20::cusolver::execution_pool | ( | cuda::DeviceResources & | resources | ) |
Return the lazily constructed cuSOLVER execution pool for one device.
Unless configured explicitly, the pool contains two handles, capped by the device's stream capacity.
| ExecutionPool & uni20::cusolver::execution_pool | ( | cuda::DeviceResources & | resources, |
| std::size_t | handle_count | ||
| ) |
Configure or return the canonical cuSOLVER execution pool for one device.
This first-use configuration must precede concurrent provider use. Repeated calls must request the same handle count. The handle count cannot exceed the device's stream capacity.
| resources | Device resources that own the canonical pool. |
| handle_count | Number of reusable cuSOLVER handles. |
| void uni20::cusolver::raise_error | ( | cusolverStatus_t | status, |
| std::string_view | operation, | ||
| int | device, | ||
| std::source_location | where | ||
| ) |
Raise a structured cuSOLVER provider failure.
|
noexcept |
Return a stable symbolic name for a cuSOLVER status value.