Skip to Main Content

DevOps, CI/CD and Automation

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Limit on bit vector size

1336415Mar 26 2016 — edited Mar 29 2016

Hello,

Is there any limits on bit vector size? Using vector.so it is impossible to get more than 536870912 results.

Imagine vector filled with integers with value 42. Let's search for values between 41 and 43 in arrays of size between 500E6 and 800E6:

$ ./bin/dax-in-range 41 43 500000000

0.422279 seconds to find numbers between 41 and 43 using DAX. There are 500000000 such numbers

$ ./bin/dax-in-range 41 43 600000000

0.579878 seconds to find numbers between 41 and 43 using DAX. There are 536870912 such numbers

$ ./bin/dax-in-range 41 43 700000000

0.803640 seconds to find numbers between 41 and 43 using DAX. There are 536870912 such numbers

$ ./bin/dax-in-range 41 43 800000000

1.014522 seconds to find numbers between 41 and 43 using DAX. There are 536870912 such numbers

$

I'm searching using following calls:

bitVec = vector_in_range(valuesVec, &low, &high);

rescount = bit_vector_count(bitVec);

Is it DAX limitation or vector.so implementation?

Comments
Post Details