I have a new Core2 WinXP SP3 machine (Dell E7400, 3GB RAM) with uVision2 installed on it. My new work has an application that needs to be built using a few batch scripts to compile the whole project. Using my new pc it takes about 19 minutes to perform all the compiling tasks. I decided to see if there was any way to improve performance as my collegue only takes 12 minutes to compile the same project on a slower P4 pc. I created a WinXP SP3 Virtual Machine for testing and I installed Keil there to see how long the build would take. On the VM it took 7 minutes to compile the whole project! Can anyone help me improve the performance of uVision2!? Seems crazy that my VM is more than twice as fast as my standard environment. I don't want to have to switch between the two the whole time, otherwise I may as well work out of the VM the whole time. Is there a way to force uVision to only use 1 core as it seems to work better...
I do not do windows.
I do not know how it was done.
However an IP guy did, when I complained, exclude some files (and subdirectories) from the eternal scan and installed a midnight scan of those instead.
Erik
"We" use McAfee and it does EXACTLY what you describe. I can build in less the half the time in a VM session. If I turn off McAfee, the Real session builds slightly faster then the VM session.
I would bring up the Task Manager (as Per says) and look for the highest CPU time items while you are running in the "Real World". This should tell you what is taking your time. (My guess is still Anti-Virus, but that is only because I can fully duplicate the issue you are describing that way)
The traditional way to improve build times on a multi-core or multi-processor machine is to replace the scripts with a Makefile and then use a version of Make that supports parallel compilations.
On the other hand, you have to figure out exactly what is slowing down your builds. Write cache on/off can affect write speeds significantly for a disk. And if the disk is run without DMA, the system load will be very high. But also check in the task manager if you can see if any program is taking much CPU capacity. Any busy antivirus program should show up.
We're using NOD32 as our av and when I disable or exclude keil/my project from the live scanning it doesn't seem to make any difference to the build time.
Aggressive anti-virus software WILL cause this. Software anti-virus software will check EVERY exe that gets called for a virus. The compiler executable is called for every filed that is compiled so it is checked often. Disable the anti-virus software.
View all questions in Keil forum