Loading...
Searching...
No Matches
forward_propagation.h
Go to the documentation of this file.
Definition network.h:87
Definition training_arena_plan.h:18
Definition training.h:13
Definition device_backend.h:254
Definition energy_meter.h:7
unique_ptr< remove_pointer_t< DeviceGraphExec >, GraphExecDeleter > GraphExecHandle
Definition device_backend.h:326
std::array< Index, static_cast< size_t >(GraphWorkspaceKind::Count)> GraphWorkspaceRequirements
Definition device_backend.h:122
Definition configuration.h:10
bool is_training(ForwardPropagationMode pass) noexcept
Definition forward_propagation.h:38
array< Buffer, sizeof...(Kind)> cuda_workspace_buffers(index_sequence< Kind... >)
Definition forward_propagation.h:24
Definition tensor_types.h:340
vector< vector< Index > > valid_lengths
Definition forward_propagation.h:141
void set(Index, Network *, Buffer *external_storage=nullptr, ForwardPropagationMode=ForwardPropagationMode::Training, InferenceShapePolicy={}, bool inputs_pre_scaled=false, span< const MemoryPoolEntry > co_planned_lifetimes={}, bool exhaustive_training_plan=false)
void stage_position(DeviceStream stream)
vector< TensorView > staged_inputs
Definition forward_propagation.h:121
void set_active_sequence_length(Index length)
device::PinnedBuffer position_pinned
Definition forward_propagation.h:134
array< Buffer, size_t(device::GraphWorkspaceKind::Count)> inference_graph_workspaces
Definition forward_propagation.h:163
bool cuda_graph_failed
Definition forward_propagation.h:156
void reset_cuda_graph() noexcept
bool needs_position_staging() const noexcept
Definition forward_propagation.h:93
vector< uint16_t > host_bf16_output_scratch
Definition forward_propagation.h:131
device::GraphWorkspaceViews get_cuda_graph_workspace_views() const noexcept
ForwardPropagation()=default
const int * input_device_valid_lengths(size_t layer, size_t input_ordinal) const
vector< Buffer > layer_state_storage
Definition forward_propagation.h:117
Index cuda_graph_warmup_calls
Definition forward_propagation.h:157
void prepare_cuda_graph_workspaces()
Buffer loss_target_workspace
Definition forward_propagation.h:124
Index get_final_output_capacity() const noexcept
Definition forward_propagation.h:90
TensorView binary_logits
Definition forward_propagation.h:127
void enable_binary_logits(Buffer *shared_storage=nullptr)
Buffer position_device
Definition forward_propagation.h:133
bool cuda_graph_workspaces_need_growth() const noexcept
ForwardPropagation(const ForwardPropagation &)=delete
vector< vector< TensorView > > inputs
Definition forward_propagation.h:136
void set_cuda_graph(bool enabled)
vector< device::PinnedBuffer > layer_pinned_storage
Definition forward_propagation.h:119
vector< const void * > captured_input_pointers
Definition forward_propagation.h:159
void recompute_for_backward(Index layer_index)
vector< uint8_t > drelu_fused_by_layer
Definition forward_propagation.h:138
Index get_sequence_capacity() const noexcept
Definition forward_propagation.h:89
SequenceLengths input_sequence_lengths(size_t layer, size_t input_ordinal) const
ForwardPropagation(Index, Network *, ForwardPropagationMode=ForwardPropagationMode::Training, InferenceShapePolicy={}, bool inputs_pre_scaled=false, span< const MemoryPoolEntry > co_planned_lifetimes={}, bool exhaustive_training_plan=false)
void set_output_sequence_window(Index start, Index count)
vector< Buffer > device_valid_length_storage
Definition forward_propagation.h:143
TensorView get_outputs() const
device::GraphExecHandle inference_graph_exec
Definition forward_propagation.h:158
void inherit_valid_lengths(size_t layer)
Index get_execution_start_layer() const noexcept
Definition forward_propagation.h:92
~ForwardPropagation()
vector< vector< uint16_t > > host_bf16_input_scratch
Definition forward_propagation.h:130
void gather_output_window()
vector< tuple< size_t, size_t, size_t > > passthrough_overrides
Definition forward_propagation.h:139
Index get_final_output_layer() const noexcept
Definition forward_propagation.h:91
Buffer binary_logits_storage
Definition forward_propagation.h:126
vector< Buffer > staged_input_storage
Definition forward_propagation.h:120
vector< const int * > device_valid_lengths
Definition forward_propagation.h:142
vector< Index > co_planned_offsets
Definition forward_propagation.h:74
Index valid_lengths_source(size_t layer, size_t input_ordinal) const
device::GraphWorkspaceRequirements inference_graph_workspace_requirements
Definition forward_propagation.h:161
vector< vector< TensorView > > slots
Definition forward_propagation.h:137
bool reserve_kv_cache(Index required, Index preserved_tokens)
shared_ptr< vector< Buffer > > layer_session_state_storage
Definition forward_propagation.h:118
int * device_valid_lengths_slot(size_t layer, Index batch_size)
friend struct TrainingContext
Definition forward_propagation.h:173
void share_session_state_from(const ForwardPropagation &source)
const vector< Index > * input_valid_lengths(size_t layer, size_t input_ordinal) const
ForwardPropagation & operator=(const ForwardPropagation &)=delete
TensorView get_last_trainable_layer_outputs() const
uint64_t get_parameters_version() const
Index binary_logits_layer
Definition forward_propagation.h:128
Definition forward_propagation.h:44
Index sequence_capacity
Definition forward_propagation.h:45
bool capture_binary_logits
Definition forward_propagation.h:48
Index final_output_capacity
Definition forward_propagation.h:46
vector< Index > retained_output_layers
Definition forward_propagation.h:47
Definition forward_propagation.h:16
Definition tensor_types.h:540