Ben Elliston <[EMAIL PROTECTED]> writes: > On Sun, 2008-06-22 at 07:32 -0700, Ian Lance Taylor wrote: > >> I think it would only be a few days of work for somebody familiar with >> Tcl to add -j support to DejaGNU. I think that would be a very useful >> contribution to gcc development. > > What did you have in mind, Ian? That DejaGnu would run .exps in > parallel? Perhaps what I tried is more complicated than what you are > proposing.
Running .exps in parallel wouldn't help much with the gcc testsuite. What would help is for functions like c-torture-execute and dg-runtest to run tests in parallel. It seems to me that that could be done fairly easily by maintaining a fixed number of concurrent executions, and using system to execute them all in the background. As one execution finished, the script would start another one. Each execution would write to its own temporary log file. The master script would gather the log files and write them out in the appropriate order. This assumes that executing a single test does not change any DejaGNU global variable; it might be necessary to change code to ensure that. This feature could not be used when executing programs on a target board or when using DejaGNU to drive a compiler running on a different host; however, that is not the common case. Ian