diff --git a/benchmark/scripts/scanACol/config_BCoAMM.csv b/benchmark/scripts/scanACol/config_BCoAMM.csv index aa481d3d..797a3c25 100644 --- a/benchmark/scripts/scanACol/config_BCoAMM.csv +++ b/benchmark/scripts/scanACol/config_BCoAMM.csv @@ -3,4 +3,5 @@ aRow,1000,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/BetaCoOccurringFD.pt,String \ No newline at end of file +ptFile,torchscripts/BetaCoOccurringFD.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanACol/config_BerCRS.csv b/benchmark/scripts/scanACol/config_BerCRS.csv index 14a0cdc1..4d9e7feb 100644 --- a/benchmark/scripts/scanACol/config_BerCRS.csv +++ b/benchmark/scripts/scanACol/config_BerCRS.csv @@ -3,4 +3,5 @@ aRow,1000,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/BernoulliCRS.pt,String \ No newline at end of file +ptFile,torchscripts/BernoulliCRS.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanACol/config_CPPCRS.csv b/benchmark/scripts/scanACol/config_CPPCRS.csv deleted file mode 100644 index a9b928d2..00000000 --- a/benchmark/scripts/scanACol/config_CPPCRS.csv +++ /dev/null @@ -1,8 +0,0 @@ -key,value,type -aRow,1000,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/CRS.pt,String -useCPP,1,U64 -cppAlgoTag,crs,String \ No newline at end of file diff --git a/benchmark/scripts/scanACol/config_CRS.csv b/benchmark/scripts/scanACol/config_CRS.csv index 620247f2..faf584f0 100644 --- a/benchmark/scripts/scanACol/config_CRS.csv +++ b/benchmark/scripts/scanACol/config_CRS.csv @@ -3,4 +3,5 @@ aRow,1000,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/CRS.pt,String \ No newline at end of file +ptFile,torchscripts/CRS.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanAColCPP/config_CRS.csv b/benchmark/scripts/scanACol/config_CRSV2.csv similarity index 61% rename from benchmark/scripts/scanAColCPP/config_CRS.csv rename to benchmark/scripts/scanACol/config_CRSV2.csv index 620247f2..7d8585a0 100644 --- a/benchmark/scripts/scanAColCPP/config_CRS.csv +++ b/benchmark/scripts/scanACol/config_CRSV2.csv @@ -3,4 +3,5 @@ aRow,1000,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/CRS.pt,String \ No newline at end of file +ptFile,torchscripts/CRSV2.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanACol/config_CoAMM.csv b/benchmark/scripts/scanACol/config_CoAMM.csv index 765e54de..26aabc0e 100644 --- a/benchmark/scripts/scanACol/config_CoAMM.csv +++ b/benchmark/scripts/scanACol/config_CoAMM.csv @@ -3,4 +3,5 @@ aRow,1000,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/CoOccurringFD.pt,String \ No newline at end of file +ptFile,torchscripts/CoOccurringFD.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanACol/config_CounterSketch.csv b/benchmark/scripts/scanACol/config_CounterSketch.csv index 79eabd46..ad0ac1a4 100644 --- a/benchmark/scripts/scanACol/config_CounterSketch.csv +++ b/benchmark/scripts/scanACol/config_CounterSketch.csv @@ -4,3 +4,4 @@ aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 ptFile,torchscripts/CountSketch.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanACol/config_EWS.csv b/benchmark/scripts/scanACol/config_EWS.csv index 0a752db9..f5834cbd 100644 --- a/benchmark/scripts/scanACol/config_EWS.csv +++ b/benchmark/scripts/scanACol/config_EWS.csv @@ -3,4 +3,5 @@ aRow,1000,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/EWS.pt,String \ No newline at end of file +ptFile,torchscripts/EWS.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanACol/config_RAWMM.csv b/benchmark/scripts/scanACol/config_RAWMM.csv index 57e126f7..78e00b13 100644 --- a/benchmark/scripts/scanACol/config_RAWMM.csv +++ b/benchmark/scripts/scanACol/config_RAWMM.csv @@ -3,4 +3,5 @@ aRow,1000,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/RAWMM.pt,String \ No newline at end of file +ptFile,torchscripts/RAWMM.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanAColCPP/config_BCoAMM.csv b/benchmark/scripts/scanACol/config_TugOfWar.csv similarity index 59% rename from benchmark/scripts/scanAColCPP/config_BCoAMM.csv rename to benchmark/scripts/scanACol/config_TugOfWar.csv index aa481d3d..61ba7a68 100644 --- a/benchmark/scripts/scanAColCPP/config_BCoAMM.csv +++ b/benchmark/scripts/scanACol/config_TugOfWar.csv @@ -3,4 +3,5 @@ aRow,1000,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/BetaCoOccurringFD.pt,String \ No newline at end of file +ptFile,torchscripts/TugOfWar.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanACol/config_WCR.csv b/benchmark/scripts/scanACol/config_WCR.csv index a2b6b73c..83a349df 100644 --- a/benchmark/scripts/scanACol/config_WCR.csv +++ b/benchmark/scripts/scanACol/config_WCR.csv @@ -3,4 +3,5 @@ aRow,1000,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/WeightedCR.pt,String \ No newline at end of file +ptFile,torchscripts/WeightedCR.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanACol/drawTogether.py b/benchmark/scripts/scanACol/drawTogether.py index 2222a7b6..29e4d304 100755 --- a/benchmark/scripts/scanACol/drawTogether.py +++ b/benchmark/scripts/scanACol/drawTogether.py @@ -124,10 +124,10 @@ def main(): exeSpace = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/" commonBase = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/results/" + scanTag + "/" figPath = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/figures/" + scanTag - methodTags = ["FD-AMM", "Co-AMM", "BCo-AMM", "Couter-sketch", "MM"] - resultPaths = ["fd", "co", "co", "cs", "mm"] - csvTemplates = ["config_FDAMM.csv", "config_CoAMM.csv", "config_BCoAMM.csv", "config_CounterSketch.csv", - "config_RAWMM.csv"] + methodTags = ["Co-AMM", "BCo-AMM", "Count-sketch", "Tug-of-War", "MM"] + resultPaths = ["co", "co", "cs", "tow", "mm"] + csvTemplates = ["config_CoAMM.csv", "config_BCoAMM.csv", "config_CounterSketch.csv", + "config_TugOfWar.csv", "config_RAWMM.csv"] valueVec = [100, 200, 500, 1000, 2000, 5000, 10000, 20000, 50000] valueVecDisp = np.array(valueVec) # run @@ -153,9 +153,10 @@ def main(): figPath + "/" + scanTag + "sketch_cacheMiss", True) # sampling - resultPaths = ["crs", "bcrs", "ews", "mm"] - csvTemplates = ["config_CRS.csv", "config_BerCRS.csv", "config_EWS.csv", "config_RAWMM.csv"] - methodTags = ["CRS", "Ber-CRS", "EWS", "MM"] + resultPaths = ["crs", "crsv2", "bcrs", "wcr", "ews", "mm"] + csvTemplates = ["config_CRS.csv", "config_CRSV2.csv", "config_BerCRS.csv", "config_WCR.csv", + "config_EWS.csv", "config_RAWMM.csv"] + methodTags = ["CRS", "CRSV2", "Ber-CRS", "Weighted-CR", "EWS", "MM"] elapsedTimeAll, cacheMissAll, periodAll = compareMethod(exeSpace, commonBase, resultPaths, csvTemplates, valueVec, reRun) groupLine.DrawFigure(periodAll, elapsedTimeAll, diff --git a/benchmark/scripts/scanAColCPP/config_CPPBCOOFD.csv b/benchmark/scripts/scanAColCPP/config_CPPBCOOFD.csv new file mode 100644 index 00000000..d43c92f9 --- /dev/null +++ b/benchmark/scripts/scanAColCPP/config_CPPBCOOFD.csv @@ -0,0 +1,10 @@ +key,value,type +aRow,100,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +ptFile,torchscripts/BetaCoOccurringFD.pt,String +useCPP,1,U64 +cppAlgoTag,bcooFD,String +threads,1,U64 +forceMP,1,U64 diff --git a/benchmark/scripts/scanAColCPP/config_CPPBCRS.csv b/benchmark/scripts/scanAColCPP/config_CPPBCRS.csv new file mode 100644 index 00000000..3b7ee42c --- /dev/null +++ b/benchmark/scripts/scanAColCPP/config_CPPBCRS.csv @@ -0,0 +1,10 @@ +key,value,type +aRow,100,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +ptFile,torchscripts/BernoulliCRS.pt,String +useCPP,1,U64 +cppAlgoTag,bcrs,String +threads,1,U64 +forceMP,1,U64 diff --git a/benchmark/scripts/scanAColCPP/config_CPPCRSV2.csv b/benchmark/scripts/scanAColCPP/config_CPPCRSV2.csv new file mode 100644 index 00000000..b94e2d2f --- /dev/null +++ b/benchmark/scripts/scanAColCPP/config_CPPCRSV2.csv @@ -0,0 +1,10 @@ +key,value,type +aRow,100,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +ptFile,torchscripts/CRSV2.pt,String +useCPP,1,U64 +cppAlgoTag,crsV2,String +threads,1,U64 +forceMP,1,U64 diff --git a/benchmark/scripts/scanAColCPP/config_CPPINT8.csv b/benchmark/scripts/scanAColCPP/config_CPPINT8.csv new file mode 100644 index 00000000..2b61c43e --- /dev/null +++ b/benchmark/scripts/scanAColCPP/config_CPPINT8.csv @@ -0,0 +1,10 @@ +key,value,type +aRow,100,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +ptFile,torchscripts/FDAMM.pt,String +useCPP,1,U64 +cppAlgoTag,int8,String +threads,1,U64 +forceMP,1,U64 diff --git a/benchmark/scripts/scanAColCPP/config_CPPSMPPCA.csv b/benchmark/scripts/scanAColCPP/config_CPPSMPPCA.csv new file mode 100644 index 00000000..7c3a0223 --- /dev/null +++ b/benchmark/scripts/scanAColCPP/config_CPPSMPPCA.csv @@ -0,0 +1,9 @@ +key,value,type +aRow,10000,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +threads,1,U64 +ptFile,torchscripts/WeightedCR.pt,String +useCPP,1,U64 +cppAlgoTag,smp-pca,String \ No newline at end of file diff --git a/benchmark/scripts/scanAColCPP/config_CPPWeightedCR.csv b/benchmark/scripts/scanAColCPP/config_CPPWeightedCR.csv new file mode 100644 index 00000000..e92a7939 --- /dev/null +++ b/benchmark/scripts/scanAColCPP/config_CPPWeightedCR.csv @@ -0,0 +1,9 @@ +key,value,type +aRow,10000,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +threads,1,U64 +ptFile,torchscripts/WeightedCR.pt,String +useCPP,1,U64 +cppAlgoTag,weighted-cr,String \ No newline at end of file diff --git a/benchmark/scripts/scanAColCPP/config_CoAMM.csv b/benchmark/scripts/scanAColCPP/config_CoAMM.csv deleted file mode 100644 index 765e54de..00000000 --- a/benchmark/scripts/scanAColCPP/config_CoAMM.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,1000,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/CoOccurringFD.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanAColCPP/config_CounterSketch.csv b/benchmark/scripts/scanAColCPP/config_CounterSketch.csv deleted file mode 100644 index 79eabd46..00000000 --- a/benchmark/scripts/scanAColCPP/config_CounterSketch.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,1000,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/CountSketch.pt,String diff --git a/benchmark/scripts/scanAColCPP/config_EWS.csv b/benchmark/scripts/scanAColCPP/config_EWS.csv deleted file mode 100644 index 0a752db9..00000000 --- a/benchmark/scripts/scanAColCPP/config_EWS.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,1000,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/EWS.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanAColCPP/config_FDAMM.csv b/benchmark/scripts/scanAColCPP/config_FDAMM.csv deleted file mode 100644 index 2dac7db7..00000000 --- a/benchmark/scripts/scanAColCPP/config_FDAMM.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,1000,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/FDAMM.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanAColCPP/config_RAWMM.csv b/benchmark/scripts/scanAColCPP/config_RAWMM.csv deleted file mode 100644 index 57e126f7..00000000 --- a/benchmark/scripts/scanAColCPP/config_RAWMM.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,1000,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/RAWMM.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanAColCPP/config_WCR.csv b/benchmark/scripts/scanAColCPP/config_WCR.csv deleted file mode 100644 index a2b6b73c..00000000 --- a/benchmark/scripts/scanAColCPP/config_WCR.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,1000,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/WeightedCR.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanAColCPP/drawTogether.py b/benchmark/scripts/scanAColCPP/drawTogether.py index 20d8aa55..5cba8047 100755 --- a/benchmark/scripts/scanAColCPP/drawTogether.py +++ b/benchmark/scripts/scanAColCPP/drawTogether.py @@ -135,11 +135,11 @@ def main(): exeSpace = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/" commonBase = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/results/" + scanTag + "/" figPath = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/figures/" + scanTag + "CPP" - methodTags = ["FD-AMM", "Co-AMM", "BCo-AMM", "Couter-sketch", "MM"] - resultPaths = ["fd", "co", "co", "cs", "mm"] - csvTemplates = ["config_FDAMM.csv", "config_CoAMM.csv", "config_BCoAMM.csv", "config_CounterSketch.csv", - "config_RAWMM.csv"] - valueVec = [100, 200, 500, 1000, 2000, 5000, 10000, 20000, 50000] + methodTags = ["Co-AMM", "BCo-AMM", "Count-sketch", "Tug-of-War", "SMP-PCA", "MM"] + resultPaths = ["co", "co", "cs", "tow", "smp-pca", "mm"] + csvTemplates = ["config_CPPCOFD.csv", "config_CPPBCOOFD.csv", "config_CPPCOUNTERSKETCH.csv", + "config_CPPTOW.csv", "config_CPPSMPPCA.csv", "config_CPPMM.csv"] + valueVec = [100, 200, 500, 1000, 5000, 10000, 20000, 50000] valueVecDisp = np.array(valueVec) # run reRun = 0 @@ -150,13 +150,37 @@ def main(): os.system("sudo rm -rf " + commonBase) os.system("sudo mkdir " + commonBase) reRun = 1 - + # skech + elapsedTimeAll, cacheMissAll, periodAll, fro, eb = compareMethod(exeSpace, commonBase, resultPaths, csvTemplates, valueVec, + reRun) + groupLine.DrawFigure(periodAll, elapsedTimeAll, + methodTags, + "#elements in A's col", "elapsed time (ms)", 0, 1, + figPath + "/" + scanTag + "sketch_cpp_elapsedTime", + True) + groupLine.DrawFigureYnormal(periodAll, cacheMissAll, + methodTags, + "#elements in A's col", "cacheMiss (%)", 0, 1, + figPath + "/" + scanTag + "sketch_cpp_cacheMiss", + True) + groupLine.DrawFigureYnormal(periodAll, + fro * 100.0, + methodTags, + "#A's row", "normalized error %", 0, 100, figPath + "/" +scanTag + + "sketch_cpp_froError", + True) + groupLine.DrawFigureYnormal(periodAll, + eb * 100.0, + methodTags, + "#A's row", "error bound ratio %", 0, 100, figPath + "/" + scanTag + + "sketch_cpp_ebRatio", + True) # sampling - # sampling # resultPaths = ["crs", "bcrs", "ews", "mm","mm-cpp","crs-cpp"] - resultPaths = ["mm", "crs","ews","counterSketch","cofd","tow"] - csvTemplates = ["config_CPPMM.csv", "config_CPPCRS.csv","config_CPPEWS.csv","config_CPPCOUNTERSKETCH.csv","config_CPPCOFD.csv","config_CPPTOW.csv"] - methodTags = ["mm", "crs","ews","counterSketch","cofd","tow"] + resultPaths = ["crs", "crsv2", "bcrs", "wcr", "ews", "int8", "mm"] + csvTemplates = ["config_CPPCRS.csv", "config_CPPCRSV2.csv", "config_CPPBCRS.csv", "config_CPPWeightedCR.csv", + "config_CPPEWS.csv", "config_CPPINT8.csv", "config_CPPMM.csv"] + methodTags = ["CRS", "CRSV2", "Ber-CRS", "Weighted-CR", "EWS", "INT8", "MM"] # csvTemplates = ["config_CRS.csv", "config_BerCRS.csv", "config_EWS.csv", "config_RAWMM.csv","config_CPPMM.csv","config_CPPCRS.csv"] # methodTags = ["CRS", "Ber-CRS", "EWS",, "MM","MM_CPP","CRS_CPP"] elapsedTimeAll, cacheMissAll, periodAll,fro,eb = compareMethod(exeSpace, commonBase, resultPaths, csvTemplates, valueVec, @@ -164,12 +188,12 @@ def main(): groupLine.DrawFigure(periodAll, elapsedTimeAll, methodTags, "#A's col", "elapsed time (ms)", 0, 1, - figPath + "/" + scanTag + "cpp_elapsedTime", + figPath + "/" + scanTag + "sampling_cpp_elapsedTime", True) groupLine.DrawFigureYnormal(periodAll, cacheMissAll, methodTags, "#A's col", "cacheMiss (%)", 0, 1, - figPath + "/" + scanTag + "cpp_cacheMiss", + figPath + "/" + scanTag + "sampling_cpp_cacheMiss", True) groupLine.DrawFigureYnormal(periodAll, fro * 100.0, diff --git a/benchmark/scripts/scanARow/config_BCoAMM.csv b/benchmark/scripts/scanARow/config_BCoAMM.csv index b65317af..2865329c 100644 --- a/benchmark/scripts/scanARow/config_BCoAMM.csv +++ b/benchmark/scripts/scanARow/config_BCoAMM.csv @@ -3,4 +3,5 @@ aRow,100,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/BetaCoOccurringFD.pt,String \ No newline at end of file +ptFile,torchscripts/BetaCoOccurringFD.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanARow/config_BerCRS.csv b/benchmark/scripts/scanARow/config_BerCRS.csv index d2b758a5..310d285c 100644 --- a/benchmark/scripts/scanARow/config_BerCRS.csv +++ b/benchmark/scripts/scanARow/config_BerCRS.csv @@ -3,4 +3,5 @@ aRow,100,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/BernoulliCRS.pt,String \ No newline at end of file +ptFile,torchscripts/BernoulliCRS.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanARow/config_CRS.csv b/benchmark/scripts/scanARow/config_CRS.csv index b6afe1ef..90915b42 100644 --- a/benchmark/scripts/scanARow/config_CRS.csv +++ b/benchmark/scripts/scanARow/config_CRS.csv @@ -3,4 +3,5 @@ aRow,100,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/CRS.pt,String \ No newline at end of file +ptFile,torchscripts/CRS.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanACol/config_FDAMM.csv b/benchmark/scripts/scanARow/config_CRSV2.csv similarity index 61% rename from benchmark/scripts/scanACol/config_FDAMM.csv rename to benchmark/scripts/scanARow/config_CRSV2.csv index 2dac7db7..7d8585a0 100644 --- a/benchmark/scripts/scanACol/config_FDAMM.csv +++ b/benchmark/scripts/scanARow/config_CRSV2.csv @@ -3,4 +3,5 @@ aRow,1000,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/FDAMM.pt,String \ No newline at end of file +ptFile,torchscripts/CRSV2.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanARow/config_CoAMM.csv b/benchmark/scripts/scanARow/config_CoAMM.csv index f41d7ddd..7b6baf83 100644 --- a/benchmark/scripts/scanARow/config_CoAMM.csv +++ b/benchmark/scripts/scanARow/config_CoAMM.csv @@ -3,4 +3,5 @@ aRow,100,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/CoOccurringFD.pt,String \ No newline at end of file +ptFile,torchscripts/CoOccurringFD.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanARow/config_CounterSketch.csv b/benchmark/scripts/scanARow/config_CounterSketch.csv index 50cf2770..80d9bd4f 100644 --- a/benchmark/scripts/scanARow/config_CounterSketch.csv +++ b/benchmark/scripts/scanARow/config_CounterSketch.csv @@ -4,3 +4,4 @@ aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 ptFile,torchscripts/CountSketch.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanARow/config_EWS.csv b/benchmark/scripts/scanARow/config_EWS.csv index 8e09f17b..d1a15d00 100644 --- a/benchmark/scripts/scanARow/config_EWS.csv +++ b/benchmark/scripts/scanARow/config_EWS.csv @@ -3,4 +3,5 @@ aRow,100,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/EWS.pt,String \ No newline at end of file +ptFile,torchscripts/EWS.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanARow/config_FDAMM.csv b/benchmark/scripts/scanARow/config_FDAMM.csv deleted file mode 100644 index 18b9efde..00000000 --- a/benchmark/scripts/scanARow/config_FDAMM.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,100,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/FDAMM.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanARow/config_RAWMM.csv b/benchmark/scripts/scanARow/config_RAWMM.csv index aeb092a8..8401fe58 100644 --- a/benchmark/scripts/scanARow/config_RAWMM.csv +++ b/benchmark/scripts/scanARow/config_RAWMM.csv @@ -3,4 +3,5 @@ aRow,100,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/RAWMM.pt,String \ No newline at end of file +ptFile,torchscripts/RAWMM.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanAColCPP/config_BerCRS.csv b/benchmark/scripts/scanARow/config_TugOfWar.csv similarity index 59% rename from benchmark/scripts/scanAColCPP/config_BerCRS.csv rename to benchmark/scripts/scanARow/config_TugOfWar.csv index 14a0cdc1..61ba7a68 100644 --- a/benchmark/scripts/scanAColCPP/config_BerCRS.csv +++ b/benchmark/scripts/scanARow/config_TugOfWar.csv @@ -3,4 +3,5 @@ aRow,1000,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/BernoulliCRS.pt,String \ No newline at end of file +ptFile,torchscripts/TugOfWar.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanARow/config_WCR.csv b/benchmark/scripts/scanARow/config_WCR.csv index d9b055fb..f02285a4 100644 --- a/benchmark/scripts/scanARow/config_WCR.csv +++ b/benchmark/scripts/scanARow/config_WCR.csv @@ -3,4 +3,5 @@ aRow,100,U64 aCol,1000,U64 bCol,500,U64 sketchDimension,25,U64 -ptFile,torchscripts/WeightedCR.pt,String \ No newline at end of file +ptFile,torchscripts/WeightedCR.pt,String +forceMP,1,U64 diff --git a/benchmark/scripts/scanARow/drawTogether.py b/benchmark/scripts/scanARow/drawTogether.py index 8078984b..9efed6fa 100755 --- a/benchmark/scripts/scanARow/drawTogether.py +++ b/benchmark/scripts/scanARow/drawTogether.py @@ -124,10 +124,10 @@ def main(): exeSpace = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/" commonBase = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/results/" + scanTag + "/" figPath = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/figures/" + scanTag - methodTags = ["FD-AMM", "Co-AMM", "BCo-AMM", "Couter-sketch", "MM"] - resultPaths = ["fd", "co", "co", "cs", "mm"] - csvTemplates = ["config_FDAMM.csv", "config_CoAMM.csv", "config_BCoAMM.csv", "config_CounterSketch.csv", - "config_RAWMM.csv"] + methodTags = ["Co-AMM", "BCo-AMM", "Count-sketch", "Tug-of-War", "MM"] + resultPaths = ["co", "co", "cs", "tow", "mm"] + csvTemplates = ["config_CoAMM.csv", "config_BCoAMM.csv", "config_CounterSketch.csv", + "config_TugOfWar.csv", "config_RAWMM.csv"] valueVec = [100, 200, 500, 1000, 2000, 5000, 10000, 20000, 50000] valueVecDisp = np.array(valueVec) # run @@ -153,9 +153,10 @@ def main(): figPath + "/" + scanTag + "sketch_cacheMiss", True) # sampling - resultPaths = ["crs", "bcrs", "ews", "mm"] - csvTemplates = ["config_CRS.csv", "config_BerCRS.csv", "config_EWS.csv", "config_RAWMM.csv"] - methodTags = ["CRS", "Ber-CRS", "EWS", "MM"] + resultPaths = ["crs", "crsv2", "bcrs", "wcr", "ews", "mm"] + csvTemplates = ["config_CRS.csv", "config_CRSV2.csv", "config_BerCRS.csv", "config_WCR.csv", + "config_EWS.csv", "config_RAWMM.csv"] + methodTags = ["CRS", "CRSV2", "Ber-CRS", "Weighted-CR", "EWS", "MM"] elapsedTimeAll, cacheMissAll, periodAll = compareMethod(exeSpace, commonBase, resultPaths, csvTemplates, valueVec, reRun) groupLine.DrawFigure(periodAll, elapsedTimeAll, diff --git a/benchmark/scripts/scanARowCPP/config_BCoAMM.csv b/benchmark/scripts/scanARowCPP/config_BCoAMM.csv deleted file mode 100644 index b65317af..00000000 --- a/benchmark/scripts/scanARowCPP/config_BCoAMM.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,100,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/BetaCoOccurringFD.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanARowCPP/config_BerCRS.csv b/benchmark/scripts/scanARowCPP/config_BerCRS.csv deleted file mode 100644 index d2b758a5..00000000 --- a/benchmark/scripts/scanARowCPP/config_BerCRS.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,100,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/BernoulliCRS.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanARowCPP/config_CPPBCOOFD.csv b/benchmark/scripts/scanARowCPP/config_CPPBCOOFD.csv new file mode 100644 index 00000000..d43c92f9 --- /dev/null +++ b/benchmark/scripts/scanARowCPP/config_CPPBCOOFD.csv @@ -0,0 +1,10 @@ +key,value,type +aRow,100,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +ptFile,torchscripts/BetaCoOccurringFD.pt,String +useCPP,1,U64 +cppAlgoTag,bcooFD,String +threads,1,U64 +forceMP,1,U64 diff --git a/benchmark/scripts/scanARowCPP/config_CPPBCRS.csv b/benchmark/scripts/scanARowCPP/config_CPPBCRS.csv new file mode 100644 index 00000000..3b7ee42c --- /dev/null +++ b/benchmark/scripts/scanARowCPP/config_CPPBCRS.csv @@ -0,0 +1,10 @@ +key,value,type +aRow,100,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +ptFile,torchscripts/BernoulliCRS.pt,String +useCPP,1,U64 +cppAlgoTag,bcrs,String +threads,1,U64 +forceMP,1,U64 diff --git a/benchmark/scripts/scanARowCPP/config_CPPCOUNTERSKETCH.csv b/benchmark/scripts/scanARowCPP/config_CPPCOUNTERSKETCH.csv index a06776ab..6823e4e2 100644 --- a/benchmark/scripts/scanARowCPP/config_CPPCOUNTERSKETCH.csv +++ b/benchmark/scripts/scanARowCPP/config_CPPCOUNTERSKETCH.csv @@ -7,4 +7,4 @@ ptFile,torchscripts/CRS.pt,String useCPP,1,U64 cppAlgoTag,countSketch,String threads,1,U64 -forceMP,1,U64 \ No newline at end of file +forceMP,1,U64 diff --git a/benchmark/scripts/scanARowCPP/config_CPPCRSV2.csv b/benchmark/scripts/scanARowCPP/config_CPPCRSV2.csv new file mode 100644 index 00000000..b94e2d2f --- /dev/null +++ b/benchmark/scripts/scanARowCPP/config_CPPCRSV2.csv @@ -0,0 +1,10 @@ +key,value,type +aRow,100,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +ptFile,torchscripts/CRSV2.pt,String +useCPP,1,U64 +cppAlgoTag,crsV2,String +threads,1,U64 +forceMP,1,U64 diff --git a/benchmark/scripts/scanARowCPP/config_CPPINT8.csv b/benchmark/scripts/scanARowCPP/config_CPPINT8.csv new file mode 100644 index 00000000..2b61c43e --- /dev/null +++ b/benchmark/scripts/scanARowCPP/config_CPPINT8.csv @@ -0,0 +1,10 @@ +key,value,type +aRow,100,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +ptFile,torchscripts/FDAMM.pt,String +useCPP,1,U64 +cppAlgoTag,int8,String +threads,1,U64 +forceMP,1,U64 diff --git a/benchmark/scripts/scanARowCPP/config_CPPSMPPCA.csv b/benchmark/scripts/scanARowCPP/config_CPPSMPPCA.csv new file mode 100644 index 00000000..7c3a0223 --- /dev/null +++ b/benchmark/scripts/scanARowCPP/config_CPPSMPPCA.csv @@ -0,0 +1,9 @@ +key,value,type +aRow,10000,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +threads,1,U64 +ptFile,torchscripts/WeightedCR.pt,String +useCPP,1,U64 +cppAlgoTag,smp-pca,String \ No newline at end of file diff --git a/benchmark/scripts/scanARowCPP/config_CPPWeightedCR.csv b/benchmark/scripts/scanARowCPP/config_CPPWeightedCR.csv new file mode 100644 index 00000000..e92a7939 --- /dev/null +++ b/benchmark/scripts/scanARowCPP/config_CPPWeightedCR.csv @@ -0,0 +1,9 @@ +key,value,type +aRow,10000,U64 +aCol,1000,U64 +bCol,500,U64 +sketchDimension,25,U64 +threads,1,U64 +ptFile,torchscripts/WeightedCR.pt,String +useCPP,1,U64 +cppAlgoTag,weighted-cr,String \ No newline at end of file diff --git a/benchmark/scripts/scanARowCPP/config_CRS.csv b/benchmark/scripts/scanARowCPP/config_CRS.csv deleted file mode 100644 index b6afe1ef..00000000 --- a/benchmark/scripts/scanARowCPP/config_CRS.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,100,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/CRS.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanARowCPP/config_CoAMM.csv b/benchmark/scripts/scanARowCPP/config_CoAMM.csv deleted file mode 100644 index f41d7ddd..00000000 --- a/benchmark/scripts/scanARowCPP/config_CoAMM.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,100,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/CoOccurringFD.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanARowCPP/config_CounterSketch.csv b/benchmark/scripts/scanARowCPP/config_CounterSketch.csv deleted file mode 100644 index 50cf2770..00000000 --- a/benchmark/scripts/scanARowCPP/config_CounterSketch.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,100,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/CountSketch.pt,String diff --git a/benchmark/scripts/scanARowCPP/config_EWS.csv b/benchmark/scripts/scanARowCPP/config_EWS.csv deleted file mode 100644 index 8e09f17b..00000000 --- a/benchmark/scripts/scanARowCPP/config_EWS.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,100,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/EWS.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanARowCPP/config_FDAMM.csv b/benchmark/scripts/scanARowCPP/config_FDAMM.csv deleted file mode 100644 index 18b9efde..00000000 --- a/benchmark/scripts/scanARowCPP/config_FDAMM.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,100,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/FDAMM.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanARowCPP/config_RAWMM.csv b/benchmark/scripts/scanARowCPP/config_RAWMM.csv deleted file mode 100644 index aeb092a8..00000000 --- a/benchmark/scripts/scanARowCPP/config_RAWMM.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,100,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/RAWMM.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanARowCPP/config_WCR.csv b/benchmark/scripts/scanARowCPP/config_WCR.csv deleted file mode 100644 index d9b055fb..00000000 --- a/benchmark/scripts/scanARowCPP/config_WCR.csv +++ /dev/null @@ -1,6 +0,0 @@ -key,value,type -aRow,100,U64 -aCol,1000,U64 -bCol,500,U64 -sketchDimension,25,U64 -ptFile,torchscripts/WeightedCR.pt,String \ No newline at end of file diff --git a/benchmark/scripts/scanARowCPP/drawTogether.py b/benchmark/scripts/scanARowCPP/drawTogether.py index c67ec677..edcb416a 100755 --- a/benchmark/scripts/scanARowCPP/drawTogether.py +++ b/benchmark/scripts/scanARowCPP/drawTogether.py @@ -135,10 +135,10 @@ def main(): exeSpace = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/" commonBase = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/results/" + scanTag + "/" figPath = os.path.abspath(os.path.join(os.getcwd(), "../..")) + "/figures/" + scanTag + "CPP" - methodTags = ["FD-AMM", "Co-AMM", "BCo-AMM", "Couter-sketch", "MM"] - resultPaths = ["fd", "co", "co", "cs", "mm"] - csvTemplates = ["config_FDAMM.csv", "config_CoAMM.csv", "config_BCoAMM.csv", "config_CounterSketch.csv", - "config_RAWMM.csv"] + methodTags = ["Co-AMM", "BCo-AMM", "Count-sketch", "Tug-of-War", "SMP-PCA", "MM"] + resultPaths = ["co", "co", "cs", "tow", "smp-pca", "mm"] + csvTemplates = ["config_CPPCOFD.csv", "config_CPPBCOOFD.csv", "config_CPPCOUNTERSKETCH.csv", + "config_CPPTOW.csv", "config_CPPSMPPCA.csv", "config_CPPMM.csv"] valueVec = [100, 200, 500, 1000, 5000, 10000, 20000, 50000, 100000] valueVecDisp = np.array(valueVec) # run @@ -151,12 +151,37 @@ def main(): os.system("sudo mkdir " + commonBase) reRun = 1 # skech + elapsedTimeAll, cacheMissAll, periodAll, fro, eb = compareMethod(exeSpace, commonBase, resultPaths, csvTemplates, valueVec, + reRun) + groupLine.DrawFigure(periodAll, elapsedTimeAll, + methodTags, + "#elements in A's row", "elapsed time (ms)", 0, 1, + figPath + "/" + scanTag + "sketch_cpp_elapsedTime", + True) + groupLine.DrawFigureYnormal(periodAll, cacheMissAll, + methodTags, + "#elements in A's row", "cacheMiss (%)", 0, 1, + figPath + "/" + scanTag + "sketch_cpp_cacheMiss", + True) + groupLine.DrawFigureYnormal(periodAll, + fro * 100.0, + methodTags, + "#A's row", "normalized error %", 0, 100, figPath + "/" +scanTag + + "sketch_cpp_froError", + True) + groupLine.DrawFigureYnormal(periodAll, + eb * 100.0, + methodTags, + "#A's row", "error bound ratio %", 0, 100, figPath + "/" + scanTag + + "sketch_cpp_ebRatio", + True) # sampling # resultPaths = ["crs", "bcrs", "ews", "mm","mm-cpp","crs-cpp"] - resultPaths = ["mm", "crs","ews","counterSketch","cofd","tow"] - csvTemplates = ["config_CPPMM.csv", "config_CPPCRS.csv","config_CPPEWS.csv","config_CPPCOUNTERSKETCH.csv","config_CPPCOFD.csv","config_CPPTOW.csv"] - methodTags = ["mm", "crs","ews","counterSketch","cofd","tow"] + resultPaths = ["crs", "crsv2", "bcrs", "wcr", "ews", "int8", "mm"] + csvTemplates = ["config_CPPCRS.csv", "config_CPPCRSV2.csv", "config_CPPBCRS.csv", "config_CPPWeightedCR.csv", + "config_CPPEWS.csv", "config_CPPINT8.csv", "config_CPPMM.csv"] + methodTags = ["CRS", "CRSV2", "Ber-CRS", "Weighted-CR", "EWS", "INT8", "MM"] # csvTemplates = ["config_CRS.csv", "config_BerCRS.csv", "config_EWS.csv", "config_RAWMM.csv","config_CPPMM.csv","config_CPPCRS.csv"] # methodTags = ["CRS", "Ber-CRS", "EWS",, "MM","MM_CPP","CRS_CPP"] elapsedTimeAll, cacheMissAll, periodAll,fro,eb = compareMethod(exeSpace, commonBase, resultPaths, csvTemplates, valueVec, @@ -164,22 +189,24 @@ def main(): groupLine.DrawFigure(periodAll, elapsedTimeAll, methodTags, "#A's row", "elapsed time (ms)", 0, 1, - figPath + "/" + scanTag + "cpp_elapsedTime", + figPath + "/" + scanTag + "sampling_cpp_elapsedTime", True) groupLine.DrawFigureYnormal(periodAll, cacheMissAll, methodTags, "#A's row", "cacheMiss (%)", 0, 100, - figPath + "/" + scanTag + "cpp_cacheMiss", + figPath + "/" + scanTag + "sampling_cpp_cacheMiss", True) groupLine.DrawFigureYnormal(periodAll, fro * 100.0, methodTags, - "#A's row", "normalized error %", 0, 100, figPath + "/" +scanTag + "_froError", + "#A's row", "normalized error %", 0, 100, figPath + "/" +scanTag + + "sampling_cpp_froError", True) groupLine.DrawFigureYnormal(periodAll, eb * 100.0, methodTags, - "#A's row", "error bound ratio %", 0, 100, figPath + "/" + scanTag + "_ebRatio", + "#A's row", "error bound ratio %", 0, 100, figPath + "/" + scanTag + + "sampling_cpp_ebRatio", True) # draw2yLine("watermark time (ms)",singleValueVecDisp,lat95Vec,errVec,"95% Latency (ms)","Error","ms","",figPath+"wm_lat") # draw2yLine("watermark time (ms)",singleValueVecDisp,thrVec,errVec,"Throughput (KTp/s)","Error","KTp/s","",figPath+"wm_thr") diff --git a/figures/aCol/aColsampling_cacheMiss.pdf b/figures/aCol/aColsampling_cacheMiss.pdf new file mode 100644 index 00000000..c8dcb49e Binary files /dev/null and b/figures/aCol/aColsampling_cacheMiss.pdf differ diff --git a/figures/aCol/aColsampling_elapsedTime.pdf b/figures/aCol/aColsampling_elapsedTime.pdf new file mode 100644 index 00000000..49c2519d Binary files /dev/null and b/figures/aCol/aColsampling_elapsedTime.pdf differ diff --git a/figures/aCol/aColsketch_cacheMiss.pdf b/figures/aCol/aColsketch_cacheMiss.pdf new file mode 100644 index 00000000..1ad0ada0 Binary files /dev/null and b/figures/aCol/aColsketch_cacheMiss.pdf differ diff --git a/figures/aCol/aColsketch_elapsedTime.pdf b/figures/aCol/aColsketch_elapsedTime.pdf new file mode 100644 index 00000000..bbe20ede Binary files /dev/null and b/figures/aCol/aColsketch_elapsedTime.pdf differ diff --git a/figures/aColCPP/aCol_ebRatio.pdf b/figures/aColCPP/aCol_ebRatio.pdf new file mode 100644 index 00000000..af7b36e0 Binary files /dev/null and b/figures/aColCPP/aCol_ebRatio.pdf differ diff --git a/figures/aColCPP/aCol_froError.pdf b/figures/aColCPP/aCol_froError.pdf new file mode 100644 index 00000000..b8e87b8e Binary files /dev/null and b/figures/aColCPP/aCol_froError.pdf differ diff --git a/figures/aColCPP/aColsampling_cpp_cacheMiss.pdf b/figures/aColCPP/aColsampling_cpp_cacheMiss.pdf new file mode 100644 index 00000000..c5fa654a Binary files /dev/null and b/figures/aColCPP/aColsampling_cpp_cacheMiss.pdf differ diff --git a/figures/aColCPP/aColsampling_cpp_elapsedTime.pdf b/figures/aColCPP/aColsampling_cpp_elapsedTime.pdf new file mode 100644 index 00000000..a6bf4ec5 Binary files /dev/null and b/figures/aColCPP/aColsampling_cpp_elapsedTime.pdf differ diff --git a/figures/aColCPP/aColsketch_cpp_cacheMiss.pdf b/figures/aColCPP/aColsketch_cpp_cacheMiss.pdf new file mode 100644 index 00000000..b0385a7f Binary files /dev/null and b/figures/aColCPP/aColsketch_cpp_cacheMiss.pdf differ diff --git a/figures/aColCPP/aColsketch_cpp_ebRatio.pdf b/figures/aColCPP/aColsketch_cpp_ebRatio.pdf new file mode 100644 index 00000000..54f5659d Binary files /dev/null and b/figures/aColCPP/aColsketch_cpp_ebRatio.pdf differ diff --git a/figures/aColCPP/aColsketch_cpp_elapsedTime.pdf b/figures/aColCPP/aColsketch_cpp_elapsedTime.pdf new file mode 100644 index 00000000..07d2d8d7 Binary files /dev/null and b/figures/aColCPP/aColsketch_cpp_elapsedTime.pdf differ diff --git a/figures/aColCPP/aColsketch_cpp_froError.pdf b/figures/aColCPP/aColsketch_cpp_froError.pdf new file mode 100644 index 00000000..33380a8b Binary files /dev/null and b/figures/aColCPP/aColsketch_cpp_froError.pdf differ diff --git a/figures/aRow/aRowsampling_cacheMiss.pdf b/figures/aRow/aRowsampling_cacheMiss.pdf new file mode 100644 index 00000000..146a2023 Binary files /dev/null and b/figures/aRow/aRowsampling_cacheMiss.pdf differ diff --git a/figures/aRow/aRowsampling_elapsedTime.pdf b/figures/aRow/aRowsampling_elapsedTime.pdf new file mode 100644 index 00000000..5698dfa0 Binary files /dev/null and b/figures/aRow/aRowsampling_elapsedTime.pdf differ diff --git a/figures/aRow/aRowsketch_cacheMiss.pdf b/figures/aRow/aRowsketch_cacheMiss.pdf new file mode 100644 index 00000000..3d5449de Binary files /dev/null and b/figures/aRow/aRowsketch_cacheMiss.pdf differ diff --git a/figures/aRow/aRowsketch_elapsedTime.pdf b/figures/aRow/aRowsketch_elapsedTime.pdf new file mode 100644 index 00000000..3e5a2c4b Binary files /dev/null and b/figures/aRow/aRowsketch_elapsedTime.pdf differ diff --git a/figures/aRowCPP/aRowsampling_cpp_cacheMiss.pdf b/figures/aRowCPP/aRowsampling_cpp_cacheMiss.pdf new file mode 100644 index 00000000..a5678626 Binary files /dev/null and b/figures/aRowCPP/aRowsampling_cpp_cacheMiss.pdf differ diff --git a/figures/aRowCPP/aRowsampling_cpp_ebRatio.pdf b/figures/aRowCPP/aRowsampling_cpp_ebRatio.pdf new file mode 100644 index 00000000..912858f3 Binary files /dev/null and b/figures/aRowCPP/aRowsampling_cpp_ebRatio.pdf differ diff --git a/figures/aRowCPP/aRowsampling_cpp_elapsedTime.pdf b/figures/aRowCPP/aRowsampling_cpp_elapsedTime.pdf new file mode 100644 index 00000000..6e55ee63 Binary files /dev/null and b/figures/aRowCPP/aRowsampling_cpp_elapsedTime.pdf differ diff --git a/figures/aRowCPP/aRowsampling_cpp_froError.pdf b/figures/aRowCPP/aRowsampling_cpp_froError.pdf new file mode 100644 index 00000000..028a6803 Binary files /dev/null and b/figures/aRowCPP/aRowsampling_cpp_froError.pdf differ diff --git a/figures/aRowCPP/aRowsketch_cpp_cacheMiss.pdf b/figures/aRowCPP/aRowsketch_cpp_cacheMiss.pdf new file mode 100644 index 00000000..40a3add2 Binary files /dev/null and b/figures/aRowCPP/aRowsketch_cpp_cacheMiss.pdf differ diff --git a/figures/aRowCPP/aRowsketch_cpp_ebRatio.pdf b/figures/aRowCPP/aRowsketch_cpp_ebRatio.pdf new file mode 100644 index 00000000..a6114e39 Binary files /dev/null and b/figures/aRowCPP/aRowsketch_cpp_ebRatio.pdf differ diff --git a/figures/aRowCPP/aRowsketch_cpp_elapsedTime.pdf b/figures/aRowCPP/aRowsketch_cpp_elapsedTime.pdf new file mode 100644 index 00000000..5e62c94f Binary files /dev/null and b/figures/aRowCPP/aRowsketch_cpp_elapsedTime.pdf differ diff --git a/figures/aRowCPP/aRowsketch_cpp_froError.pdf b/figures/aRowCPP/aRowsketch_cpp_froError.pdf new file mode 100644 index 00000000..9a382895 Binary files /dev/null and b/figures/aRowCPP/aRowsketch_cpp_froError.pdf differ