Author: eudoxos
Date: 2009-03-08 22:15:35 +0100 (Sun, 08 Mar 2009)
New Revision: 1713

Modified:
   trunk/examples/collider-perf/perf.py
   trunk/gui/py/timing.py
   trunk/gui/py/utils.py
   trunk/pkg/dem/PreProcessor/TriaxialTest.cpp
Log:
1. Fix crashed in TriaxialTest introduced by me a few days ago (referencing 
engine before being created)
2. Add simple (working?) memory usage query to utils and collider perf test.


Modified: trunk/examples/collider-perf/perf.py
===================================================================
--- trunk/examples/collider-perf/perf.py        2009-03-07 09:16:36 UTC (rev 
1712)
+++ trunk/examples/collider-perf/perf.py        2009-03-08 21:15:35 UTC (rev 
1713)
@@ -1,5 +1,5 @@
 
-utils.readParamsFromTable(nSpheres=1000,collider='PersistentSAPCollider',noTableOk=True)
+utils.readParamsFromTable(nSpheres=8000,collider='PersistentSAPCollider',noTableOk=True)
 # name of file containing sphere packing with given number of spheres
 spheresFile="packing-%dk.spheres"%(nSpheres/1000)
 
@@ -20,8 +20,10 @@
 O.dt=utils.PWaveTimeStep()
 utils.replaceCollider(StandAloneEngine(collider))
 
+mem0=utils.vmData()
 O.step()
 timing.stats()
+print 'Extra memory:',utils.vmData()-mem0,'kB'
 timing.reset()
 O.run(100,True)
 timing.stats()

Modified: trunk/gui/py/timing.py
===================================================================
--- trunk/gui/py/timing.py      2009-03-07 09:16:36 UTC (rev 1712)
+++ trunk/gui/py/timing.py      2009-03-08 21:15:35 UTC (rev 1713)
@@ -57,12 +57,6 @@
                print _formatLine('TOTAL',totalTime,-1,totalTime,level); 
lines+=1
        return lines
 
-#[label,absTime,relTime,[
-#      [sub1label,sub1absTime,sub1RelTime], 
-#      …]],
-#label2,absTime2,relTime2,
-#      ]
-
 def stats():
        print 'Name'.ljust(_statCols['label'])+' 
'+'Count'.rjust(_statCols['count'])+' '+'Time'.rjust(_statCols['time'])+' 
'+'Rel. time'.rjust(_statCols['relTime'])
        print '-'*(sum([_statCols[k] for k in _statCols])+len(_statCols)-1)

Modified: trunk/gui/py/utils.py
===================================================================
--- trunk/gui/py/utils.py       2009-03-07 09:16:36 UTC (rev 1712)
+++ trunk/gui/py/utils.py       2009-03-08 21:15:35 UTC (rev 1713)
@@ -431,3 +431,13 @@
                        break
        if colliderIdx<0: raise RuntimeError("No Collider found within 
O.engines.")
        
O.engines=O.engines[:colliderIdx]+[colliderEngine]+O.engines[colliderIdx+1:]
+
+
+def procStatus(name):
+       import os
+       for l in open('/proc/%d/status'%os.getpid()):
+               if l.split(':')[0]==name: return l
+       raise "No such line in /proc/[pid]/status: "+name
+def vmData():
+       l=procStatus('VmData'); ll=l.split(); assert(ll[2]=='kB')
+       return int(ll[1])

Modified: trunk/pkg/dem/PreProcessor/TriaxialTest.cpp
===================================================================
--- trunk/pkg/dem/PreProcessor/TriaxialTest.cpp 2009-03-07 09:16:36 UTC (rev 
1712)
+++ trunk/pkg/dem/PreProcessor/TriaxialTest.cpp 2009-03-08 21:15:35 UTC (rev 
1713)
@@ -62,7 +62,6 @@
 
 #include<yade/pkg-common/BodyRedirectionVector.hpp>
 #include<yade/pkg-common/InteractionVecSet.hpp>
-#include<yade/pkg-common/InteractionHashMap.hpp>
 #include<yade/pkg-common/PhysicalActionVectorVector.hpp>
 
 #include<yade/extra/Shop.hpp>
@@ -257,6 +256,8 @@
        rootBody->physicalActions               = 
shared_ptr<PhysicalActionContainer>(new PhysicalActionVectorVector);
        rootBody->bodies                        = shared_ptr<BodyContainer>(new 
BodyRedirectionVector);
 
+       createActors(rootBody);
+
        shared_ptr<Body> body;
 
 
@@ -402,7 +403,6 @@
        }       
 
        if(defaultDt<0) defaultDt=Shop::PWaveTimeStep();
-       createActors(rootBody);
 
        return true;
 }


_______________________________________________
Mailing list: https://launchpad.net/~yade-dev
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~yade-dev
More help   : https://help.launchpad.net/ListHelp

Reply via email to