dopNet simulation.memusage() and memory performance

   1340   0   0
User Avatar
Member
3 posts
Joined: Jan. 2016
Offline
Hi,

I've some question about the dopNet, and the memory performance:

I currently querying the memory used in this way

def memConsumed():
    try:
        sim = hou.node("../.").simulation() 
        return "%s" %(str(hou.DopSimulation.memoryUsage(sim)*0.000001))
    except:
        return "NONE"
sys.stderr.write("\nMEM CONSUMED :   %s MB" %(memConsumed()))

A) Is working but the memory usage is quite different off from the memoryGrowth on the performance profile, is this last on reliable for the dopNet?
B) I'm looking some method to go more in deep, I saw every object have record of the memusage, but unfortunately this one is not the sum of every child dependency in the network, example:

memoryUsage(x) = 10000000000

SIM_Objcet > 100
SIM_SolverMulti > 150
SIM_SolverSop(01) > 75
GAS_SubStep > 5000
… > 30
… > 999999
SIM_SolverSop(02) > 350

It may have sense to check the “self memory consumed”, but in a debug prospective this is not really efficient IMHO
Is there anyway to have the memusage reporting the value with the summing of the child value?

C) There are any record field that describe if any gas solver is multithreaed or not? right now the only way that i find to see is is to turn on a profile and check rolling over for each microsolver.

D) any way to read the time usage for each node? (without dealing with the infoTree, I was expecting sidefx putting a field in the basic record for that like memusage )

E) there is anyway to append the profile file .hperf frame by frame? right now I'm saving a profile file for each stub-step

so far this is my output

SIM TIME     :   14.25 Frame
MEM CONSUMED :   43.389147 MB
TIME CONSUMED:   0:00:02.204154 s
POINTS       :   508702

 --- SIMULATION DATA ---  
Object: staticobject1  
 |_ MEM USAGE    :   0.000361 MB
 |_ DATA TYPE    :   SIM_Object  
Object: HELLO  
 |_ MEM USAGE    :   0.000561 MB
 |_ DATA TYPE    :   SIM_Object  
 |_ surface FIELD:  
 |     |_ DIV SIZE     :   0.01
 |     |_ VOXEL COUNT  :   198476
 |     |_ SIZE         :   [0.58, 0.59, 0.58]
 |     |_ SLICE        :   0
 |     |_ MEM CONSUMED :   0.772624 MB
 |_ vel FIELD:  
 |   |_ MEM CONSUMED :   0.722936 MB
 |_ pressure FIELD:  
 |   |_ MEM CONSUMED :   0.003616 MB
 |_ collision FIELD:  
 |   |_ MEM CONSUMED :   0.003616 MB
 |_ collisionvel FIELD:  
 |   |_ MEM CONSUMED :   0.007688 MB
 |_ source FIELD:  
 |   |_ MEM CONSUMED :   0.0036 MB
 |_ viscosity FIELD:  
 |   |_ MEM CONSUMED :   0.0036 MB
 |_ stickvel FIELD:  
 |   |_ MEM CONSUMED :   0.007688 MB
 |_FORCES:
     |_ Gravity_gravity1  
         |_ MEM CONSUMED :   0.000584 MB

-------------------------------------------------

Profiler stopped and archived
Profiles saved: /xxxxx_20180904_10_51_19/14.25.hperf


(note the field are a list of interested one)
I still need to work to read the solver process and collect all the info to process a % print




thanks,
Simone.
Edited by cily - Sept. 4, 2018 13:16:00
  • Quick Links