Any performance problems of exec task on windows?


(Willie) #1

I am trying really hard to debug an issue im having with Pygradle. Pip installs take many orders of magnitude longer to run on windows than linux. We are talking the test suite takes 5 minutes on linux and north of 45 minutes on windows.

Now this is the code in pygradle that executes the pip command

ExecResult installResult = project.exec { ExecSpec execSpec ->
                    execSpec.environment mergedEnv
                    execSpec.commandLine(commandLine)
                    execSpec.standardOutput = stream
                    execSpec.errorOutput = stream
                    execSpec.ignoreExitValue = true
                }

Im at the point of grasping at straws for why this takes so long so im asking of anyone has noticed significant performance issues with this method on windows. Possibly the exec closure spins up another copy of Groovy to run the command? I don’t really know, I’m stumped.


(Sterling Greene) #2

I don’t know if @ethankhall has noticed anything like that.

My suspicion would be that it’s compiling on Windows and the Linux builds are cached already. Or the compilation on Windows is just much, much slower.


(Willie) #3

Yea, i was working with ethan on this earlier. we couldn’t figure it out.

The compilation thing is interesting, i didn’t think of that. I guess if pip is using a source install it would precompile all the py files hu. i will look in on that, may be on to something there.