X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=course%2Fsemester2%2Fpprog%2Fassignment1%2Fget_data.py;h=04ad2bec4d8781235598802c465bfcbbd510b7aa;hb=6529f76db3022ec72ca7718d5e2bc3f176b474e9;hp=8ef824107b23fb48a0927dd80d64360ae2ad39a6;hpb=c2c6a38870351a5702913ce8a97c25c51662a59c;p=matches%2Fhonours.git diff --git a/course/semester2/pprog/assignment1/get_data.py b/course/semester2/pprog/assignment1/get_data.py index 8ef82410..04ad2bec 100755 --- a/course/semester2/pprog/assignment1/get_data.py +++ b/course/semester2/pprog/assignment1/get_data.py @@ -12,10 +12,13 @@ import Gnuplot, Gnuplot.funcutils plot = Gnuplot.Gnuplot(persist=0) programs = { - "single-thread" : "./single-thread/nbody -g -v 5" + "single-thread" : "./single-thread/nbody -v 5" } -for n in range(1, 5): - programs.update({"mthread"+str(n) : "./mthread/nbody -g -v 5 -n "+str(n)}) +for n in range(2, 6): + programs.update({"mthread"+str(n) : "./mthread/nbody -v 5 --pedantic-graphics -n "+str(n)}) + programs.update({"mthread"+str(n) : "./mthread/nbody -v 5 -n "+str(n)}) + #programs.update({"slow-mthread"+str(n) : "./mthread/nbody-slow --pedantic-graphics -v 5 -n "+str(n)}) + #programs.update({"openmp"+str(n) : "./openmp/nbody -v 5 --pedantic-graphics -n " +str(n)}) @@ -29,8 +32,8 @@ def RunProgram(string): def RunForSteps(program, field, steps): results = [] - #print(str(program) + " -s "+str(steps) + " " + str(field)) - results.append(RunProgram(str(program) + " -s "+str(steps) + " " + str(field))) + print(str(program) + " -s "+str(steps) + " " + str(field)) + results = RunProgram(str(program) + " -s "+str(steps) + " " + str(field)) return results def VaryField(program, steps, fields): @@ -56,12 +59,18 @@ def main(argv): fields = map(int, os.listdir("fields")) fields.sort(key = lambda e : e) + ignore = [10, 100] for n in fields: + if n in ignore: + continue for p in data.keys(): - data[p] = [RunForSteps(programs[p], "fields/"+str(n), 200), n] + data[p] = RunForSteps(programs[p], "fields/"+str(n), 200) #print(str(data[p])) - if (len(data[p]) > 0): - plot.replot(Gnuplot.Data(data[p][0], title=str(p)+":"+str(n), with_="lp linecolor "+str(fields.index(n)))) + + #print(str(data.items())); + for d in sorted(data.items(), key = lambda e : e[1][len(e[1])-1][1]): + if (len(d[1]) > 0): + plot.replot(Gnuplot.Data(d[1], title=str(d[0])+":"+str(n), with_="lp")) #linecolor "+str(fields.index(n)))) #print(str(data.items())) # Score the programs