test: fix ut random float (#182)
This commit is contained in:
parent
120d9e3e68
commit
596d5795e9
|
|
@ -514,7 +514,7 @@ TEST(OptKmeansCluster, IN4Correctness) {
|
|||
EXPECT_EQ(centroids1.size(), centroids2.size());
|
||||
for (size_t i = 0; i < centroids1.size(); ++i) {
|
||||
EXPECT_EQ(centroids1[i].follows(), centroids2[i].follows());
|
||||
EXPECT_EQ(centroids1[i].score(), centroids2[i].score());
|
||||
EXPECT_DOUBLE_EQ(centroids1[i].score(), centroids2[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1346,7 +1346,7 @@ TEST(FlatProvider, Provider_FP32) {
|
|||
const float *features1 = (const float *)provider1->get_vector(it1->key());
|
||||
const float *features2 = (const float *)provider2->get_vector(it2->key());
|
||||
for (size_t idx = 0; idx < dim; idx++) {
|
||||
ASSERT_EQ(*features1, *features2);
|
||||
ASSERT_FLOAT_EQ(*features1, *features2);
|
||||
features1++;
|
||||
features2++;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@ TEST_F(FlatStreamerTest, TestLinearSearch) {
|
|||
ASSERT_EQ(0, provider->get_vector(result1[0].key(), block));
|
||||
const float *data = (float *)block.data();
|
||||
for (size_t j = 0; j < dim; ++j) {
|
||||
ASSERT_EQ(data[j], i);
|
||||
ASSERT_FLOAT_EQ(data[j], i);
|
||||
}
|
||||
ASSERT_EQ(i, result1[0].key());
|
||||
|
||||
|
|
@ -150,7 +150,7 @@ TEST_F(FlatStreamerTest, TestLinearSearch) {
|
|||
ASSERT_EQ(0, provider->get_vector(result1[0].key(), block));
|
||||
const float *data = (float *)block.data();
|
||||
for (size_t j = 0; j < dim; ++j) {
|
||||
ASSERT_EQ(data[j], i);
|
||||
ASSERT_FLOAT_EQ(data[j], i);
|
||||
}
|
||||
ASSERT_EQ(i, result1[0].key());
|
||||
|
||||
|
|
@ -226,7 +226,7 @@ TEST_F(FlatStreamerTest, TestLinearSearchMMap) {
|
|||
ASSERT_EQ(0, provider->get_vector(result1[0].key(), block));
|
||||
const float *data = (float *)block.data();
|
||||
for (size_t j = 0; j < dim; ++j) {
|
||||
ASSERT_EQ(data[j], i);
|
||||
ASSERT_FLOAT_EQ(data[j], i);
|
||||
}
|
||||
ASSERT_EQ(i, result1[0].key());
|
||||
|
||||
|
|
@ -320,7 +320,7 @@ TEST_F(FlatStreamerTest, TestBufferStorage) {
|
|||
EXPECT_EQ(topk, result1.size());
|
||||
for (size_t j = 0; j < dim; ++j) {
|
||||
const float *data = (float *)provider->get_vector(result1[0].key());
|
||||
EXPECT_EQ(data[j], i);
|
||||
EXPECT_FLOAT_EQ(data[j], i);
|
||||
}
|
||||
EXPECT_EQ(i, result1[0].key());
|
||||
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ TEST_F(FlatStreamerTest, TestAddVector) {
|
|||
streamer->add_impl(i, vec.data(), qmeta, ctx);
|
||||
const float *data = (float *)provider->get_vector(i);
|
||||
for (size_t j = 0; j < dim; ++j) {
|
||||
ASSERT_EQ(data[j], i);
|
||||
ASSERT_FLOAT_EQ(data[j], i);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -141,7 +141,7 @@ TEST_F(FlatStreamerTest, TestLinearSearch) {
|
|||
ASSERT_EQ(topk, result1.size());
|
||||
for (size_t j = 0; j < dim; ++j) {
|
||||
const float *data = (float *)provider->get_vector(result1[0].key());
|
||||
ASSERT_EQ(data[j], i);
|
||||
ASSERT_FLOAT_EQ(data[j], i);
|
||||
}
|
||||
ASSERT_EQ(i, result1[0].key());
|
||||
|
||||
|
|
@ -376,7 +376,7 @@ TEST_F(FlatStreamerTest, TestOpenClose) {
|
|||
while (iter->is_valid()) {
|
||||
float *data = (float *)provider->get_vector(cur);
|
||||
for (size_t d = 0; d < dim; ++d) {
|
||||
ASSERT_EQ((float)cur, data[d]);
|
||||
ASSERT_FLOAT_EQ((float)cur, data[d]);
|
||||
}
|
||||
iter->next();
|
||||
cur += 2;
|
||||
|
|
@ -463,7 +463,7 @@ TEST_F(FlatStreamerTest, TestForceFlush) {
|
|||
while (iter->is_valid()) {
|
||||
float *data = (float *)provider->get_vector(cur);
|
||||
for (size_t d = 0; d < dim; ++d) {
|
||||
ASSERT_EQ((float)cur, data[d]);
|
||||
ASSERT_FLOAT_EQ((float)cur, data[d]);
|
||||
}
|
||||
iter->next();
|
||||
cur++;
|
||||
|
|
@ -501,7 +501,7 @@ TEST_F(FlatStreamerTest, TestForceFlush) {
|
|||
const float *data = (const float *)provider->get_vector(i);
|
||||
ASSERT_NE(data, nullptr);
|
||||
for (size_t j = 0; j < dim; ++j) {
|
||||
ASSERT_EQ(i, data[j]);
|
||||
ASSERT_FLOAT_EQ(i, data[j]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -556,7 +556,7 @@ TEST_F(FlatStreamerTest, TestMultiThread) {
|
|||
while (iter->is_valid()) {
|
||||
float *data = (float *)iter->data();
|
||||
for (size_t d = 0; d < dim; ++d) {
|
||||
ASSERT_EQ((float)iter->key(), data[d]);
|
||||
ASSERT_FLOAT_EQ((float)iter->key(), data[d]);
|
||||
}
|
||||
total++;
|
||||
min = std::min(min, iter->key());
|
||||
|
|
@ -716,7 +716,7 @@ TEST_F(FlatStreamerTest, TestConcurrentAddAndSearch) {
|
|||
while (iter->is_valid()) {
|
||||
float *data = (float *)iter->data();
|
||||
for (size_t d = 0; d < dim; ++d) {
|
||||
ASSERT_EQ((float)iter->key(), data[d]);
|
||||
ASSERT_FLOAT_EQ((float)iter->key(), data[d]);
|
||||
}
|
||||
total++;
|
||||
min = std::min(min, iter->key());
|
||||
|
|
|
|||
|
|
@ -387,7 +387,7 @@ TEST_F(FlatSparseStreamerTest, TestCreateIterator) {
|
|||
float *sparse_data = (float *)iter->sparse_data();
|
||||
ASSERT_EQ(cur, iter->key());
|
||||
for (size_t d = 0; d < sparse_dim_count; ++d) {
|
||||
ASSERT_EQ((float)cur, sparse_data[d]);
|
||||
ASSERT_FLOAT_EQ((float)cur, sparse_data[d]);
|
||||
}
|
||||
iter->next();
|
||||
cur++;
|
||||
|
|
@ -487,7 +487,7 @@ TEST_F(FlatSparseStreamerTest, TestOpenAndClose) {
|
|||
float *sparse_data = (float *)iter->sparse_data();
|
||||
ASSERT_EQ(cur, iter->key());
|
||||
for (size_t d = 0; d < sparse_dim_count; ++d) {
|
||||
ASSERT_EQ((float)cur, sparse_data[d]);
|
||||
ASSERT_FLOAT_EQ((float)cur, sparse_data[d]);
|
||||
}
|
||||
iter->next();
|
||||
cur += 2;
|
||||
|
|
@ -589,7 +589,7 @@ TEST_F(FlatSparseStreamerTest, TestForceFlush) {
|
|||
|
||||
const float *data = reinterpret_cast<const float *>(iter->sparse_data());
|
||||
for (size_t j = 0; j < sparse_dim_count; ++j) {
|
||||
ASSERT_EQ((float)cur, data[j]);
|
||||
ASSERT_FLOAT_EQ((float)cur, data[j]);
|
||||
}
|
||||
|
||||
iter->next();
|
||||
|
|
@ -710,7 +710,7 @@ TEST_F(FlatSparseStreamerTest, TestMultiThread) {
|
|||
|
||||
const float *data = reinterpret_cast<const float *>(iter->sparse_data());
|
||||
for (size_t j = 0; j < sparse_dim_count; ++j) {
|
||||
ASSERT_EQ((float)iter->key(), data[j]);
|
||||
ASSERT_FLOAT_EQ((float)iter->key(), data[j]);
|
||||
}
|
||||
total++;
|
||||
min = std::min(min, iter->key());
|
||||
|
|
@ -915,7 +915,7 @@ TEST_F(FlatSparseStreamerTest, TestConcurrentAddAndSearch) {
|
|||
|
||||
const float *data = reinterpret_cast<const float *>(iter->sparse_data());
|
||||
for (size_t j = 0; j < sparse_dim_count; ++j) {
|
||||
ASSERT_EQ((float)iter->key(), data[j]);
|
||||
ASSERT_FLOAT_EQ((float)iter->key(), data[j]);
|
||||
}
|
||||
total++;
|
||||
min = std::min(min, iter->key());
|
||||
|
|
|
|||
|
|
@ -229,7 +229,7 @@ TEST_F(HnswStreamerTest, TestHnswSearchMMap) {
|
|||
ASSERT_EQ(0, provider->get_vector(result1[0].key(), block));
|
||||
const float *data = (float *)block.data();
|
||||
for (size_t j = 0; j < dim; ++j) {
|
||||
ASSERT_EQ(data[j], i);
|
||||
ASSERT_FLOAT_EQ(data[j], i);
|
||||
}
|
||||
ASSERT_EQ(i, result1[0].key());
|
||||
|
||||
|
|
|
|||
|
|
@ -576,7 +576,7 @@ TEST_F(HnswStreamerTest, TestOpenClose) {
|
|||
float *data = (float *)iter->data();
|
||||
ASSERT_EQ(cur, iter->key());
|
||||
for (size_t d = 0; d < dim; ++d) {
|
||||
ASSERT_EQ((float)cur, data[d]);
|
||||
ASSERT_FLOAT_EQ((float)cur, data[d]);
|
||||
}
|
||||
iter->next();
|
||||
cur += 2;
|
||||
|
|
@ -657,7 +657,7 @@ TEST_F(HnswStreamerTest, TestCreateIterator) {
|
|||
float *data = (float *)iter->data();
|
||||
ASSERT_EQ(cur, iter->key());
|
||||
for (size_t d = 0; d < dim; ++d) {
|
||||
ASSERT_EQ((float)cur, data[d]);
|
||||
ASSERT_FLOAT_EQ((float)cur, data[d]);
|
||||
}
|
||||
iter->next();
|
||||
cur++;
|
||||
|
|
@ -689,7 +689,7 @@ TEST_F(HnswStreamerTest, TestCreateIterator) {
|
|||
const float *data = (const float *)provider->get_vector(i);
|
||||
ASSERT_NE(data, nullptr);
|
||||
for (size_t j = 0; j < dim; ++j) {
|
||||
ASSERT_EQ(i, data[j]);
|
||||
ASSERT_FLOAT_EQ(i, data[j]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -730,7 +730,7 @@ TEST_F(HnswStreamerTest, TestForceFlush) {
|
|||
float *data = (float *)iter->data();
|
||||
ASSERT_EQ(cur, iter->key());
|
||||
for (size_t d = 0; d < dim; ++d) {
|
||||
ASSERT_EQ((float)cur, data[d]);
|
||||
ASSERT_FLOAT_EQ((float)cur, data[d]);
|
||||
}
|
||||
iter->next();
|
||||
cur++;
|
||||
|
|
@ -768,7 +768,7 @@ TEST_F(HnswStreamerTest, TestForceFlush) {
|
|||
const float *data = (const float *)provider->get_vector(i);
|
||||
ASSERT_NE(data, nullptr);
|
||||
for (size_t j = 0; j < dim; ++j) {
|
||||
ASSERT_EQ(i, data[j]);
|
||||
ASSERT_FLOAT_EQ(i, data[j]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -830,7 +830,7 @@ TEST_F(HnswStreamerTest, TestKnnMultiThread) {
|
|||
while (iter->is_valid()) {
|
||||
float *data = (float *)iter->data();
|
||||
for (size_t d = 0; d < dim; ++d) {
|
||||
ASSERT_EQ((float)iter->key(), data[d]);
|
||||
ASSERT_FLOAT_EQ((float)iter->key(), data[d]);
|
||||
}
|
||||
total++;
|
||||
min = std::min(min, iter->key());
|
||||
|
|
@ -1008,7 +1008,7 @@ TEST_F(HnswStreamerTest, TestKnnConcurrentAddAndSearch) {
|
|||
while (iter->is_valid()) {
|
||||
float *data = (float *)iter->data();
|
||||
for (size_t d = 0; d < dim; ++d) {
|
||||
ASSERT_EQ((float)iter->key(), data[d]);
|
||||
ASSERT_FLOAT_EQ((float)iter->key(), data[d]);
|
||||
}
|
||||
total++;
|
||||
min = std::min(min, iter->key());
|
||||
|
|
@ -1584,7 +1584,7 @@ TEST_F(HnswStreamerTest, TestCheckDuplicateAndGetVector) {
|
|||
const float *data = (const float *)provider->get_vector(i);
|
||||
ASSERT_NE(data, nullptr);
|
||||
for (size_t j = 0; j < dim; ++j) {
|
||||
ASSERT_EQ(i, data[j]);
|
||||
ASSERT_FLOAT_EQ(i, data[j]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2275,7 +2275,7 @@ TEST_F(HnswStreamerTest, TestFetchVector) {
|
|||
ASSERT_NE(vector, nullptr);
|
||||
|
||||
float vector_value = *(float *)(vector);
|
||||
ASSERT_EQ(vector_value, i);
|
||||
ASSERT_FLOAT_EQ(vector_value, i);
|
||||
}
|
||||
|
||||
auto linearCtx = streamer->create_context();
|
||||
|
|
@ -2310,7 +2310,7 @@ TEST_F(HnswStreamerTest, TestFetchVector) {
|
|||
|
||||
ASSERT_NE(knnResult[0].vector(), nullptr);
|
||||
float vector_value = *((float *)(knnResult[0].vector()));
|
||||
ASSERT_EQ(vector_value, i);
|
||||
ASSERT_FLOAT_EQ(vector_value, i);
|
||||
}
|
||||
std::cout << "knnTotalTime: " << knnTotalTime << std::endl;
|
||||
std::cout << "linearTotalTime: " << linearTotalTime << std::endl;
|
||||
|
|
|
|||
|
|
@ -494,7 +494,7 @@ TEST_F(HnswSparseStreamerTest, TestOpenClose) {
|
|||
float *sparse_data = (float *)iter->sparse_data();
|
||||
ASSERT_EQ(cur, iter->key());
|
||||
for (size_t d = 0; d < sparse_dim_count; ++d) {
|
||||
ASSERT_EQ((float)cur, sparse_data[d]);
|
||||
ASSERT_FLOAT_EQ((float)cur, sparse_data[d]);
|
||||
}
|
||||
iter->next();
|
||||
cur += 2;
|
||||
|
|
@ -587,7 +587,7 @@ TEST_F(HnswSparseStreamerTest, TestCreateIterator) {
|
|||
float *sparse_data = (float *)iter->sparse_data();
|
||||
ASSERT_EQ(cur, iter->key());
|
||||
for (size_t d = 0; d < sparse_dim_count; ++d) {
|
||||
ASSERT_EQ((float)cur, sparse_data[d]);
|
||||
ASSERT_FLOAT_EQ((float)cur, sparse_data[d]);
|
||||
}
|
||||
iter->next();
|
||||
cur++;
|
||||
|
|
@ -678,7 +678,7 @@ TEST_F(HnswSparseStreamerTest, TestForceFlush) {
|
|||
|
||||
const float *data = reinterpret_cast<const float *>(iter->sparse_data());
|
||||
for (size_t j = 0; j < sparse_dim_count; ++j) {
|
||||
ASSERT_EQ((float)cur, data[j]);
|
||||
ASSERT_FLOAT_EQ((float)cur, data[j]);
|
||||
}
|
||||
|
||||
iter->next();
|
||||
|
|
@ -1017,7 +1017,7 @@ TEST_F(HnswSparseStreamerTest, TestKnnConcurrentAddAndSearch) {
|
|||
|
||||
const float *data = reinterpret_cast<const float *>(iter->sparse_data());
|
||||
for (size_t j = 0; j < sparse_dim_count; ++j) {
|
||||
ASSERT_EQ((float)iter->key(), data[j]);
|
||||
ASSERT_FLOAT_EQ((float)iter->key(), data[j]);
|
||||
}
|
||||
total++;
|
||||
min = std::min(min, iter->key());
|
||||
|
|
|
|||
|
|
@ -282,7 +282,7 @@ TEST_F(IVFSearcherTest, TestSimple) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -297,7 +297,7 @@ TEST_F(IVFSearcherTest, TestSimple) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)32 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -312,7 +312,7 @@ TEST_F(IVFSearcherTest, TestSimple) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -480,7 +480,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
ASSERT_EQ((uint64_t)(total - 1) - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -495,7 +495,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -510,7 +510,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)999 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -525,7 +525,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -604,7 +604,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithFilter) {
|
|||
EXPECT_EQ((size_t)1, result.size());
|
||||
for (size_t i = 0; i < 1; ++i) {
|
||||
EXPECT_EQ((uint64_t)0, result[i].key());
|
||||
EXPECT_EQ((float)999 * 999 * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)999 * 999 * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -619,7 +619,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithFilter) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)1, result.size());
|
||||
EXPECT_EQ((uint64_t)0, result[0].key());
|
||||
EXPECT_EQ((float)q * q * dimension_, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)q * q * dimension_, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -634,7 +634,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithFilter) {
|
|||
EXPECT_EQ((size_t)1, result.size());
|
||||
for (size_t i = 0; i < 1; ++i) {
|
||||
EXPECT_EQ((uint64_t)0, result[i].key());
|
||||
EXPECT_EQ((float)999 * 999 * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)999 * 999 * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -649,7 +649,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithFilter) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)1, result.size());
|
||||
EXPECT_EQ((uint64_t)0, result[0].key());
|
||||
EXPECT_EQ((float)q * q * dimension_, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)q * q * dimension_, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -725,7 +725,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)999 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -740,7 +740,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -755,7 +755,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)999 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -770,7 +770,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -850,7 +850,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWithFilter) {
|
|||
EXPECT_EQ((size_t)1, result.size());
|
||||
for (size_t i = 0; i < 1; ++i) {
|
||||
EXPECT_EQ((uint64_t)0, result[i].key());
|
||||
EXPECT_EQ((float)999 * 999 * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)999 * 999 * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -865,7 +865,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWithFilter) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)1, result.size());
|
||||
EXPECT_EQ((uint64_t)0, result[0].key());
|
||||
EXPECT_EQ((float)q * q * dimension_, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)q * q * dimension_, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -880,7 +880,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWithFilter) {
|
|||
EXPECT_EQ((size_t)1, result.size());
|
||||
for (size_t i = 0; i < 1; ++i) {
|
||||
EXPECT_EQ((uint64_t)0, result[i].key());
|
||||
EXPECT_EQ((float)999 * 999 * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)999 * 999 * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -895,7 +895,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWithFilter) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)1, result.size());
|
||||
EXPECT_EQ((uint64_t)0, result[0].key());
|
||||
EXPECT_EQ((float)q * q * dimension_, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)q * q * dimension_, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -977,7 +977,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWith1LevelAndBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)999 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -992,7 +992,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWith1LevelAndBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1007,7 +1007,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWith1LevelAndBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)999 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1022,7 +1022,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFloatWith1LevelAndBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1104,7 +1104,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWith1LevelAndBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)999 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1119,7 +1119,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWith1LevelAndBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1134,7 +1134,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWith1LevelAndBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)999 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1149,7 +1149,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWith1LevelAndBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1228,7 +1228,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorInt8WithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)127 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1243,7 +1243,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorInt8WithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1258,7 +1258,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorInt8WithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)127 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1273,7 +1273,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorInt8WithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1352,7 +1352,7 @@ TEST_F(IVFSearcherTest, TestRowMajorInt8WithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)127 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1367,7 +1367,7 @@ TEST_F(IVFSearcherTest, TestRowMajorInt8WithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1382,7 +1382,7 @@ TEST_F(IVFSearcherTest, TestRowMajorInt8WithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)127 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1397,7 +1397,7 @@ TEST_F(IVFSearcherTest, TestRowMajorInt8WithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1478,7 +1478,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorBinaryWithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)256 - i, result[i].key());
|
||||
EXPECT_EQ((float)i, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1493,7 +1493,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorBinaryWithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1508,7 +1508,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorBinaryWithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)256 - i, result[i].key());
|
||||
EXPECT_EQ((float)i, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1523,7 +1523,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorBinaryWithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1604,7 +1604,7 @@ TEST_F(IVFSearcherTest, TestRowMajorBinaryWithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)256 - i, result[i].key());
|
||||
EXPECT_EQ((float)i, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1619,7 +1619,7 @@ TEST_F(IVFSearcherTest, TestRowMajorBinaryWithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1634,7 +1634,7 @@ TEST_F(IVFSearcherTest, TestRowMajorBinaryWithBuildMemory) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)256 - i, result[i].key());
|
||||
EXPECT_EQ((float)i, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1649,7 +1649,7 @@ TEST_F(IVFSearcherTest, TestRowMajorBinaryWithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1861,7 +1861,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFp16WithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1893,7 +1893,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFp16WithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2000,7 +2000,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFp16WithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2032,7 +2032,7 @@ TEST_F(IVFSearcherTest, TestRowMajorFp16WithBuildMemory) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2110,7 +2110,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithHnswGraphType) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)(total - 1) - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2125,7 +2125,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithHnswGraphType) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2140,7 +2140,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithHnswGraphType) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)999 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2155,7 +2155,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithHnswGraphType) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2234,7 +2234,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithSsgGraphType) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)(total - 1) - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2249,7 +2249,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithSsgGraphType) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2264,7 +2264,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithSsgGraphType) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)999 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2279,7 +2279,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithSsgGraphType) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2356,7 +2356,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithInt8Converter) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)(total - 1) - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2371,7 +2371,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithInt8Converter) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2386,7 +2386,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithInt8Converter) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((uint64_t)999 - i, result[i].key());
|
||||
EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2401,7 +2401,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithInt8Converter) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2497,7 +2497,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithFloat16Quantizer) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2529,7 +2529,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithFloat16Quantizer) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2626,7 +2626,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithConverterAndQuantizer) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
ASSERT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2658,7 +2658,7 @@ TEST_F(IVFSearcherTest, TestColumnMajorFloatWithConverterAndQuantizer) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
EXPECT_EQ((uint64_t)q, result[0].key());
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2755,7 +2755,7 @@ TEST_F(IVFSearcherTest, TestQuantizedPerCentroid) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
ASSERT_NEAR((uint64_t)(total - 1) - q, result[0].key(), 100);
|
||||
// EXPECT_EQ((float)0, result[0].score());
|
||||
// EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2770,7 +2770,7 @@ TEST_F(IVFSearcherTest, TestQuantizedPerCentroid) {
|
|||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_NEAR((uint64_t)total - i - 1, result[i].key(), 100);
|
||||
// EXPECT_EQ((float)i * i * dimension_, result[i].score());
|
||||
// EXPECT_FLOAT_EQ((float)i * i * dimension_, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2785,7 +2785,7 @@ TEST_F(IVFSearcherTest, TestQuantizedPerCentroid) {
|
|||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
ASSERT_NEAR((uint64_t)(total - 1) - q, result[0].key(), 100);
|
||||
// EXPECT_EQ((float)0, result[0].score());
|
||||
// EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -3474,7 +3474,7 @@ TEST_F(IVFSearcherTest, TestSameValue) {
|
|||
|
||||
for (size_t q = 0; q < qnum; ++q) {
|
||||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -3488,7 +3488,7 @@ TEST_F(IVFSearcherTest, TestSameValue) {
|
|||
const IndexDocumentList &result = context->result(0);
|
||||
EXPECT_EQ((size_t)topk, result.size());
|
||||
for (size_t i = 0; i < topk; ++i) {
|
||||
EXPECT_EQ((float)0, result[i].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[i].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -3501,7 +3501,7 @@ TEST_F(IVFSearcherTest, TestSameValue) {
|
|||
|
||||
for (size_t q = 0; q < qnum; ++q) {
|
||||
const IndexDocumentList &result = context->result(q);
|
||||
EXPECT_EQ((float)0, result[0].score());
|
||||
EXPECT_FLOAT_EQ((float)0, result[0].score());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -192,7 +192,7 @@ TEST(QuantizedIntegerMetric, TestInt8SquaredEuclidean) {
|
|||
float v2;
|
||||
compute(mi, qi, holder2->dimension(), &v2);
|
||||
// printf("%f %f\n", v1, v2);
|
||||
ASSERT_NEAR(v1, v2, 1e-2 * (DIMENSION + 1));
|
||||
ASSERT_NEAR(v1, v2, 0.1 * (DIMENSION + 1));
|
||||
|
||||
std::string out2;
|
||||
ASSERT_EQ(0, reformer->convert(iter->data(), qmeta, &out2, &qmeta2));
|
||||
|
|
@ -394,7 +394,7 @@ TEST(QuantizedIntegerMetric, TestInt4SquaredEuclidean) {
|
|||
ailego::Distance::SquaredEuclidean(mf, vec.data(), holder->dimension());
|
||||
float v2;
|
||||
compute(mi, qi, holder2->dimension(), &v2);
|
||||
ASSERT_NEAR(v1, v2, 0.17 * DIMENSION);
|
||||
ASSERT_NEAR(v1, v2, 0.2 * DIMENSION);
|
||||
|
||||
std::string out2;
|
||||
ASSERT_EQ(0, reformer->convert(iter->data(), qmeta, &out2, &qmeta2));
|
||||
|
|
@ -516,7 +516,7 @@ void TestDistanceMatrixInt4(const std::string &metric_name) {
|
|||
matrix_compute(&matrix2[0], &query2[0], meta2.dimension(), &result2[0]);
|
||||
|
||||
for (size_t i = 0; i < batch_size * query_size; ++i) {
|
||||
EXPECT_NEAR(result1[i], result2[i], 5e-4);
|
||||
EXPECT_NEAR(result1[i], result2[i], 1e-2 * dimension);
|
||||
EXPECT_TRUE(IsAlmostEqual(result1[i], result2[i], 1e4));
|
||||
}
|
||||
}
|
||||
|
|
@ -597,7 +597,7 @@ TEST(QuantizedIntegerMetric, TestInt8InnerProduct) {
|
|||
float v2;
|
||||
compute(mi, qi, holder2->dimension(), &v2);
|
||||
// printf("%f %f\n", v1, v2);
|
||||
ASSERT_NEAR(v1, v2, 1e-2 * DIMENSION);
|
||||
ASSERT_NEAR(v1, v2, 0.2 * DIMENSION);
|
||||
|
||||
std::string out2;
|
||||
ASSERT_EQ(0, reformer->convert(iter->data(), qmeta, &out2, &qmeta2));
|
||||
|
|
@ -682,7 +682,7 @@ TEST(QuantizedIntegerMetric, TestInt4InnerProduct) {
|
|||
holder->dimension());
|
||||
float v2;
|
||||
compute(mi, qi, holder2->dimension(), &v2);
|
||||
ASSERT_NEAR(v1, v2, 0.15 * DIMENSION);
|
||||
ASSERT_NEAR(v1, v2, 0.2 * DIMENSION);
|
||||
|
||||
std::string out2;
|
||||
ASSERT_EQ(0, reformer->convert(iter->data(), qmeta, &out2, &qmeta2));
|
||||
|
|
@ -771,7 +771,7 @@ TEST(QuantizedIntegerMetric, TestInt8MipsSquaredEuclidean) {
|
|||
float v2;
|
||||
compute(mi, qi, holder2->dimension(), &v2);
|
||||
// printf("%f %f\n", v1, v2);
|
||||
ASSERT_NEAR(v1, v2, 1e-2 * DIMENSION);
|
||||
ASSERT_NEAR(v1, v2, 0.2 * DIMENSION);
|
||||
|
||||
std::string out2;
|
||||
ASSERT_EQ(0, reformer->convert(iter->data(), qmeta, &out2, &qmeta2));
|
||||
|
|
@ -856,7 +856,7 @@ TEST(QuantizedIntegerMetric, TestInt4MipsSquaredEuclidean) {
|
|||
holder->dimension(), 0.0);
|
||||
float v2;
|
||||
compute(mi, qi, holder2->dimension(), &v2);
|
||||
ASSERT_NEAR(v1, v2, 0.15 * DIMENSION);
|
||||
ASSERT_NEAR(v1, v2, 0.2 * DIMENSION);
|
||||
|
||||
std::string out2;
|
||||
ASSERT_EQ(0, reformer->convert(iter->data(), qmeta, &out2, &qmeta2));
|
||||
|
|
@ -956,7 +956,7 @@ TEST(QuantizedIntegerMetric, TestInt8NormalizedCosine) {
|
|||
float v2;
|
||||
compute(mi, qi, holder2->dimension(), &v2);
|
||||
// printf("%f %f\n", v1, v2);
|
||||
ASSERT_NEAR(v1, v2, 1e-2 * DIMENSION);
|
||||
ASSERT_NEAR(v1, v2, 0.2 * DIMENSION);
|
||||
|
||||
std::string out2;
|
||||
ASSERT_EQ(0, reformer->convert(iter->data(), qmeta, &out2, &qmeta2));
|
||||
|
|
@ -1061,7 +1061,7 @@ TEST(QuantizedIntegerMetric, TestInt8Cosine) {
|
|||
compute_batch(reinterpret_cast<const void **>(&mi), qi, 1,
|
||||
holder2->dimension(), &v2);
|
||||
// printf("%f %f\n", v1, v2);
|
||||
ASSERT_NEAR(v1, v2, 1e-2 * DIMENSION);
|
||||
ASSERT_NEAR(v1, v2, 0.2 * DIMENSION);
|
||||
|
||||
std::string out2;
|
||||
ASSERT_EQ(0, reformer->convert(iter->data(), qmeta, &out2, &qmeta2));
|
||||
|
|
@ -1136,7 +1136,7 @@ TEST(QuantizedIntegerMetric, TestInt4NormalizedCosine) {
|
|||
normalized_mf.data(), normalized_vec.data(), holder->dimension());
|
||||
float v2;
|
||||
compute(mi, qi, holder2->dimension(), &v2);
|
||||
ASSERT_NEAR(v1, v2, 0.15 * DIMENSION);
|
||||
ASSERT_NEAR(v1, v2, 0.2 * DIMENSION);
|
||||
|
||||
std::string out2;
|
||||
ASSERT_EQ(0, reformer->convert(iter->data(), qmeta, &out2, &qmeta2));
|
||||
|
|
|
|||
Loading…
Reference in New Issue