summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2017-12-18 00:12:30 +0100
committerHenning Baldersheim <balder@yahoo-inc.com>2017-12-18 00:12:30 +0100
commit975d2b0f5f4e680f2a35177ca581abbba3c2b227 (patch)
treeb4a142daa107fa21b3bf17419224df914a0128ca
parentee36f89d1a34823f16c4f3988916f9285aec0d88 (diff)
Only use 32 bits for hash and size.
-rw-r--r--eval/src/tests/tensor/sparse_tensor_builder/sparse_tensor_builder_test.cpp6
-rw-r--r--eval/src/vespa/eval/tensor/sparse/sparse_tensor_address_ref.h12
2 files changed, 9 insertions, 9 deletions
diff --git a/eval/src/tests/tensor/sparse_tensor_builder/sparse_tensor_builder_test.cpp b/eval/src/tests/tensor/sparse_tensor_builder/sparse_tensor_builder_test.cpp
index df90ffb1853..b45a06579cb 100644
--- a/eval/src/tests/tensor/sparse_tensor_builder/sparse_tensor_builder_test.cpp
+++ b/eval/src/tests/tensor/sparse_tensor_builder/sparse_tensor_builder_test.cpp
@@ -95,9 +95,9 @@ TEST("require that dimensions are extracted")
}
TEST("Test essential object sizes") {
- EXPECT_EQUAL(24u, sizeof(SparseTensorAddressRef));
- EXPECT_EQUAL(32u, sizeof(std::pair<SparseTensorAddressRef, double>));
- EXPECT_EQUAL(40u, sizeof(vespalib::hash_node<std::pair<SparseTensorAddressRef, double>>));
+ EXPECT_EQUAL(16u, sizeof(SparseTensorAddressRef));
+ EXPECT_EQUAL(24u, sizeof(std::pair<SparseTensorAddressRef, double>));
+ EXPECT_EQUAL(32u, sizeof(vespalib::hash_node<std::pair<SparseTensorAddressRef, double>>));
}
TEST_MAIN() { TEST_RUN_ALL(); }
diff --git a/eval/src/vespa/eval/tensor/sparse/sparse_tensor_address_ref.h b/eval/src/vespa/eval/tensor/sparse/sparse_tensor_address_ref.h
index f294b47fb07..ad14da4800b 100644
--- a/eval/src/vespa/eval/tensor/sparse/sparse_tensor_address_ref.h
+++ b/eval/src/vespa/eval/tensor/sparse/sparse_tensor_address_ref.h
@@ -18,15 +18,15 @@ namespace tensor {
class SparseTensorAddressRef
{
const void *_start;
- size_t _size;
- size_t _hash;
+ uint32_t _size;
+ uint32_t _hash;
public:
SparseTensorAddressRef()
: _start(nullptr), _size(0u), _hash(0u)
{
}
- SparseTensorAddressRef(const void *start_in, size_t size_in)
+ SparseTensorAddressRef(const void *start_in, uint32_t size_in)
: _start(start_in), _size(size_in),
_hash(calcHash())
{
@@ -42,9 +42,9 @@ public:
_start = res;
}
- size_t hash() const { return _hash; }
+ uint32_t hash() const { return _hash; }
- size_t calcHash() const { return hashValue(_start, _size); }
+ uint32_t calcHash() const { return hashValue(_start, _size); }
bool operator<(const SparseTensorAddressRef &rhs) const {
size_t minSize = std::min(_size, rhs._size);
@@ -64,7 +64,7 @@ public:
}
const void *start() const { return _start; }
- size_t size() const { return _size; }
+ uint32_t size() const { return _size; }
};
} // namespace vespalib::tensor