|
Uni20
Asynchronous tensor and runtime library.
|
Backend-dispatched elementwise overwrite and update operations. More...
#include <uni20/common/trace.hpp>#include <uni20/linalg/backend_selector.hpp>#include <uni20/linalg/backends/cpu/transform.hpp>#include <uni20/linalg/dispatch.hpp>#include <uni20/linalg/elementwise_functions.hpp>#include <uni20/linalg/operation_tags.hpp>#include <uni20/mdspan/concepts.hpp>#include <uni20/tensor/access.hpp>#include <uni20/tensor/concepts.hpp>#include <uni20/tensor/output.hpp>#include <cstddef>#include <tuple>#include <type_traits>#include <utility>Go to the source code of this file.
Namespaces | |
| namespace | uni20 |
Functions | |
| template<class BackendSelector , class OutputMdspan , class Function , class... InputMdspans> requires detail::OverwriteTransformSpans<OutputMdspan, InputMdspans...> | |
| void | uni20::assign_transform (BackendSelector &&selector, OutputMdspan &&output, Function &&function, InputMdspans &&... inputs) |
| Overwrite a fixed-shape mdspan through an explicit backend selector. | |
| template<class BackendSelector , MutableTensorView OutputTensor, class Function > | |
| void | uni20::assign_transform (BackendSelector &&selector, OutputTensor &&output, Function &&function) |
| Overwrite a fixed-shape Tensor from a nullary element generator. | |
| template<class BackendSelector , class OutputTensor , class Function , class FirstInputTensor , class... RestInputTensors> requires detail::OverwriteTransformTensors<OutputTensor, FirstInputTensor, RestInputTensors...> | |
| void | uni20::assign_transform (BackendSelector &&selector, OutputTensor &&output, Function &&function, FirstInputTensor const &first_input, RestInputTensors const &... rest_inputs) |
| Overwrite a Tensor output through an explicit backend selector. | |
| template<MutableTensorView OutputTensor, class Function > | |
| void | uni20::assign_transform (OutputTensor &&output, Function &&function) |
| Overwrite a fixed-shape Tensor from a nullary element generator. | |
| template<class OutputTensor , class Function , class FirstInputTensor , class... RestInputTensors> requires detail::OverwriteTransformTensors<OutputTensor, FirstInputTensor, RestInputTensors...> | |
| void | uni20::assign_transform (OutputTensor &&output, Function &&function, FirstInputTensor const &first_input, RestInputTensors const &... rest_inputs) |
| Overwrite a Tensor output using its operands' default backend selector. | |
| template<class BackendSelector , class Output , class Value > requires (detail::OverwriteTransformSpans<Output> || MutableTensorView<Output>) | |
| void | uni20::fill (BackendSelector &&selector, Output &&output, Value &&value) |
| Fill a fixed-shape mdspan or Tensor without reading its old values. | |
| template<MutableTensorView Output, class Value > | |
| void | uni20::fill (Output &&output, Value &&value) |
| Fill a fixed-shape Tensor without reading its old values. | |
| template<class BackendSelector , class OutputMdspan , class Function , class... InputMdspans> requires detail::UpdateTransformSpans<OutputMdspan, InputMdspans...> | |
| void | uni20::transform_inplace (BackendSelector &&selector, OutputMdspan &&output, Function &&function, InputMdspans &&... inputs) |
| Update a fixed-shape mdspan through an explicit backend selector. | |
| template<class BackendSelector , class OutputTensor , class Function , class... InputTensors> requires detail::UpdateTransformTensors<OutputTensor, InputTensors...> | |
| void | uni20::transform_inplace (BackendSelector &&selector, OutputTensor &&output, Function &&function, InputTensors const &... inputs) |
| Update a Tensor output through an explicit backend selector. | |
| template<class OutputTensor , class Function , class... InputTensors> requires detail::UpdateTransformTensors<OutputTensor, InputTensors...> | |
| void | uni20::transform_inplace (OutputTensor &&output, Function &&function, InputTensors const &... inputs) |
| Update a Tensor output using its operands' default backend selector. | |
Backend-dispatched elementwise overwrite and update operations.