продукт для уменьшения времени компиляции c ++? - PullRequest
3 голосов
/ 26 января 2009

Есть ли продукты, которые уменьшат время сборки c ++? что можно использовать с msvc?

Ответы [ 4 ]

13 голосов
/ 26 января 2009

Если это должен быть продукт, посмотрите на Xoreax IncrediBuild , который распределяет сборку по машинам в сети.

Кроме этого:

  • твердосплавные машины. Оперативная память, как она подходит, использовать быстрые отдельные диски
  • Разделение на отдельные проекты (библиотеки DLL, библиотеки). Они тоже могут строить параллельно (используйте двойной четырёхъядерный процессор, и диск легко становится узким местом)
  • Интеллектуальное использование заголовков, включая предварительно скомпилированные заголовки. Это не легко, и часто есть другие заинтересованные стороны. PIMPL тоже помогает.
6 голосов
/ 26 января 2009

Использование предварительно скомпилированных заголовков может сократить время компиляции.

2 голосов
/ 26 января 2009

Посмотрите на MPCL .

Это плагин для Microsoft Visual C ++ 2005 и Visual C ++ 2008, который позволяет максимально использовать процессор для минимизации времени компиляции вашего проекта.

Он компилирует несколько файлов .c / .cpp одного и того же проекта параллельно для достижения этого. Это особенно полезно, если у вас есть двухъядерный / четырехъядерный / многоядерный процессор.

0 голосов
/ 26 января 2009

Рассматривали ли вы общий сервер сборки? MSVC будет работать на терминальном сервере, и вы сможете амортизировать стоимость процессоров, оперативной памяти и быстрых дисков в команде разработчиков. В качестве дополнительного преимущества этот сервер терминалов может также содержать систему контроля версий, поэтому проверки выполняются быстро.

...