MCPcopy Create free account
hub / github.com/MegEngine/MegEngine / exec_set_mesh_indexing

Function exec_set_mesh_indexing

dnn/src/naive/mesh_indexing/opr_impl.cpp:154–167  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

152/* ========================= SetMeshIndexing =========================== */
153template <typename T>
154void exec_set_mesh_indexing(
155 const TensorND& data, const TensorND& value,
156 const SetMeshIndexing::IndexDesc& desc) {
157 auto iter = tensor_iter<T>(value).begin();
158 size_t ndim = value.layout.ndim;
159 auto ptr = data.ptr<T>();
160 for (size_t idx = 0; idx < value.layout.total_nr_elems(); ++idx) {
161 int index[TensorShape::MAX_NDIM];
162 std::copy(iter.idx(), iter.idx() + ndim, index);
163 size_t data_idx = get_index(data, value, desc, index);
164 ptr[data_idx] = *iter;
165 ++iter;
166 }
167}
168
169void SetMeshIndexingImpl::exec(
170 _megdnn_tensor_inout data, _megdnn_tensor_in value, const IndexDesc& desc,

Callers

nothing calls this directly

Calls 5

idxMethod · 0.80
get_indexFunction · 0.70
copyFunction · 0.50
beginMethod · 0.45
total_nr_elemsMethod · 0.45

Tested by

no test coverage detected