Я тестировал различные методы, чтобы сократить время, необходимое для компиляции всего моего проекта на С ++. В настоящее время это занимает ~ 5 минут. Я экспериментировал с distcc, ccache и другими. Недавно я обнаружил, что если я скопирую весь свой проект на RAM-диск, а затем откомпилирую его, это сократит время компиляции до 30% от исходного - всего 1,5 минуты.
Очевидно, что работа с RAM-диска не практична. Итак, кто-нибудь знает, как я могу заставить ОС всегда сохранять определенный каталог в кэше ? Я все еще хочу, чтобы каталог синхронизировался обратно на диск, как обычно, но я всегда хочу и копию данных в памяти. Это возможно?
РЕДАКТИРОВАТЬ:
Как возможное решение, мы только что подумали о запуске демона, который запускается rsync
каждые 10 секунд или около того, чтобы синхронизировать диск с RAM-диском. Затем мы запускаем компиляцию с RAM-диска. Это rsync
быстро, но будет ли это работать? Конечно, ОС может работать лучше ....
time
свой сборник и поделиться с нами результатом? Это бы развеяло некоторые противоречия. make clean && /usr/bin/time -v make
(не используйте встроенную time
команду bash )
time
встроенный в bash ( help time
) содержит гораздо меньше деталей (без подробных опций), чем время GNU ( man time
) относительно ввода / вывода, переключений контекста, ...