summaryrefslogtreecommitdiffstats
path: root/vespalib/src/tests/alloc
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2021-02-25 16:29:08 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2021-02-25 16:29:08 +0000
commit830902094e2c13e5e2b511266cd41c905898feda (patch)
tree227f2519c97927a3d169a113bbf5070c5ee95ca6 /vespalib/src/tests/alloc
parent0cd172e2126c52774ad60310a6dd1441b4752891 (diff)
Add method the considers elemsize when computing number of elements that will maximize 2^N bytes block
Diffstat (limited to 'vespalib/src/tests/alloc')
-rw-r--r--vespalib/src/tests/alloc/alloc_test.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/vespalib/src/tests/alloc/alloc_test.cpp b/vespalib/src/tests/alloc/alloc_test.cpp
index c52170fc8ec..d37abb15c2f 100644
--- a/vespalib/src/tests/alloc/alloc_test.cpp
+++ b/vespalib/src/tests/alloc/alloc_test.cpp
@@ -47,6 +47,21 @@ TEST("test roundUp2inN") {
EXPECT_EQUAL(16u, roundUp2inN(9));
}
+TEST("test roundUp2inN elems") {
+ EXPECT_EQUAL(0u, roundUp2inN(0, 17));
+ EXPECT_EQUAL(1u, roundUp2inN(1, 17));
+ EXPECT_EQUAL(3u, roundUp2inN(2, 17));
+ EXPECT_EQUAL(3u, roundUp2inN(3, 17));
+ EXPECT_EQUAL(7u, roundUp2inN(4, 17));
+ EXPECT_EQUAL(7u, roundUp2inN(5, 17));
+ EXPECT_EQUAL(7u, roundUp2inN(6, 17));
+ EXPECT_EQUAL(7u, roundUp2inN(7, 17));
+ EXPECT_EQUAL(15u, roundUp2inN(8, 17));
+ EXPECT_EQUAL(15u, roundUp2inN(9, 17));
+ EXPECT_EQUAL(15u, roundUp2inN(15, 17));
+ EXPECT_EQUAL(30u, roundUp2inN(16, 17));
+}
+
TEST("test basics") {
{
Alloc h = Alloc::allocHeap(100);