This is an automated email from the ASF dual-hosted git repository.

charlie pushed a commit to branch master
in repository 
https://gitbox.apache.org/repos/asf/datasketches-characterization.git

commit 98bd6880f9666e689df8c0e817602720aed714be
Author: c-dickens <[email protected]>
AuthorDate: Thu Aug 15 15:45:16 2024 +0100

    Added the QF expansion profile
---
 .../filters/QuotientFilterExpansionProfile.java             | 13 ++++++++-----
 src/main/resources/filters/QuotientFilterExpansionJob.conf  | 12 ++++++------
 2 files changed, 14 insertions(+), 11 deletions(-)

diff --git 
a/src/main/java/org/apache/datasketches/characterization/filters/QuotientFilterExpansionProfile.java
 
b/src/main/java/org/apache/datasketches/characterization/filters/QuotientFilterExpansionProfile.java
index c07d226..eed1804 100644
--- 
a/src/main/java/org/apache/datasketches/characterization/filters/QuotientFilterExpansionProfile.java
+++ 
b/src/main/java/org/apache/datasketches/characterization/filters/QuotientFilterExpansionProfile.java
@@ -54,7 +54,7 @@ public class QuotientFilterExpansionProfile implements 
JobProfile{
     This can be seen through the recursive relationship
      */
     private void doTrial(long numQueries, long startLgU, long endLgU){
-        QuotientFilter qf = new QuotientFilter(lgK, startLenFprint+3);
+        QuotientFilter qf = new QuotientFilter(lgK, startLenFprint);
         final StringBuilder dataStr = new StringBuilder();
 
         // Populate the negative items.  Do this first to easily keep it 
separate from input item set.
@@ -77,15 +77,17 @@ public class QuotientFilterExpansionProfile implements 
JobProfile{
             for (long negItem : negativeItems) {
                 if (qf.search(negItem)) ++numFalsePositive;
             }
-            double fpr = (double) numFalsePositive / numQueries;
-            process(inputCardinality, qf.getNumEntries(), qf.getNumSlots(), 
qf.getFingerprintLength(), fpr, dataStr);
+            //double fpr = (double) numFalsePositive / numQueries;
+            //System.out.println("Expansions " + qf.getNumExpansions() + " " + 
qf.getNumSlots())  ;
+            process(inputCardinality, qf.getNumEntries(), qf.getNumSlots(), 
qf.getFingerprintLength(), numFalsePositive, dataStr);
             job.println(dataStr.toString());
             inputCardinality = pwr2SeriesNext(uPPO, inputCardinality);
         }
     }
 
     private static void process(final long numInput, final long numEntries, 
final long numSlots, final int fPrintLen,
-                                final double falsePositiveRate, final 
StringBuilder sb){
+                                final long falsePositiveRate, final 
StringBuilder sb){
+                                //final double falsePositiveRate, final 
StringBuilder sb){
         // OUTPUT
         sb.setLength(0);
         sb.append(numSlots).append(TAB);
@@ -101,7 +103,8 @@ public class QuotientFilterExpansionProfile implements 
JobProfile{
         sb.append("NumInput").append(TAB);
         sb.append("FPrintLen").append(TAB);
         sb.append("NumEntries").append(TAB);
-        sb.append("FalsePositiveRate");
+        sb.append("NumFalsePositives");
+        //sb.append("FalsePositiveRate");
         return sb.toString();
     }
 }
diff --git a/src/main/resources/filters/QuotientFilterExpansionJob.conf 
b/src/main/resources/filters/QuotientFilterExpansionJob.conf
index 3879123..3f31eeb 100644
--- a/src/main/resources/filters/QuotientFilterExpansionJob.conf
+++ b/src/main/resources/filters/QuotientFilterExpansionJob.conf
@@ -17,7 +17,7 @@
 
 # Uniques Profile
 Universe_lgU=15 # Maximum log2 of the input set.
-Universe_uPPO=4   #The horizontal x-resolution of trials points
+Universe_uPPO=15   #The horizontal x-resolution of trials points
 
 
 # Trials Profile
@@ -35,9 +35,9 @@ ReadableDateFormat=yyyy/MM/dd HH:mm:ss z
 
 #Job Profile
 
JobProfile=org.apache.datasketches.characterization.filters.QuotientFilterExpansionProfile
-startLgU = 9
-endLgU = 12
-startLgNumSlots = 10
+startLgU = 20
+endLgU = 22
+startLgNumSlots = 21
 startLenFprint = 5
-lgNumQueries = 10
-lgTrials = 3
\ No newline at end of file
+lgNumQueries = 12
+lgTrials = 12
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to