What is the fastest/most efficient method to execute an executable from python?  It seems to me that os.system is faster than subprocess.popen.   I would like to be able to read the lines that come out of this other process, but far more important than anything else is speed.
I would expect any speed difference between, say, os.system and os.execv and subprocess.Popen, to be swamped by the expense of starting a new process (and the context-switching needed to actually run it). Therefore I recommend using subprocess first and measuring the performance.
One possible performance consideration: os.system and subprocess.Popen(shell=True, ...) cause an extra shell process to be created. In most cases, that shell isn't necessary. It's wasteful to create it; you get twice as many processes as you need for no benefit.
fastest way to invoke a process from python?