Hi guys, my name is Florian and I'm new in using BRL. Can some of tell me if it's possible to execute MGED in particular the nirt command in parallel computing mode. I want to use more than one CPU to reduce the time for raytracing. Thank you! Cheers!
Hi @Florian -- it is outside of mged with parallel scripting but it's a little advanced to set it up. it's not possible inside mged with nirt, but it may be possible to do what you need with 'rt' or one of the other tracers that do have built-in support for parallel. Can you describe more specifically what it is you're trying to achieve?
Hi @Sean -- Basically, I want to run a tcl script which raytraces my model with around 1000 nirt commands in a loop. This takes superlong on my computer so I decided to run it on a cluster of 8 CPUs. But ressource monitoring shows that only on of the cores is used during the execution of the script. I want to use the full capabilities of the cluster to shorten the computition.
@Florian but I mean what are you doing with those nirt rays? Depending on what you're doing with the result, you might be able to use a different tool like rt (which is about 10 orders of magnitude faster).
1000 rays is a sub-second task on all but the most complex scenes (talking 10's of GBs or huge nurbs)
If it's not something that can be handled by rt, then I'll see if I can work our a recipe for faster nirt invocation.
@Sean I need the output for an xml file describing a model I want use for radiation analysis. So I'm not using nirt for a classic raytracing. Does rt also provide line of sight thicknesses for each model component the ray traverses? If yes, then I could probably use rt.
BTW disc space is not a problem, I have 800Gb SSD.
@Florian here's some code that might inspire you to get started https://github.com/nmz787/python-brlcad-tcl/blob/master/python_brlcad_tcl/brlcad_tcl.py#L281
It would not be too hard to partition the model space into 8 chunks and start a subprocess for each
Last updated: Jan 09 2025 at 00:46 UTC