Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Enumerations | Variables
dispatch_error.hpp File Reference

Structured kernel-dispatch failure data. More...

#include <uni20/common/diagnostic_error.hpp>
#include <uni20/linalg/kernel_attempt.hpp>
#include <optional>
#include <string>
#include <string_view>
#include <type_traits>
#include <utility>
#include <vector>
Include dependency graph for dispatch_error.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  uni20::linalg::KernelBackendAttempt
 Describe one backend's role in a failed dispatch walk. More...
 
class  uni20::linalg::KernelDispatchError
 Exception carrying structured information about a failed backend walk. More...
 

Namespaces

namespace  uni20
 
namespace  uni20::linalg
 

Typedefs

template<KernelTypeAcceptance Value>
using uni20::linalg::KernelAcceptance = std::integral_constant< KernelTypeAcceptance, Value >
 Type-level result returned by kernel_accepts_types customizations.
 

Enumerations

enum class  uni20::linalg::KernelDispatchFailure { uni20::linalg::no_eligible_backend , uni20::linalg::all_candidates_declined }
 Classify why an ordered kernel-dispatch walk failed. More...
 
enum class  uni20::linalg::KernelTypeAcceptance { uni20::linalg::no , uni20::linalg::maybe , uni20::linalg::yes }
 Type-level backend eligibility for an operation and argument set. More...
 

Variables

constexpr KernelAcceptance< KernelTypeAcceptance::maybe > uni20::linalg::kernel_types_maybe {}
 Report that runtime operand values determine backend acceptance.
 
constexpr KernelAcceptance< KernelTypeAcceptance::no > uni20::linalg::kernel_types_no {}
 Report that a backend rejects the argument types.
 
constexpr KernelAcceptance< KernelTypeAcceptance::yes > uni20::linalg::kernel_types_yes {}
 Report that a backend accepts every instance of the argument types.
 

Detailed Description

Structured kernel-dispatch failure data.