Я знаю, что это не столько вопрос программирования, сколько вопрос.
Я работаю над довольно большим кроссплатформенным проектом . В Windows я использую VC ++ 2008. В Linux я использую gcc. В проекте около 40 тыс. Файлов. Windows компилирует и связывает один и тот же проект в 10–40 раз медленнее, чем Linux. Как я могу это исправить?
Одна инкрементная сборка за 20 секунд в Linux и> 3 минуты в Windows. Зачем? Я даже могу установить компоновщик 'gold' в Linux и сократить это время до 7 секунд.
Аналогично, git в 10–40 раз быстрее в Linux, чем в Windows.
В случае с git возможно, что git использует не Windows оптимальным образом, а VC ++? Вы могли бы подумать, что Microsoft захочет сделать своих собственных разработчиков максимально продуктивными, и более быстрая компиляция будет иметь большое значение для этого. Может быть, они пытаются убедить разработчиков в C #?
В качестве простого теста найдите папку с множеством подпапок и выполните простой
dir /s > c:\list.txt
в Windows. Сделайте это дважды и время второго запуска, чтобы он запускался из кэша. Скопируйте файлы в Linux и выполните 2 одинаковых прогона, а второй раз запустите.
ls -R > /tmp/list.txt
У меня есть 2 рабочие станции с точно такими же характеристиками. HP Z600s с 12 ГБ оперативной памяти, 8 ядер на 3,0 ГГц. Для папки с ~ 400k файлами Windows занимает 40 секунд, Linux занимает <1 секунду. </p>
Можно ли настроить реестр для ускорения работы Windows? Что дает?
Несколько слегка релевантных ссылок, относящихся ко времени компиляции, необязательно ввода / вывода.