ostafen / smart

String Matching Algorithms Research Tool
https://smart-tool.github.io/smart/
GNU General Public License v3.0
4 stars 2 forks source link

Improve console output of results. #87

Closed nishihatapalmer closed 1 year ago

nishihatapalmer commented 1 year ago
nishihatapalmer commented 1 year ago

Output looks like this:

    ____________________________________________________________
        Searching for a set of 500 patterns with length 4096
        Testing 26 algorithms                   Preprocessing + Search: ( mean ± stddev, median )
     - [1/26] * lwfr2 ..................[OK]    ( 0.07, 0.07 ) + ( 0.03 ± 0.05, 0.02 ) ms   
     - [2/26] * lwfr3 ..................[OK]    ( 0.07, 0.06 ) + ( 0.03 ± 0.04, 0.02 ) ms   
     - [3/26] * lwfr4 ..................[OK]    ( 0.07, 0.07 ) + ( 0.03 ± 0.04, 0.02 ) ms   
     - [4/26] * lwfr5 ..................[OK]    ( 0.07, 0.06 ) + ( 0.03 ± 0.03, 0.02 ) ms   
     - [5/26] * lwfr6 ..................[OK]    ( 0.07, 0.07 ) + ( 0.03 ± 0.04, 0.02 ) ms   
     - [6/26] * lwfr7 ..................[OK]    ( 0.07, 0.07 ) + ( 0.03 ± 0.03, 0.02 ) ms   
     - [7/26] * lwfr8 ..................[OK]    ( 0.07, 0.07 ) + ( 0.03 ± 0.03, 0.02 ) ms   
     - [8/26] * wfr ....................[OK]    ( 0.06, 0.05 ) + ( 0.08 ± 0.15, 0.05 ) ms   
     - [9/26] * wfr2 ...................[OK]    ( 0.07, 0.06 ) + ( 0.04 ± 0.06, 0.03 ) ms   
     - [10/26] * wfr2x .................[OK]    ( 0.01, 0.01 ) + ( 0.58 ± 0.50, 0.46 ) ms   
     - [11/26] * wfr3 ..................[OK]    ( 0.06, 0.06 ) + ( 0.04 ± 0.05, 0.02 ) ms   
     - [12/26] * wfr3-onefunc ..........[OK]    ( 0.05, 0.05 ) + ( 0.04 ± 0.06, 0.03 ) ms   
     - [13/26] * wfr3-qverify ..........[OK]    ( 0.06, 0.06 ) + ( 0.04 ± 0.05, 0.02 ) ms   
     - [14/26] * wfr3-split-same .......[OK]    ( 0.06, 0.05 ) + ( 0.04 ± 0.05, 0.02 ) ms   
     - [15/26] * wfr4 ..................[OK]    ( 0.06, 0.06 ) + ( 0.04 ± 0.05, 0.02 ) ms   
     - [16/26] * wfr5 ..................[OK]    ( 0.07, 0.06 ) + ( 0.04 ± 0.05, 0.03 ) ms   
     - [17/26] * wfr6 ..................[OK]    ( 0.06, 0.06 ) + ( 0.04 ± 0.04, 0.02 ) ms   
     - [18/26] * wfr7 ..................[OK]    ( 0.06, 0.06 ) + ( 0.04 ± 0.05, 0.03 ) ms   
     - [19/26] * wfr8 ..................[OK]    ( 0.06, 0.06 ) + ( 0.03 ± 0.04, 0.02 ) ms   
     - [20/26] * wfrq2 .................[OK]    ( 0.03, 0.02 ) + ( 0.04 ± 0.06, 0.02 ) ms   
     - [21/26] * wfrq3 .................[OK]    ( 0.02, 0.02 ) + ( 0.03 ± 0.05, 0.02 ) ms   
     - [22/26] * wfrq4 .................[OK]    ( 0.02, 0.02 ) + ( 0.03 ± 0.05, 0.02 ) ms   
     - [23/26] * wfrq5 .................[OK]    ( 0.02, 0.02 ) + ( 0.03 ± 0.05, 0.02 ) ms   
     - [24/26] * wfrq6 .................[OK]    ( 0.03, 0.03 ) + ( 0.03 ± 0.04, 0.02 ) ms   
     - [25/26] * wfrq7 .................[OK]    ( 0.02, 0.02 ) + ( 0.03 ± 0.04, 0.02 ) ms   
     - [26/26] * wfrq8 .................[OK]    ( 0.02, 0.01 ) + ( 0.03 ± 0.03, 0.02 ) ms
nishihatapalmer commented 1 year ago

I am going to capture the min and max search times, and put those in the output too. Something like this:

    ____________________________________________________________
        Searching for a set of 500 patterns with length 4096
        Testing 26 algorithms                   Preprocessing + Search: ( min - max, mean ± stddev, median )
     - [1/26] * lwfr2 ..................[OK]    ( 0.06 - 0.07, 0.07, 0.07 ) + ( 0.01 - 0.08, 0.03 ± 0.05, 0.02 ) ms 
     - [2/26] * lwfr3 ..................[OK]    ( 0.06 - 0.07, 0.07, 0.06 ) + ( 0.01 - 0.06, 0.03 ± 0.04, 0.02 ) ms 
     - [3/26] * lwfr4 ..................[OK]    ( 0.06 - 0.07, 0.07, 0.07 ) + ( 0.02 - 0.05, 0.03 ± 0.04, 0.02 ) ms