|
Uni20
Asynchronous tensor and runtime library.
|
Async Tensor wrappers for elementwise overwrite and update operations. More...
#include <uni20/async/async.hpp>#include <uni20/async/awaiters.hpp>#include <uni20/async/debug_scheduler.hpp>#include <uni20/common/trace.hpp>#include <uni20/linalg/async/detail/output.hpp>#include <uni20/tensor/output.hpp>#include <uni20/tensor/transform.hpp>#include <concepts>#include <cstddef>#include <tuple>#include <utility>Go to the source code of this file.
Namespaces | |
| namespace | uni20 |
Functions | |
| template<AsyncTensorOutput OutputTensor, class Function > | |
| void | uni20::assign_transform (async::Async< OutputTensor > &output, Function &&function) |
| Schedule a nullary overwrite using the static Tensor selector. | |
| template<AsyncTensorOutput OutputTensor, class Function , TensorView FirstInputTensor, TensorView... RestInputTensors> requires detail::OverwriteTransformTensors<OutputTensor, FirstInputTensor, RestInputTensors...> | |
| void | uni20::assign_transform (async::Async< OutputTensor > &output, Function &&function, async::Async< FirstInputTensor > const &first_input, async::Async< RestInputTensors > const &... rest_inputs) |
| Schedule a variadic elementwise overwrite using the static Tensor selector. | |
| template<class BackendSelector , AsyncTensorOutput OutputTensor, class Function > | |
| void | uni20::assign_transform (BackendSelector selector, async::Async< OutputTensor > &output, Function &&function) |
| Schedule a nullary overwrite of an existing async Tensor. | |
| template<class BackendSelector , AsyncTensorOutput OutputTensor, class Function , TensorView FirstInputTensor, TensorView... RestInputTensors> requires detail::OverwriteTransformTensors<OutputTensor, FirstInputTensor, RestInputTensors...> | |
| void | uni20::assign_transform (BackendSelector selector, async::Async< OutputTensor > &output, Function &&function, async::Async< FirstInputTensor > const &first_input, async::Async< RestInputTensors > const &... rest_inputs) |
| Schedule a variadic elementwise overwrite with an explicit backend selector. | |
| template<AsyncTensorOutput OutputTensor, class Value > | |
| void | uni20::fill (async::Async< OutputTensor > &output, Value &&value) |
| Fill an existing async Tensor without reading its old values. | |
| template<class BackendSelector , AsyncTensorOutput OutputTensor, class Value > | |
| void | uni20::fill (BackendSelector selector, async::Async< OutputTensor > &output, Value &&value) |
| Fill an existing async Tensor without reading its old values. | |
| template<AsyncTensorOutput OutputTensor, class Function , TensorView... InputTensors> requires detail::UpdateTransformTensors<OutputTensor, InputTensors...> | |
| void | uni20::transform_inplace (async::Async< OutputTensor > &output, Function &&function, async::Async< InputTensors > const &... inputs) |
| Schedule a variadic elementwise update using the static Tensor selector. | |
| template<class BackendSelector , AsyncTensorOutput OutputTensor, class Function , TensorView... InputTensors> requires detail::UpdateTransformTensors<OutputTensor, InputTensors...> | |
| void | uni20::transform_inplace (BackendSelector selector, async::Async< OutputTensor > &output, Function &&function, async::Async< InputTensors > const &... inputs) |
| Schedule a variadic elementwise update with an explicit backend selector. | |
Async Tensor wrappers for elementwise overwrite and update operations.