Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Classes | Namespaces | Concepts | Enumerations
async_task.hpp File Reference

Promise-neutral coroutine task ownership and the public AsyncTask type. More...

#include "task_registry.hpp"
#include <atomic>
#include <concepts>
#include <coroutine>
#include <exception>
#include <optional>
#include <string>
#include <uni20/common/trace.hpp>
#include <utility>
#include "async_task_promise.hpp"
Include dependency graph for async_task.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  uni20::async::AsyncTask
 Canonical host-oriented coroutine task type. More...
 
class  uni20::async::BasicTask
 Move-only promise-neutral ownership claim for a Uni20 coroutine. More...
 
struct  uni20::async::BasicTask::construction_key
 
class  uni20::async::TaskHandle
 Non-owning erased identity for one Uni20 coroutine frame. More...
 
struct  uni20::async::TaskRoute
 Execution requirements used to validate a scheduler route. More...
 

Namespaces

namespace  uni20
 
namespace  uni20::async
 This represents the reverse-mode adjoint for functions of complex variables, assuming a real-valued scalar loss function ( L \colon \mathbb{C} \to \mathbb{R} ).
 

Concepts

concept  uni20::async::TaskPromise
 Promise concept accepted by Uni20 task machinery.
 

Enumerations

enum class  uni20::async::TaskDomain { uni20::async::none , uni20::async::host , uni20::async::cuda }
 Execution domain declared by a concrete Uni20 task promise. More...
 

Detailed Description

Promise-neutral coroutine task ownership and the public AsyncTask type.