diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2017-12-21 10:41:16 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2018-01-10 13:18:05 +0100 |
commit | d5f215d88e52c3c7a45ad35411e3d8fc71ea89a5 (patch) | |
tree | c579773059b6565696a17a8554b7c48c66b97d14 /eval/src | |
parent | e3c842c8f7271126cb9e869937da907c4ddfd312 (diff) |
Use cheap and_modulator instead of prime modulator to avoid costly division.
Diffstat (limited to 'eval/src')
-rw-r--r-- | eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp | 3 | ||||
-rw-r--r-- | eval/src/vespa/eval/tensor/sparse/sparse_tensor.h | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp index b69b1cdab05..1f57e297ea1 100644 --- a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp +++ b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp @@ -188,4 +188,5 @@ SparseTensor::reduce(join_fun_t op, } -VESPALIB_HASH_MAP_INSTANTIATE(vespalib::tensor::SparseTensorAddressRef, double); +VESPALIB_HASH_MAP_INSTANTIATE_H_E_M(vespalib::tensor::SparseTensorAddressRef, double, vespalib::hash<vespalib::tensor::SparseTensorAddressRef>, + std::equal_to<vespalib::tensor::SparseTensorAddressRef>, vespalib::hashtable_base::and_modulator); diff --git a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h index 2715e606729..3eeb122f48c 100644 --- a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h +++ b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h @@ -21,7 +21,8 @@ namespace vespalib::tensor { class SparseTensor : public Tensor { public: - using Cells = hash_map<SparseTensorAddressRef, double>; + using Cells = hash_map<SparseTensorAddressRef, double, hash<SparseTensorAddressRef>, + std::equal_to<SparseTensorAddressRef>, hashtable_base::and_modulator>; static constexpr size_t STASH_CHUNK_SIZE = 16384u; |