summaryrefslogtreecommitdiffstats
path: root/eval
diff options
context:
space:
mode:
authorArne Juul <arnej@verizonmedia.com>2020-09-08 13:10:42 +0000
committerArne Juul <arnej@verizonmedia.com>2020-09-09 10:32:39 +0000
commit8e2654ea61067b11381c74ed5cb8689c5f69e225 (patch)
tree8e3d677497ace58d26d0056c5c01f7be35788d90 /eval
parent472e6794ce4c74431b387f9783ee17467ca86a2c (diff)
remove count_memory_used from Tensor
Diffstat (limited to 'eval')
-rw-r--r--eval/src/tests/tensor/direct_dense_tensor_builder/direct_dense_tensor_builder_test.cpp6
-rw-r--r--eval/src/tests/tensor/direct_sparse_tensor_builder/direct_sparse_tensor_builder_test.cpp7
-rw-r--r--eval/src/vespa/eval/tensor/dense/dense_tensor.h3
-rw-r--r--eval/src/vespa/eval/tensor/dense/dense_tensor_view.h3
-rw-r--r--eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp10
-rw-r--r--eval/src/vespa/eval/tensor/sparse/sparse_tensor.h1
-rw-r--r--eval/src/vespa/eval/tensor/tensor.h1
-rw-r--r--eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp11
-rw-r--r--eval/src/vespa/eval/tensor/wrapped_simple_tensor.h1
9 files changed, 9 insertions, 34 deletions
diff --git a/eval/src/tests/tensor/direct_dense_tensor_builder/direct_dense_tensor_builder_test.cpp b/eval/src/tests/tensor/direct_dense_tensor_builder/direct_dense_tensor_builder_test.cpp
index 08333fa30f3..75e9c7868ce 100644
--- a/eval/src/tests/tensor/direct_dense_tensor_builder/direct_dense_tensor_builder_test.cpp
+++ b/eval/src/tests/tensor/direct_dense_tensor_builder/direct_dense_tensor_builder_test.cpp
@@ -179,9 +179,9 @@ TEST("require that memory used count is reasonable") {
const DenseTensorView &full_view = dynamic_cast<const DenseTensorView &>(*full);
DenseTensorView ref_view(full_view.fast_type(), full_view.cellsRef());
- size_t full_sz = full->count_memory_used();
- size_t view_sz = full_view.count_memory_used();
- size_t ref_sz = ref_view.count_memory_used();
+ size_t full_sz = full->get_memory_usage().usedBytes();
+ size_t view_sz = full_view.get_memory_usage().usedBytes();
+ size_t ref_sz = ref_view.get_memory_usage().usedBytes();
EXPECT_EQUAL(ref_sz, sizeof(DenseTensorView));
EXPECT_LESS(ref_sz, full_sz);
diff --git a/eval/src/tests/tensor/direct_sparse_tensor_builder/direct_sparse_tensor_builder_test.cpp b/eval/src/tests/tensor/direct_sparse_tensor_builder/direct_sparse_tensor_builder_test.cpp
index f901b7775fd..651451d81f1 100644
--- a/eval/src/tests/tensor/direct_sparse_tensor_builder/direct_sparse_tensor_builder_test.cpp
+++ b/eval/src/tests/tensor/direct_sparse_tensor_builder/direct_sparse_tensor_builder_test.cpp
@@ -100,9 +100,14 @@ TEST("Test essential object sizes") {
EXPECT_EQUAL(24u, sizeof(std::pair<SparseTensorAddressRef, double>));
EXPECT_EQUAL(32u, sizeof(vespalib::hash_node<std::pair<SparseTensorAddressRef, double>>));
Tensor::UP tensor = buildTensor();
- size_t used = tensor->count_memory_used();
+ size_t used = tensor->get_memory_usage().usedBytes();
EXPECT_GREATER(used, sizeof(SparseTensor));
EXPECT_LESS(used, 10000u);
+ size_t allocated = tensor->get_memory_usage().allocatedBytes();
+ EXPECT_GREATER(allocated, used);
+ EXPECT_LESS(allocated, 50000u);
+ fprintf(stderr, "tensor using %zu bytes of %zu allocated\n",
+ used, allocated);
}
TEST_MAIN() { TEST_RUN_ALL(); }
diff --git a/eval/src/vespa/eval/tensor/dense/dense_tensor.h b/eval/src/vespa/eval/tensor/dense/dense_tensor.h
index 54025e47d2e..f4b2b0a584f 100644
--- a/eval/src/vespa/eval/tensor/dense/dense_tensor.h
+++ b/eval/src/vespa/eval/tensor/dense/dense_tensor.h
@@ -22,9 +22,6 @@ public:
template <typename RCT>
bool operator==(const DenseTensor<RCT> &rhs) const;
- size_t count_memory_used() const override {
- return sizeof(DenseTensor) + (sizeof(CT) * _cells.size());
- }
MemoryUsage get_memory_usage() const override {
size_t alloc = sizeof(DenseTensor) + (sizeof(CT) * _cells.capacity());
size_t used = sizeof(DenseTensor) + (sizeof(CT) * _cells.size());
diff --git a/eval/src/vespa/eval/tensor/dense/dense_tensor_view.h b/eval/src/vespa/eval/tensor/dense/dense_tensor_view.h
index 4c855cff25b..cf3e2864a30 100644
--- a/eval/src/vespa/eval/tensor/dense/dense_tensor_view.h
+++ b/eval/src/vespa/eval/tensor/dense/dense_tensor_view.h
@@ -44,9 +44,6 @@ public:
Tensor::UP clone() const override;
eval::TensorSpec toSpec() const override;
void accept(TensorVisitor &visitor) const override;
- size_t count_memory_used() const override {
- return sizeof(DenseTensorView);
- }
MemoryUsage get_memory_usage() const override {
size_t sz = sizeof(DenseTensorView);
return MemoryUsage(sz, sz, 0, 0);
diff --git a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp
index 62780a9cfcc..87ab80c2a8e 100644
--- a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp
+++ b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp
@@ -248,16 +248,6 @@ SparseTensor::remove(const CellValues &cellAddresses) const
return remover.build();
}
-size_t
-SparseTensor::count_memory_used() const
-{
- size_t result = sizeof(SparseTensor) + _cells.getMemoryConsumption();
- for (const auto &cell : _cells) {
- result += cell.first.size();
- }
- return result;
-}
-
MemoryUsage
SparseTensor::get_memory_usage() const
{
diff --git a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h
index e14ce0daea0..34a6622bdd6 100644
--- a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h
+++ b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h
@@ -53,7 +53,6 @@ public:
Tensor::UP clone() const override;
eval::TensorSpec toSpec() const override;
void accept(TensorVisitor &visitor) const override;
- size_t count_memory_used() const override;
MemoryUsage get_memory_usage() const override;
};
diff --git a/eval/src/vespa/eval/tensor/tensor.h b/eval/src/vespa/eval/tensor/tensor.h
index b75e8b14197..0deb36b24a0 100644
--- a/eval/src/vespa/eval/tensor/tensor.h
+++ b/eval/src/vespa/eval/tensor/tensor.h
@@ -60,7 +60,6 @@ public:
virtual Tensor::UP clone() const = 0; // want to remove, but needed by document
virtual eval::TensorSpec toSpec() const = 0;
virtual void accept(TensorVisitor &visitor) const = 0;
- virtual size_t count_memory_used() const = 0;
virtual MemoryUsage get_memory_usage() const = 0;
using TypeList = std::initializer_list<std::reference_wrapper<const eval::ValueType>>;
diff --git a/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp b/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp
index 914a3422161..fa01869c754 100644
--- a/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp
+++ b/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp
@@ -54,17 +54,6 @@ WrappedSimpleTensor::accept(TensorVisitor &visitor) const
}
}
-size_t
-WrappedSimpleTensor::count_memory_used() const
-{
- size_t result = sizeof(WrappedSimpleTensor);
- if (_space) {
- result += _space->count_memory_used();
- }
- return result;
-}
-
-
MemoryUsage
WrappedSimpleTensor::get_memory_usage() const
{
diff --git a/eval/src/vespa/eval/tensor/wrapped_simple_tensor.h b/eval/src/vespa/eval/tensor/wrapped_simple_tensor.h
index 1544b1615db..cf9103a4895 100644
--- a/eval/src/vespa/eval/tensor/wrapped_simple_tensor.h
+++ b/eval/src/vespa/eval/tensor/wrapped_simple_tensor.h
@@ -33,7 +33,6 @@ public:
eval::TensorSpec toSpec() const override;
double as_double() const override;
void accept(TensorVisitor &visitor) const override;
- size_t count_memory_used() const override;
MemoryUsage get_memory_usage() const override;
Tensor::UP clone() const override;
// functions below should not be used for this implementation