| 個人檔案Windows Live-Space部落格網路 | 說明 |
|
|
8月15日 Best Practice: Speed up your Team BuildsIf you use Team Foundation Server 2008 as you probably know - you also have to use the 2008 Build Agents. What you might not know - since it is not activated by default - is the fact that 2008's Team Builds can be run in parallel processes on your build agent. Therefore the build (compile) time can be reduced by a significant figure. How do I activate parallel builds on my 2008 Build Agent?What you need to do is configure your build agent's "Visual Studio Team Foundation Build" (display name in process explorer) service's coninguration file to use more than one process to execute your team build jobs. You should find the config file on your build machine in a location similar to this: <Drive:>\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\tfsbuildservice.exe.config Within the tfsbuildservice.exe.config file you have to look for the the "MaxProcesses" key and increase the value to the number that fits for your build agent - e.g. number of cores available. After you save you changes to the tfsbuildservice.exe.config file you need to restart the "Visual Studio Team Foundation Build" on your build machine using the windows services explorer. After the restart the service runs with your new configuration setting. What has actually changed now?After your change in the tfsbuildservice.exe.config team build will build different ConfigurationToBuild's of you team build in parallel. This should not cause any problems four your existing team builds since different configurations are treated independently from each other during the build process. If you don't want your team build to build ConfigurationToBuild in parallel you can always add a BuildConfigurationsInParallel property to your team build script preventing team build to do so. Not only ConfigurationToBuild will be build in parallel - also your SolutionsToBuild will be build in parallel. This can cause errors when executing team builds that have dependencies between different solutions. Therefore you might have to insert a BuildSolutionsInParallel property to you team build preventing team build from building solutions in parallel. So what has left?Even if you don't build different configurations or you are not able to build your solutions in parallel due to inter solution dependencies team build will still speed up compilation of you solutions. The projects of your solutions are build in parallel if dependencies allow it - this way you will still have a gain in build speed and decrease the time it takes for your team build to finish. I hope this description is clear enough for you to "Speed up your Team Builds". If you have any questions drop me a line please. Stay tuned. Tom 回應 (4)引用通告此內容的引用通告是: http://riskresolution.spaces.live.com/blog/cns!8E06D0A06D7890AA!246.trak 引述這則內容的部落格
|
|
|