diff options
author | Arne Juul <arnej@verizonmedia.com> | 2020-12-02 11:51:31 +0000 |
---|---|---|
committer | Arne Juul <arnej@verizonmedia.com> | 2020-12-02 11:51:31 +0000 |
commit | f4f2f7c0b2fb2bb0f4d5819699c8ad923c832876 (patch) | |
tree | 107d8714be7db424582b7b5231bb19be54fbadf5 /searchlib | |
parent | 148a0fa5005eb5cc9e005b813cfeebbbb1073219 (diff) |
compute num_subspaces as num_cells/dense_subspace_size
Diffstat (limited to 'searchlib')
-rw-r--r-- | searchlib/src/vespa/searchlib/tensor/streamed_value_store.cpp | 5 | ||||
-rw-r--r-- | searchlib/src/vespa/searchlib/tensor/streamed_value_store.h | 3 |
2 files changed, 3 insertions, 5 deletions
diff --git a/searchlib/src/vespa/searchlib/tensor/streamed_value_store.cpp b/searchlib/src/vespa/searchlib/tensor/streamed_value_store.cpp index 2e5e5a60b34..c4579880409 100644 --- a/searchlib/src/vespa/searchlib/tensor/streamed_value_store.cpp +++ b/searchlib/src/vespa/searchlib/tensor/streamed_value_store.cpp @@ -135,9 +135,9 @@ StreamedValueStore::get_tensor_data(EntryRef ref) const check_alignment(source.peek(), CellTypeUtils::alignment(_data_from_type.cell_type)); retval.cells_ref = TypedCells(source.peek(), _data_from_type.cell_type, num_cells); source.adjustReadPos(CellTypeUtils::mem_size(_data_from_type.cell_type, num_cells)); - retval.num_subspaces = source.readValue<uint32_t>(); + assert((num_cells % _data_from_type.dense_subspace_size) == 0); + retval.num_subspaces = num_cells / _data_from_type.dense_subspace_size; retval.labels_buffer = vespalib::ConstArrayRef<char>(source.peek(), source.size()); - assert(retval.num_subspaces * _data_from_type.dense_subspace_size == num_cells); retval.valid = true; return retval; } @@ -161,7 +161,6 @@ StreamedValueStore::serialize_labels(const Value::Index &index, vespalib::nbostream &target) const { uint32_t num_subspaces = index.size(); - target << num_subspaces; uint32_t num_mapped_dims = _data_from_type.num_mapped_dimensions; std::vector<vespalib::stringref> labels(num_mapped_dims * num_subspaces); auto view = index.create_view({}); diff --git a/searchlib/src/vespa/searchlib/tensor/streamed_value_store.h b/searchlib/src/vespa/searchlib/tensor/streamed_value_store.h index ad43307fc02..de94dc043d3 100644 --- a/searchlib/src/vespa/searchlib/tensor/streamed_value_store.h +++ b/searchlib/src/vespa/searchlib/tensor/streamed_value_store.h @@ -31,8 +31,7 @@ namespace search::tensor { * [bytes] : [format] : [description] * 4 : n.b.o. uint32_ t : num cells = ND * DS * CS * ND * DS : native float or double : cells - * 4 : n.b.o. uint32_t : number of subspaces = ND - * (depends) : n.b.o. strings : labels + * (depends) : n.b.o. strings : ND * MD label strings * * Here, n.b.o. means network byte order, or more precisely * it's the format vespalib::nbostream uses for the given data type, |