Mila
Deep Neural Network Library
Loading...
Searching...
No Matches
Observation.ixx File Reference

Vocabulary for activation observation: the compute pass, the stage, the observer. More...

#include <cstdint>
#include <functional>
#include <initializer_list>
#include <string>
#include <string_view>
import Dnn.ITensor;

Classes

class  Mila::Dnn::Compute::ComputePassMask
 A set of compute passes, small enough to test on the publication path. More...
struct  Mila::Dnn::Compute::ObservableStage
 A stage a component publishes, and the passes it is published on. More...

Namespaces

namespace  Mila
 Mila main API namespace.

Typedefs

using Mila::Dnn::Compute::ActivationObserver
 Receives one published activation.

Enumerations

enum class  Mila::Dnn::Compute::ComputePass : uint8_t { Forward = 0 , Prefill = 1 , Decode = 2 , Backward = 3 }
 The compute entry point that produced an observed value. More...

Functions

constexpr std::string_view Mila::Dnn::Compute::computePassToString (ComputePass pass) noexcept

Detailed Description

Vocabulary for activation observation: the compute pass, the stage, the observer.

Design of record is Specifications/Observability.md. These types are shared by Component (which publishes) and IExecutionContext (which transports).

Typedef Documentation

◆ ActivationObserver

Initial value:
std::function<void(
std::string_view path,
std::string_view stage,
const ITensor& value )>
ComputePass
The compute entry point that produced an observed value.
Definition Observation.ixx:29
Abstract interface providing essential tensor information and data access.
Definition ITensor.ixx:40

Receives one published activation.

The tensor is BORROWED and is valid only for the duration of this call. It is also ordered on the publishing component's stream rather than valid on the host: publication never synchronizes, because synchronizing is the clearest way for a probe to change what it observes. An observer needing host-readable values calls IExecutionContext::synchronize() itself, or issues its own copy on that stream.

Enumeration Type Documentation

◆ ComputePass

enum class Mila::Dnn::Compute::ComputePass : uint8_t
exportstrong

The compute entry point that produced an observed value.

Declared complete while only the inference passes are implemented, so that adding Backward later is additive rather than a change to the observer signature.