Skip to content

Commit

Permalink
fix compiler errors
Browse files Browse the repository at this point in the history
  • Loading branch information
Greg Friedland committed Feb 17, 2019
1 parent e984532 commit 1f3b16d
Show file tree
Hide file tree
Showing 6 changed files with 1,253 additions and 1,249 deletions.
2 changes: 1 addition & 1 deletion python_bindings/tests/bindings_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,7 @@ def _get_index(self, space='cosinesimil'):
class BitJaccardTestCase(unittest.TestCase, BitVectorIndexTestMixin):
def _get_index(self, space='bit_jaccard'):
return nmslib.init(method='hnsw', space='bit_jaccard', data_type=nmslib.DataType.OBJECT_AS_STRING,
dtype=nmslib.DistType.INT)
dtype=nmslib.DistType.DOUBLE)


# class BitHammingTestCase(unittest.TestCase, BitVectorIndexTestMixin):
Expand Down
8 changes: 4 additions & 4 deletions similarity_search/include/distcomp.h
Original file line number Diff line number Diff line change
Expand Up @@ -223,17 +223,17 @@ int SpearmanRho(const PivotIdType* x, const PivotIdType* y, size_t qty);
int SpearmanFootruleSIMD(const PivotIdType* x, const PivotIdType* y, size_t qty);
int SpearmanRhoSIMD(const PivotIdType* x, const PivotIdType* y, size_t qty);

//template <typename dist_t, typename dist_uint_t>
double inline BitJaccard(const uint64_t* a, const uint64_t* b, size_t qty) {
uint64_t num = 0, den = 0;
template <typename dist_t, typename dist_uint_t>
dist_t inline BitJaccard(const dist_uint_t* a, const dist_uint_t* b, size_t qty) {
dist_uint_t num = 0, den = 0;

for (size_t i=0; i < qty; ++i) {
// __builtin_popcount quickly computes the number on 1s
num += __builtin_popcount(a[i] & b[i]);
den += __builtin_popcount(a[i] | b[i]);
}

return double(num) / double(den);
return dist_t(num) / dist_t(den);
}

//unsigned BitHamming(const uint32_t* a, const uint32_t* b, size_t qty);
Expand Down
2 changes: 1 addition & 1 deletion similarity_search/include/space/space_bit_jaccard.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ class SpaceBitJaccard : public SpaceBitVector<dist_t,dist_uint_t> {
const size_t length = obj1->datalength() / sizeof(dist_uint_t)
- 1; // the last integer is an original number of elements

return BitJaccard(x, y, length);
return BitJaccard<dist_t,dist_uint_t>(x, y, length);
}

DISABLE_COPY_AND_ASSIGN(SpaceBitJaccard);
Expand Down
1 change: 1 addition & 0 deletions similarity_search/src/method/perm_index_incr_bin.cc
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
#include "incremental_quick_select.h"
#include "method/perm_index_incr_bin.h"
#include "utils.h"
#include "distcomp.h"

namespace similarity {

Expand Down
Loading

0 comments on commit 1f3b16d

Please sign in to comment.