mirror of
https://github.com/codex-storage/das-research.git
synced 2025-02-23 08:18:14 +00:00
plot progress per run
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
This commit is contained in:
parent
eb4f451303
commit
dc51727b32
@ -3,6 +3,7 @@
|
||||
import networkx as nx
|
||||
import logging, random
|
||||
import pandas as pd
|
||||
import matplotlib
|
||||
from functools import partial, partialmethod
|
||||
from datetime import datetime
|
||||
from DAS.tools import *
|
||||
@ -13,7 +14,7 @@ from DAS.validator import *
|
||||
class Simulator:
|
||||
"""This class implements the main DAS simulator."""
|
||||
|
||||
def __init__(self, shape, config):
|
||||
def __init__(self, shape, config, execID):
|
||||
"""It initializes the simulation with a set of parameters (shape)."""
|
||||
self.shape = shape
|
||||
self.config = config
|
||||
@ -24,6 +25,7 @@ class Simulator:
|
||||
self.logLevel = config.logLevel
|
||||
self.proposerID = 0
|
||||
self.glob = []
|
||||
self.execID = execID
|
||||
|
||||
# In GossipSub the initiator might push messages without participating in the mesh.
|
||||
# proposerPublishOnly regulates this behavior. If set to true, the proposer is not
|
||||
@ -240,6 +242,16 @@ class Simulator:
|
||||
progress = pd.DataFrame(progressVector)
|
||||
if self.config.saveProgress:
|
||||
self.result.addMetric("progress", progress.to_dict(orient='list'))
|
||||
if self.config.plotProgress:
|
||||
progress.plot.line(subplots = [[cnS, cnN, cnV], [cnT0], [cnT1, cnR1, cnD1], [cnT2, cnR2, cnD2]],
|
||||
title = str(self.shape))
|
||||
if not os.path.exists("results"):
|
||||
os.makedirs("results")
|
||||
if not os.path.exists("results/"+self.execID):
|
||||
os.makedirs("results/"+self.execID)
|
||||
filePath = "results/"+self.execID+"/"+str(self.shape)+".png"
|
||||
matplotlib.pyplot.savefig(filePath)
|
||||
|
||||
self.result.populate(self.shape, missingVector)
|
||||
return self.result
|
||||
|
||||
|
@ -22,6 +22,10 @@ dumpXML = 1
|
||||
|
||||
# save progress vectors to XML
|
||||
saveProgress = 1
|
||||
|
||||
# plot progress for each run to PNG
|
||||
plotProgress = 1
|
||||
|
||||
visualization = 1
|
||||
logLevel = logging.INFO
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user