140{
141 planForwardTensors();
142 planBackwardTensors();
143
144 _tensor_builder->allocate();
145 _tensor_builder->allocateBackward();
146
147 auto fn_map = generateFunctionMap();
148
149
153 return;
154
156 assert(tensor != nullptr);
157
158 VERBOSE(FillOperandData) <<
"Fill data for " << ind << std::endl;
159
160 auto data = operand.shareData();
163
164 if (trainable_tensor == nullptr)
165 throw std::runtime_error{"This tensor is not trainable tensor"};
166
168 });
169
170
171 const_cast<ir::train::TrainableGraph &
>(*
_tdata->tgraph)
172 .operands()
174
175
176
177
178
179
180
181
182
183
184 planLayerScopeTensors(fn_map);
185 _tensor_builder->allocateLayerScope();
186
187 return fn_map;
188}
void fillBuffer(const std::shared_ptr< ir::Data > &data)
const TrainableContextData * data() const
const ir::train::TrainableGraph * trainable_graph() const
const util::Set< ir::OperandIndex > & external_operands() const
std::unique_ptr< TrainableContextData > _tdata
const Operands & operands() const override
void iterate(const std::function< void(const Index &, const Object &)> &fn) const
Iterate over the container with given function.
#define VERBOSE(name, lv)
basic::train::TrainableTensor TrainableTensor
::onert::util::Index< uint32_t, OperandIndexTag > OperandIndex