Ticket #6615 (closed: fixed)
Review/Fix precompiled headers
Reported by: | Martyn Gigg | Owned by: | Martyn Gigg |
---|---|---|---|
Priority: | critical | Milestone: | Release 2.5 |
Component: | Mantid | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Tester: | Nick Draper |
Description
There seem to be some issues with the precompiled headers with VS2010 that sometimes if you changed a dependent header then the pch file didn't recompile.
This needs to be solved as they give a huge speed up to the build
Change History
comment:1 Changed 8 years ago by Martyn Gigg
- Summary changed from Review precompiled headers to Review/Fix precompiled headers
comment:3 Changed 8 years ago by Martyn Gigg
Improve precompiled header support. Refs #6615
The .cpp files that support them are now auto-generated and the files now properly regenerate if a dependency changes.
Changeset: 94b422a70b10ea67952c0c44f064e63f87033802
comment:4 Changed 8 years ago by Martyn Gigg
Improve precompiled header support. Refs #6615
The .cpp files that support them are now auto-generated and the files now properly regenerate if a dependency changes.
Changeset: b63cc9fd96e2415135f1defa291f91d88556f7ba
comment:5 Changed 8 years ago by Martyn Gigg
Replace pch limit to avoid msbuild error. Refs #6615
Only seems to occur on the commandline.
Changeset: c37fb9464d47816e8548556af87d4e345f1b3f01
comment:6 Changed 8 years ago by Martyn Gigg
Set /Zm for MSVC compiler if it does not exist. Refs #6615
Changeset: 043d976c9570b54ff707eae9c7f2fb34fd66cd85
comment:7 Changed 8 years ago by Martyn Gigg
- Status changed from accepted to verify
- Resolution set to fixed
Tester: This applies to Windows only at the moment. There is a cmake flag called USE_PRECOMPILED_HEADERS. If set to true then Visual Studio should use precompiled headers as part of the build and it will be substantially faster.
On the build server Algorithms went from 1min 50secs to 44 secs with them turned on.
comment:8 Changed 8 years ago by Martyn Gigg
Committed against the wrong ticket by accident:
Generate precompiled header cpp only once. Refs #5537
Changeset: 4671b9fe4bbe15e4797c59ed541eb9069356abb7
comment:9 Changed 8 years ago by Martyn Gigg
Remove force set lines that causes a whole rebuild. Refs #6615
Changeset: 9ab6d7f1bac04f2e4c376d24267314b751db8928
comment:10 Changed 8 years ago by Nick Draper
- Status changed from verify to verifying
- Tester set to Nick Draper
comment:11 Changed 8 years ago by Nick Draper
- Status changed from verifying to closed
The overall effect on the Win 7 build server is not too noticeable, perhaps this is fue to the SSD and large computing power.
Windows 32 bit is vastly improved, overall clean build and test time dropped from 60 mins to 45.
My laptop build speed has roughly doubled or better.
comment:12 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 7461