porespy icon indicating copy to clipboard operation
porespy copied to clipboard

Memory profile snow2

Open ma-sadeghi opened this issue 3 years ago • 4 comments

On our 256GB-memory server, I couldn't do extraction for images larger than 1200^3. Given that a 1200^3 image stored in float64 roughly takes up ~14GB of memory, snow2 is using ~18 times that amount, which is not not an order of magnitude off, but I think could be improved 2-3X.

Here are some ideas:

  • Maybe we're using float64 in some places where int64 (or even int32) could do the job.
  • I don't think the distance transform needs to be exact down 16 digits, so maybe we could use float32 or even float16?

ma-sadeghi avatar Aug 13 '21 17:08 ma-sadeghi

All good points....but I was able to do a 1100 by 1100 by 2800 on that sever earlier this week. I used [2, 2, 8] as the chunk size.

jgostick avatar Aug 13 '21 17:08 jgostick

Per the discussion w/ @jgostick, the issue is multiphase extraction. It seems that memory usage builds up.

ma-sadeghi avatar Aug 13 '21 19:08 ma-sadeghi

Try this: https://github.com/plasma-umass/scalene

jgostick avatar Mar 29 '22 15:03 jgostick

image

ma-sadeghi avatar Apr 19 '22 15:04 ma-sadeghi