Python Subprocess vs Windows Batch file performance/preference


As a part of my research/dissertation-work I am writing custom modules to include some Radiance components, in addition to what is present in Honeybee, into my workflow. I noticed that the Honeybee source code employs Popen as well as a windows batch files. Is there a specific reason to use one over the other in Grasshopper?

I have a fairly decent understanding of Radiance and Python but I haven’t used Grasshopper enough to be aware of any issues that it might have with IronPython/Ghpython integration. So, any inputs from the veteran developers on this forum would be of great help. Thanks !


Hi Sarith,

The result will be very similar. I use Popen in cases that the analysis doesn’t take long time (e.g. evalglare), or I don’t want command editor to pop-up during the analysis. Also I had a better experience with Popen for permission issues. That’s why I use it for FalseColor.exe for instance.

Excited to see the results of your research. Are you going to present it at Radiance’s workshop this year?



Hi Mostapha,

Thanks for these inputs. It would have taken me a while to figure this out by myself by trial and error. As far as the Radiance conference goes, although I am attending and am contributing to a couple of presentations, I m not presenting any of my research over there.

By the way, are you looking for any collaborators/developers for the Radiance aspect of Honeybee and Ladybug ? If yes, are there any specific areas that you are interested in developing? I might be able to pitch in with some scripts.


Hi Sarith,

Glad that it helped. I will see you on Monday then. Nice!

We’re always looking for collaborators. My answer almost always is what is the thing that you want to do the most? on our list implementing the 3 Phase method is long overdue. If you can give us a hand to get that sorted out it would be great.

Dynamic shading controlled by .csv for daylight simulation, in Honeybee legacy