Skip to content

Possible to change false positive rate? #2

@LeMoussel

Description

@LeMoussel

With this Test, I got 115 false positive (t=95115, => false positive rate = 0.115 %)
Is it possible to change the false positive rate, eg set to 0.05%?

$sample = 100000;
$offset = 5000;

require_once 'BloomFilter/BloomFilter.php';

// 1Mo ram = 800000 for 100000 values
$s1 = microtime(true);
$decezeBloomFilter = BloomFilter::constructForTypicalSize($sample*8, $sample);
$e1 = microtime(true);

$s2 = microtime(true);
for ($i = 0; $i < $sample; $i++) $decezeBloomFilter->add($i);
$e2 = microtime(true);

$t = 0;
$s3 = microtime(true);
for ($i = $offset; $i < $sample + $offset; $i++) $t += $decezeBloomFilter->maybeInSet($i);
$e3 = microtime(true);

echo 'deceze/BloomFilter Create Time: '.($e1 - $s1).PHP_EOL;
echo 'deceze/BloomFilter Add Time: '.($e2 - $s2).' ('.floor($sample/($e2-$s2)).' i/s)'.PHP_EOL;
echo 'deceze/BloomFilter Check Time: '.($e3 - $s3).' ('.floor($sample/($e3-$s3)).' i/s)'.PHP_EOL;
echo $t;

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions