[cig-commits] commit: Fix run time estimates
Mercurial
hg at geodynamics.org
Sun Jul 3 20:04:33 PDT 2011
changeset: 16:d8faa10b1580
user: Walter Landry <wlandry at caltech.edu>
date: Tue Jun 21 16:00:25 2011 -0700
files: SeismoWebPortal/management.py SeismoWebPortal/models.py
description:
Fix run time estimates
diff -r f2255ddb10cb -r d8faa10b1580 SeismoWebPortal/management.py
--- a/SeismoWebPortal/management.py Tue Jun 21 15:59:22 2011 -0700
+++ b/SeismoWebPortal/management.py Tue Jun 21 16:00:25 2011 -0700
@@ -130,32 +130,32 @@ def randomName():
def createClusters():
- models.Cluster.objects.create(
- name = "Lonestar",
- url = "http://www.tacc.utexas.edu/resources/hpcsystems/#lonestar",
- daemonCode = randomName(),
- ring = 10,
- order = 10,
- suFactor = 1.935,
- )
+ # models.Cluster.objects.create(
+ # name = "Lonestar",
+ # url = "http://www.tacc.utexas.edu/resources/hpcsystems/#lonestar",
+ # daemonCode = randomName(),
+ # ring = 10,
+ # order = 10,
+ # suFactor = 1.935,
+ # )
- models.Cluster.objects.create(
- name = "CITerra",
- url = "http://citerra.caltech.edu/",
- daemonCode = randomName(),
- ring = 20,
- order = 10,
+ # models.Cluster.objects.create(
+ # name = "CITerra",
+ # url = "http://citerra.caltech.edu/",
+ # daemonCode = randomName(),
+ # ring = 20,
+ # order = 10,
- # We compute CITerra's hypothetical TeraGrid SU conversion
- # factor by comparing its performance to Lonestar for a given
- # Specfem run.
+ # # We compute CITerra's hypothetical TeraGrid SU conversion
+ # # factor by comparing its performance to Lonestar for a given
+ # # Specfem run.
- # pangu Nex=240 rl=20.16462: 164.593911119 minutes * 216 procs = 35552.284801704001 cpu minutes
- # - vs -
- # lonestar Nex=240 rl=20.16462: 129.221072733 minutes * 216 procs = 27911.751710328001 cpu minutes
- # => 27911.751710328001 * 1.935 / 35552.284801704001 = 1.5191496091102434
- suFactor = 1.519,
- )
+ # # pangu Nex=240 rl=20.16462: 164.593911119 minutes * 216 procs = 35552.284801704001 cpu minutes
+ # # - vs -
+ # # lonestar Nex=240 rl=20.16462: 129.221072733 minutes * 216 procs = 27911.751710328001 cpu minutes
+ # # => 27911.751710328001 * 1.935 / 35552.284801704001 = 1.5191496091102434
+ # suFactor = 1.519,
+ # )
return
diff -r f2255ddb10cb -r d8faa10b1580 SeismoWebPortal/models.py
--- a/SeismoWebPortal/models.py Tue Jun 21 15:59:22 2011 -0700
+++ b/SeismoWebPortal/models.py Tue Jun 21 16:00:25 2011 -0700
@@ -388,9 +388,9 @@ NCHUNKS_CHOICES = (
(6, 'global (6 chunks)'),
)
-oneThruNine = tuple([(i, str(i)) for i in xrange(4, 17, 4)])
-NPROC_CHOICES = oneThruNine
-NEX_C_CHOICES = oneThruNine
+fourThru16 = tuple([(i, str(i)) for i in xrange(4, 17, 4)])
+NPROC_CHOICES = fourThru16
+NEX_C_CHOICES = fourThru16
def nexValidator(nprocKey):
@@ -526,14 +526,12 @@ class Specfem3DGlobeParameters(Model, Ed
return not self.mesh.nchunks == 6
def runTime(self, run, cluster):
- mesh = self.mesh.archivalObject()
- perfSet = Specfem3DGlobePerformance.objects.filter(cluster = cluster, mesh = mesh)
- if not perfSet.count():
- return None
- perf = perfSet.get()
- time = (perf.overhead +
- perf.timeFactor * run.record_length +
- perf.stationFactor * run.stationList.station_set.count())
+ mesh = self.mesh
+
+ # Time in minutes. Based on a run with 192*192*192 points
+ time=30+ mesh.nex_xi()*mesh.nex_eta()*mesh.nex_xi()*run.record_length/ \
+ (mesh.nproc_xi * mesh.nproc_eta * (192*192*192*10.0/(4*4))/400.0)
+
return time
def cost(self, run, cluster):
More information about the CIG-COMMITS
mailing list