From 8d82c40f4a552f0c5ca4236cec078a8da21f2fff Mon Sep 17 00:00:00 2001 From: programmingAthlete Date: Thu, 1 Feb 2024 22:41:03 +0100 Subject: [PATCH] data --- .gitignore | 4 +- .../data_mean_over_10_iterations.png | Bin 0 -> 62972 bytes .../macrostate_repeated_10_times.csv | 11 ++ .../2_to_power_10/repeated_10_times.csv | 101 ++++++++++++++++++ .../data_mean_over_10_iterations.png | Bin 0 -> 59936 bytes .../macrostate_repeated_10_times.csv | 11 ++ .../2_to_power_10/repeated_10_times.csv | 101 ++++++++++++++++++ src/crypto_VDF/plotter/grapher.py | 2 +- src/crypto_VDF/plotter/wesolowski_grapher.py | 2 +- src/crypto_VDF/utils/utils.py | 4 +- 10 files changed, 230 insertions(+), 6 deletions(-) create mode 100644 data/pietrzak/random_input/2_to_power_10/data_mean_over_10_iterations.png create mode 100644 data/pietrzak/random_input/2_to_power_10/macrostate_repeated_10_times.csv create mode 100644 data/pietrzak/random_input/2_to_power_10/repeated_10_times.csv create mode 100644 data/wesolowski/random_input/2_to_power_10/data_mean_over_10_iterations.png create mode 100644 data/wesolowski/random_input/2_to_power_10/macrostate_repeated_10_times.csv create mode 100644 data/wesolowski/random_input/2_to_power_10/repeated_10_times.csv diff --git a/.gitignore b/.gitignore index 09beda9..bf11702 100644 --- a/.gitignore +++ b/.gitignore @@ -8,5 +8,5 @@ crypto_VDF.egg-info .pytest_cache **/__pycache__/ -data/pietrzak/* -data/wesolowski/* +data2/pietrzak/* +data2/wesolowski/* diff --git a/data/pietrzak/random_input/2_to_power_10/data_mean_over_10_iterations.png b/data/pietrzak/random_input/2_to_power_10/data_mean_over_10_iterations.png new file mode 100644 index 0000000000000000000000000000000000000000..fed01905d1567776540b5da0747bf394b11304be GIT binary patch literal 62972 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 literal 0 HcmV?d00001 diff --git a/data/pietrzak/random_input/2_to_power_10/macrostate_repeated_10_times.csv b/data/pietrzak/random_input/2_to_power_10/macrostate_repeated_10_times.csv new file mode 100644 index 0000000..bef3a92 --- /dev/null +++ b/data/pietrzak/random_input/2_to_power_10/macrostate_repeated_10_times.csv @@ -0,0 +1,11 @@ +,delay,eval time means for 10 iterations (s),eval time std for 10 iterations (s),verify time means for 10 iterations (s),verify time std for 10 iterations (s),input +0,2,0.00019850730895996094,2.2538424546894754e-05,0.00010824203491210938,4.229225718585123e-05,0 +1,4,0.00025625228881835936,5.275116052558567e-05,0.00011675357818603515,1.2991345508711209e-05,0 +2,8,0.00026915073394775393,6.434715304804315e-05,0.00013575553894042968,3.6888284736565214e-05,0 +3,16,0.00029277801513671875,3.011612457591771e-05,0.0001476764678955078,2.083195741401407e-05,0 +4,32,0.00033435821533203127,2.9265269559915847e-05,0.0001627206802368164,2.114553122356661e-05,0 +5,64,0.0004349946975708008,8.785114464116269e-05,0.0002262592315673828,6.044881453505844e-05,0 +6,128,0.0004892349243164062,8.186321790811858e-05,0.00022706985473632812,8.131244192306556e-05,0 +7,256,0.000633406639099121,0.0002158160403855472,0.0002424478530883789,0.00010019018636607069,0 +8,512,0.000954294204711914,0.0003302221204084126,0.00028967857360839844,0.00011841162735550236,0 +9,1024,0.0012580156326293945,0.0001852027395777099,0.00025081634521484375,3.1169170468357006e-05,0 diff --git a/data/pietrzak/random_input/2_to_power_10/repeated_10_times.csv b/data/pietrzak/random_input/2_to_power_10/repeated_10_times.csv new file mode 100644 index 0000000..655367c --- /dev/null +++ b/data/pietrzak/random_input/2_to_power_10/repeated_10_times.csv @@ -0,0 +1,101 @@ +,delay,eval time (s),verify time (s),input +0,2,0.0002079010009765625,8.654594421386719e-05,5569605067528135667763659262051675950 +1,2,0.00021529197692871094,8.416175842285156e-05,76863766555928827680222482081090837745 +2,2,0.00018835067749023438,8.034706115722656e-05,51706922969376299474761683054718752663 +3,2,0.00021457672119140625,0.00010991096496582031,22336936729332338015876895636652685946 +4,2,0.0001995563507080078,9.894371032714844e-05,36834216168507698907472518808362017284 +5,2,0.00020813941955566406,9.989738464355469e-05,132740338772913706569478744558846780462 +6,2,0.00023746490478515625,0.00022530555725097656,158649089475382516128133671526057541773 +7,2,0.0001723766326904297,9.036064147949219e-05,170244138752966008957619821256183983268 +8,2,0.00017118453979492188,0.00010800361633300781,88607680410026263690218447926565071736 +9,2,0.00017023086547851562,9.894371032714844e-05,127932878752641395984217940182704396822 +10,4,0.00023674964904785156,0.0001087188720703125,61100889965216372638084536662339844973 +11,4,0.000255584716796875,0.00011491775512695312,155131051840696103459004951144690353856 +12,4,0.0003943443298339844,0.00014972686767578125,16392884295367407737637345948633490601 +13,4,0.0002288818359375,0.00010800361633300781,205344367298381453233679856247952277770 +14,4,0.0002830028533935547,0.00010824203491210938,218140298733049058713720698581121832762 +15,4,0.0002014636993408203,0.00010848045349121094,166344769573124417348096057141556285914 +16,4,0.0002391338348388672,0.00010943412780761719,122874827792392414484426069668461214888 +17,4,0.000232696533203125,0.00011730194091796875,180947335088891482801066208093471533196 +18,4,0.00024080276489257812,0.00012636184692382812,119095604796672674142694433939026125341 +19,4,0.0002498626708984375,0.0001163482666015625,13688783404786531579495339419195328205 +20,8,0.0002491474151611328,0.00012302398681640625,171319714157246263295327557226824888933 +21,8,0.0004475116729736328,0.00023555755615234375,66486014207317510101345887505754581833 +22,8,0.0002655982971191406,0.0001270771026611328,147581908036137782321646439710687592334 +23,8,0.0002732276916503906,0.0001556873321533203,74448528914759286625085347174603259356 +24,8,0.00022745132446289062,0.00011610984802246094,154634500554265873696214835416219940973 +25,8,0.0002493858337402344,0.0001163482666015625,92142674411447696524459534888611085350 +26,8,0.00026106834411621094,0.00011992454528808594,177875296265833666282433302889581472277 +27,8,0.0002319812774658203,0.00012373924255371094,93859917191718649974518339679014879854 +28,8,0.00023651123046875,0.00011968612670898438,104135912361643379168263979535420594783 +29,8,0.00024962425231933594,0.00012040138244628906,120598629486100476837073799213888367428 +30,16,0.00027441978454589844,0.00014591217041015625,12795610281385541867290820205308861228 +31,16,0.00034165382385253906,0.00017952919006347656,45670470207903147303945343616988776375 +32,16,0.0002951622009277344,0.00013327598571777344,138333454147621602322238192874027934112 +33,16,0.0003440380096435547,0.00019049644470214844,15479362458451769114243331417312032314 +34,16,0.00029587745666503906,0.00013828277587890625,93753466334332332132321846243505581760 +35,16,0.0002837181091308594,0.0001327991485595703,133236760887136566056658521123861749944 +36,16,0.0002899169921875,0.00013566017150878906,103932049062158068844636835620089878337 +37,16,0.00025200843811035156,0.0001304149627685547,62664076011479122445112317450049734649 +38,16,0.0002903938293457031,0.00013875961303710938,134960068214162667948073040828574934466 +39,16,0.0002605915069580078,0.00015163421630859375,105747613638180141230124640662122040191 +40,32,0.0003304481506347656,0.0001552104949951172,101595673865353634040108804874998890545 +41,32,0.0003299713134765625,0.0001671314239501953,171341158459245968262448395902337920491 +42,32,0.0003256797790527344,0.00015473365783691406,51005804567491612618656374034288769398 +43,32,0.00037169456481933594,0.00014638900756835938,2439249232819126736617952498433984642 +44,32,0.00030875205993652344,0.00021719932556152344,109313875140497257321893144933344018337 +45,32,0.00032258033752441406,0.00017690658569335938,37421048961681828739459137559578192469 +46,32,0.00032520294189453125,0.0001533031463623047,117517454501061794777127078159523560407 +47,32,0.0004010200500488281,0.00015592575073242188,107817386142174846179952159623261445489 +48,32,0.0003085136413574219,0.0001506805419921875,187960498613576628853387645425171202908 +49,32,0.0003197193145751953,0.00014972686767578125,94287329694009359396417937291377751729 +50,64,0.0003681182861328125,0.0001666545867919922,58352147665096726256897937801893912537 +51,64,0.00040149688720703125,0.000179290771484375,70531999576019172550617012161762384732 +52,64,0.00043964385986328125,0.0002841949462890625,20342006922350272405648304172524018925 +53,64,0.0006117820739746094,0.0002810955047607422,120109896321092809935907267377919816695 +54,64,0.0005340576171875,0.00030231475830078125,70753983453580488369255455369189233479 +55,64,0.0004820823669433594,0.000286102294921875,97054056526043941698597601825085471241 +56,64,0.00037598609924316406,0.0001800060272216797,172216581569152633017408341303527513053 +57,64,0.0003387928009033203,0.0001659393310546875,121706984595271115289295244742191502820 +58,64,0.00045013427734375,0.00025844573974609375,32348163749345521516758596916101884831 +59,64,0.0003478527069091797,0.00015854835510253906,139249924752948672153434520923915250285 +60,128,0.0005121231079101562,0.0002040863037109375,272873622510380069005576804067223682077 +61,128,0.0004680156707763672,0.00017976760864257812,117030010652244765017894808261802640597 +62,128,0.0004813671112060547,0.00020575523376464844,133599384732567191135923795735770376069 +63,128,0.000461578369140625,0.0003323554992675781,27486416771296317201618680690894206529 +64,128,0.0006458759307861328,0.00023794174194335938,28566637902063409590859563262314996831 +65,128,0.00041985511779785156,0.0001933574676513672,195570480636411280881056470757436487435 +66,128,0.0004258155822753906,0.000171661376953125,107474302455029774783593984425675889504 +67,128,0.00042247772216796875,0.00017070770263671875,231385322134088580371367086507144921830 +68,128,0.000621795654296875,0.0004107952117919922,14190263588525676012210877563481127863 +69,128,0.0004334449768066406,0.00016427040100097656,36385524909468794162739811377323209769 +70,256,0.0006792545318603516,0.0002448558807373047,98525765807396080492188448553532062232 +71,256,0.0005333423614501953,0.0001888275146484375,156586357623301965974651241100755277894 +72,256,0.0005345344543457031,0.00020170211791992188,66788462705632752200811141932832477545 +73,256,0.0006225109100341797,0.0002689361572265625,2070189696011071178672955635094275201 +74,256,0.0005583763122558594,0.0002110004425048828,59888482162358509876282297788372772270 +75,256,0.0005898475646972656,0.0002162456512451172,9819518881360907885640233542591367933 +76,256,0.0005173683166503906,0.00018978118896484375,159184606462878023293642690132767686327 +77,256,0.0005345344543457031,0.0001933574676513672,49894812710571441599799200178313984533 +78,256,0.0005338191986083984,0.00019216537475585938,58999640785830618114087455568105035494 +79,256,0.001230478286743164,0.0005176067352294922,11525594222786027964323374367252360463 +80,512,0.0007653236389160156,0.00019979476928710938,179278873696112460065830648024124893937 +81,512,0.0007750988006591797,0.00022077560424804688,206738767296321359408256050452237090414 +82,512,0.0017380714416503906,0.0005660057067871094,29398051186588022004717743106093757158 +83,512,0.0008304119110107422,0.00026297569274902344,153187174651649662500683726073636199834 +84,512,0.0008463859558105469,0.00025272369384765625,125233062539653413555620091263942898078 +85,512,0.0008034706115722656,0.00022554397583007812,8531121240034259761129529729478204340 +86,512,0.0008087158203125,0.0002579689025878906,189881236976912734878343486175332690023 +87,512,0.0008509159088134766,0.00027108192443847656,38290653651063264754254412161889648998 +88,512,0.0007505416870117188,0.00020241737365722656,61895096717234042214950244751318612883 +89,512,0.0013740062713623047,0.0004374980926513672,3214714160297323634930323204419302461 +90,1024,0.0012660026550292969,0.00025725364685058594,85927091685613219008374525723373902008 +91,1024,0.0010981559753417969,0.0002338886260986328,164401760354838035757590921571592296311 +92,1024,0.0012073516845703125,0.00025153160095214844,4723266434112393304539568415603372670 +93,1024,0.001100778579711914,0.00022339820861816406,33677986477984553306866108394701510785 +94,1024,0.0014362335205078125,0.0002944469451904297,74719697611106848752529175063946324589 +95,1024,0.00124359130859375,0.00025010108947753906,22411830437320415067395583660709517222 +96,1024,0.001226663589477539,0.00024390220642089844,45248967465771555077524420975006321400 +97,1024,0.0011696815490722656,0.00021719932556152344,144111336520441820361951353465976060489 +98,1024,0.0017032623291015625,0.00031280517578125,90337941374261936021779199406623169247 +99,1024,0.0011284351348876953,0.00022363662719726562,140828903754804735936147309234829136802 diff --git a/data/wesolowski/random_input/2_to_power_10/data_mean_over_10_iterations.png b/data/wesolowski/random_input/2_to_power_10/data_mean_over_10_iterations.png new file mode 100644 index 0000000000000000000000000000000000000000..cc0f273941501379b3e67ea242cd2293db3e2033 GIT binary patch literal 59936 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 literal 0 HcmV?d00001 diff --git a/data/wesolowski/random_input/2_to_power_10/macrostate_repeated_10_times.csv b/data/wesolowski/random_input/2_to_power_10/macrostate_repeated_10_times.csv new file mode 100644 index 0000000..0594724 --- /dev/null +++ b/data/wesolowski/random_input/2_to_power_10/macrostate_repeated_10_times.csv @@ -0,0 +1,11 @@ +,delay,eval time means for 10 iterations (s),eval time std for 10 iterations (s),verify time means for 10 iterations (s),verify time std for 10 iterations (s),input +0,2,0.00020520687103271485,4.122260373581773e-05,6.537437438964843e-05,1.3237325491480996e-05,0 +1,4,0.00023925304412841797,4.0826817720202205e-05,0.00010387897491455078,3.067550468069529e-05,0 +2,8,0.0002107858657836914,5.4148779156590664e-05,7.321834564208985e-05,2.3399447144752093e-05,0 +3,16,0.00021147727966308594,3.408616801055903e-05,7.729530334472656e-05,2.4178512297742678e-05,0 +4,32,0.00023148059844970703,6.249523049732448e-05,8.330345153808593e-05,2.8703282172460087e-05,0 +5,64,0.00021867752075195314,2.4953161800203183e-05,6.847381591796875e-05,1.3772350795304183e-05,0 +6,128,0.0002760171890258789,3.284182632971388e-05,7.576942443847657e-05,1.707013387695563e-05,0 +7,256,0.00033550262451171876,5.39705333526989e-05,7.312297821044922e-05,1.509568090120791e-05,0 +8,512,0.00041954517364501954,7.508776884212574e-05,6.856918334960938e-05,1.3565996200196728e-05,0 +9,1024,0.0007609844207763672,0.00013535116039239216,8.919239044189454e-05,2.864165919773768e-05,0 diff --git a/data/wesolowski/random_input/2_to_power_10/repeated_10_times.csv b/data/wesolowski/random_input/2_to_power_10/repeated_10_times.csv new file mode 100644 index 0000000..2a5b718 --- /dev/null +++ b/data/wesolowski/random_input/2_to_power_10/repeated_10_times.csv @@ -0,0 +1,101 @@ +,delay,eval time (s),verify time (s),input +0,2,0.0002346038818359375,7.43865966796875e-05,49834081952797182703816065733711149781 +1,2,0.00022649765014648438,6.842613220214844e-05,50442234362841470206157660474556038805 +2,2,0.000152587890625,5.245208740234375e-05,44484946316554770767932389748201831386 +3,2,0.0002675056457519531,9.632110595703125e-05,43035925643933906285243752806454327395 +4,2,0.00017261505126953125,5.841255187988281e-05,67740500960805688290263420077227968466 +5,2,0.00015854835510253906,5.936622619628906e-05,1929351496284665583119038757423773809 +6,2,0.00024509429931640625,7.200241088867188e-05,38750081331348039350802540830447072359 +7,2,0.0001628398895263672,5.435943603515625e-05,103839344149880969613167952152546416903 +8,2,0.00020051002502441406,5.507469177246094e-05,212423465895638862404553517084646531323 +9,2,0.00023126602172851562,6.29425048828125e-05,137223352770642377473333508883764099433 +10,4,0.00017571449279785156,5.817413330078125e-05,189380819693320851832506264701104960767 +11,4,0.0002627372741699219,7.963180541992188e-05,116145165419011145277048143392419589681 +12,4,0.0002970695495605469,0.00015544891357421875,42577470579066499447653284796625431270 +13,4,0.00021982192993164062,0.00011157989501953125,202202416879981548666012655198600501300 +14,4,0.00023651123046875,0.00013065338134765625,197000593694139113468996707432258763677 +15,4,0.00028324127197265625,0.0001220703125,141438972946863250989543647044334150397 +16,4,0.00025653839111328125,9.202957153320312e-05,20880394996216503751025724551387293726 +17,4,0.00021457672119140625,0.00012135505676269531,5366473304267864312424546538301242039 +18,4,0.0002639293670654297,0.00010371208190917969,156813488846474725157154474396376904011 +19,4,0.0001823902130126953,6.413459777832031e-05,95968625125085208316498864234006059089 +20,8,0.00017523765563964844,5.2928924560546875e-05,78362932058764719003119207082302145104 +21,8,0.0003192424774169922,8.535385131835938e-05,43002370843626163047007837326783178515 +22,8,0.0002009868621826172,5.53131103515625e-05,166197639661193969073985650369182966967 +23,8,0.00019216537475585938,6.818771362304688e-05,109069174844342219711053194827849899047 +24,8,0.0003006458282470703,0.00013184547424316406,82449613762267730665276629862750139144 +25,8,0.00018262863159179688,6.270408630371094e-05,179175565056238965469515311518567056081 +26,8,0.00018286705017089844,8.368492126464844e-05,190987854743930204899850211026038815976 +27,8,0.000209808349609375,7.05718994140625e-05,116849129139358429670796311846546108809 +28,8,0.00018405914306640625,5.5789947509765625e-05,201740681013257166131273500306221109488 +29,8,0.00016021728515625,6.580352783203125e-05,92907017861128803260543312378137927215 +30,16,0.000263214111328125,0.0001316070556640625,40704782260945684343906693719837262937 +31,16,0.00023317337036132812,7.367134094238281e-05,26499052541164697365263558591960158422 +32,16,0.00019693374633789062,5.888938903808594e-05,89156265430573156314523610463457952819 +33,16,0.00024175643920898438,7.748603820800781e-05,20099802132472793217036931864186897136 +34,16,0.00017571449279785156,5.698204040527344e-05,120223596910631151696157738266903421880 +35,16,0.0002536773681640625,0.00010776519775390625,222814734159739328117860945504547784602 +36,16,0.0002110004425048828,7.414817810058594e-05,56919658872413386925960712997411598092 +37,16,0.00017571449279785156,7.081031799316406e-05,155215240558428229682286851534538986512 +38,16,0.00017547607421875,5.745887756347656e-05,196259037870246784736971950109580480970 +39,16,0.0001881122589111328,6.413459777832031e-05,26887897273533064203730340579759437192 +40,32,0.00018405914306640625,6.008148193359375e-05,51391372766213489228964195865874062996 +41,32,0.0003314018249511719,0.0001270771026611328,80061276084735181169386778014042085669 +42,32,0.00020766258239746094,7.271766662597656e-05,128211533350116396087729441691246986142 +43,32,0.00017547607421875,5.91278076171875e-05,94219729777264017401160812618498728845 +44,32,0.0002779960632324219,9.202957153320312e-05,124113311416462331467193057247869415376 +45,32,0.00018858909606933594,6.151199340820312e-05,125380802833080700281854594537252766409 +46,32,0.00016999244689941406,6.008148193359375e-05,77722233157149079153230374445908413068 +47,32,0.0003371238708496094,0.00013947486877441406,21048997770359236296520276237186214444 +48,32,0.00021576881408691406,7.963180541992188e-05,72022692264600041836052055818254137210 +49,32,0.00022673606872558594,8.130073547363281e-05,74356755298544357322114877731511705730 +50,64,0.00019860267639160156,5.793571472167969e-05,9761391441046067768275473434456030178 +51,64,0.0002002716064453125,5.91278076171875e-05,79055874524065391034091583626193309780 +52,64,0.00021338462829589844,7.700920104980469e-05,57709693334896495338184444843258909031 +53,64,0.0002810955047607422,0.00010442733764648438,132511674159339684310470838154160208276 +54,64,0.00022864341735839844,6.67572021484375e-05,57234568791890684092153870326230236801 +55,64,0.0002243518829345703,6.532669067382812e-05,165129288314669545267580105244589611425 +56,64,0.0002002716064453125,6.580352783203125e-05,42578985925481844383207063113649979458 +57,64,0.00020003318786621094,6.532669067382812e-05,86583857319437000288684110804975880135 +58,64,0.0002124309539794922,5.8650970458984375e-05,22836930436972862136274623074684742583 +59,64,0.0002276897430419922,6.437301635742188e-05,47070734891081198701998263744249394238 +60,128,0.0003139972686767578,6.67572021484375e-05,178302585072085341814231478465724302006 +61,128,0.0002384185791015625,6.341934204101562e-05,63931348013515842601776409057470624469 +62,128,0.0002357959747314453,6.961822509765625e-05,22132828442533923206853946013528168017 +63,128,0.0003361701965332031,0.00010943412780761719,117030636783384323319881597204761287296 +64,128,0.0002951622009277344,8.368492126464844e-05,74019460376800402596717662827971581388 +65,128,0.0002646446228027344,0.00010204315185546875,129903440796302315354461459806071572773 +66,128,0.00025844573974609375,6.175041198730469e-05,79187089559992124009212381017781118298 +67,128,0.00028967857360839844,6.747245788574219e-05,133131456970124899886285025643319149901 +68,128,0.0002510547637939453,6.246566772460938e-05,76782042683411484989728000615112726628 +69,128,0.00027680397033691406,7.104873657226562e-05,129551165518640587604601252429896549009 +70,256,0.0003426074981689453,0.0001125335693359375,167274201112040167614877640120487438536 +71,256,0.0003211498260498047,6.461143493652344e-05,256140158169957243671725943911159412916 +72,256,0.00031495094299316406,7.271766662597656e-05,85536442059070982028225066428451469914 +73,256,0.00044918060302734375,7.486343383789062e-05,70270419545501779040718057899503930067 +74,256,0.0003764629364013672,7.605552673339844e-05,126898533555728956719375805219346351385 +75,256,0.00035762786865234375,5.8650970458984375e-05,163129977038292321436798811841831204532 +76,256,0.00026106834411621094,7.152557373046875e-05,38526627031859516153842968224102082007 +77,256,0.00027823448181152344,6.127357482910156e-05,167779476435053875873845613406020587869 +78,256,0.0003540515899658203,7.367134094238281e-05,259311236103009046096756682465434614799 +79,256,0.00029969215393066406,6.532669067382812e-05,144769142336699494849525459200664508977 +80,512,0.00043964385986328125,6.270408630371094e-05,146072367625558825641608293920631601717 +81,512,0.0005128383636474609,9.298324584960938e-05,22078112489607876744541538649857341849 +82,512,0.0005471706390380859,8.96453857421875e-05,39440365693942230998830469863308205794 +83,512,0.0003917217254638672,7.343292236328125e-05,100120579391009734174244962910693169996 +84,512,0.0003161430358886719,5.6743621826171875e-05,89534184509666580265271072462565187204 +85,512,0.00039649009704589844,5.8650970458984375e-05,102079838490795521618291343028766687951 +86,512,0.00046443939208984375,7.271766662597656e-05,94777757110650719135115631564404431928 +87,512,0.00040221214294433594,5.8650970458984375e-05,13423948403606698126436478540837161978 +88,512,0.00040984153747558594,6.556510925292969e-05,140482556931800313623119793750422190379 +89,512,0.00031495094299316406,5.459785461425781e-05,64513118724650938058531362793191295857 +90,1024,0.0009522438049316406,0.00010466575622558594,1320103005076527793101047728327138486 +91,1024,0.0007612705230712891,8.821487426757812e-05,60213595011299454234987160312385261290 +92,1024,0.0006909370422363281,6.413459777832031e-05,662219914018018820685412279209154609 +93,1024,0.0008237361907958984,8.130073547363281e-05,149134063118065298575889113178008459774 +94,1024,0.0005190372467041016,6.246566772460938e-05,16595597833252115444028657373851299833 +95,1024,0.0007669925689697266,0.00012636184692382812,27232591620182481459195363007576015449 +96,1024,0.0009632110595703125,0.0001430511474609375,41158370237890041055249546598626838068 +97,1024,0.0006630420684814453,6.365776062011719e-05,115432616088521790869195869483487269083 +98,1024,0.000667572021484375,6.175041198730469e-05,236216422533349025898072208677304871632 +99,1024,0.0008018016815185547,9.632110595703125e-05,115321282733432208813831926415565498184 diff --git a/src/crypto_VDF/plotter/grapher.py b/src/crypto_VDF/plotter/grapher.py index 3e000ca..5d686d3 100644 --- a/src/crypto_VDF/plotter/grapher.py +++ b/src/crypto_VDF/plotter/grapher.py @@ -71,7 +71,7 @@ def get_paths(cls, delay_sub_dir: str, iterations: int, input_type: InputType, v input_type_path = vdf_path / str(input_type.value) sub_dir = input_type_path / delay_sub_dir - # create the directories for data + # create the directories for data2 cls.create_directories([vdf_path, input_path, sub_dir]) input_file_name = f"repeated_{iterations}_times.csv" diff --git a/src/crypto_VDF/plotter/wesolowski_grapher.py b/src/crypto_VDF/plotter/wesolowski_grapher.py index 8ccccb9..977e619 100644 --- a/src/crypto_VDF/plotter/wesolowski_grapher.py +++ b/src/crypto_VDF/plotter/wesolowski_grapher.py @@ -106,7 +106,7 @@ def collect_wesolowski_complexity_data(self, fix_input: bool = False, _verbose: store_measurements: bool = True) -> CollectVDFData: data = self.generate_wesolowski_complexity_data(fix_input=fix_input) - _log.info("[COLLECT-VDF-DATA] Finished generating the data") + _log.info("[COLLECT-VDF-DATA] Finished generating the data2") input_data = self.get_macrostate(data=data) if store_measurements: Grapher.store_data(filename=self.paths.measurements_file_name, data=data) diff --git a/src/crypto_VDF/utils/utils.py b/src/crypto_VDF/utils/utils.py index 0d1a920..f785b25 100644 --- a/src/crypto_VDF/utils/utils.py +++ b/src/crypto_VDF/utils/utils.py @@ -183,7 +183,7 @@ def get_current_file_abs_path(file): return os.path.realpath(file) -def create_path_to_data_folder(dataFolderName="data"): +def create_path_to_data_folder(dataFolderName="data2"): return os.path.join( os.path.dirname( os.path.dirname( @@ -196,7 +196,7 @@ def create_path_to_data_folder(dataFolderName="data"): ), dataFolderName) -def create_path_to_data_folder_v2(dataFolderName="data") -> Path: +def create_path_to_data_folder_v2(dataFolderName="data2") -> Path: return Path(os.path.join( os.path.dirname( os.path.dirname(