Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать. Про IncrediBuild знаю. Но хочу рассмотреть локальные решения, тем более, что инкредибилд, зараза, дорогой. Примерно в одну ценовую категорию попадает покупка RAID-0 и покупка двух гигов памяти и устройство на ней виртуального диска для компиляции.
Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества?
Здравствуйте, Tuo_Bellas, Вы писали:
T_B>Всем привет!
T_B>Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать. Про IncrediBuild знаю. Но хочу рассмотреть локальные решения, тем более, что инкредибилд, зараза, дорогой. Примерно в одну ценовую категорию попадает покупка RAID-0 и покупка двух гигов памяти и устройство на ней виртуального диска для компиляции.
T_B>Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества?
УПС — или так сказать, или устройство такое поставить
T_B>Спасибо, T_B>Tuo_Bellas.
Здравствуйте, ilnar, Вы писали:
T_B>>Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать. Про IncrediBuild знаю. Но хочу рассмотреть локальные решения, тем более, что инкредибилд, зараза, дорогой. Примерно в одну ценовую категорию попадает покупка RAID-0 и покупка двух гигов памяти и устройство на ней виртуального диска для компиляции.
T_B>>Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества? I>УПС — или так сказать, или устройство такое поставить
Здравствуйте, ilnar, Вы писали:
T_B>>Я имею ввиду программно, с упсом понятно
I>hibernate — самое то продолжишь как дадут электричество (понимаю беспокойство моквичей :-D )
Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...
Здравствуйте, Tuo_Bellas, Вы писали:
T_B>Здравствуйте, ilnar, Вы писали:
T_B>>>Я имею ввиду программно, с упсом понятно
I>>hibernate — самое то продолжишь как дадут электричество (понимаю беспокойство моквичей :-D )
T_B> Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...
может просто столько не париться? это же все-таки просто компиляция, а не транзакция на млрд енотов.
T_B>Спасибо, T_B>Tuo_Bellas.
Здравствуйте, Tuo_Bellas, Вы писали:
T_B> Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...
А какие проблемы в том, чтобы держать исходники на винте, а объектники на виртуальном диске?
Имхо, даже в VS можно настраивать пути для расположения объектных файлов и других результатов компиляции.
Да и другие инструменты для управления компиляцией позволяют это делать.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, eao197, Вы писали:
T_B>> Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...
E>А какие проблемы в том, чтобы держать исходники на винте, а объектники на виртуальном диске? E>Имхо, даже в VS можно настраивать пути для расположения объектных файлов и других результатов компиляции. E>Да и другие инструменты для управления компиляцией позволяют это делать.
Да, наверное, можно и так.
А как насчет других вопросов? Кто-нибудь вообще пробовал такими извращениями заниматься?
Здравствуйте, Tuo_Bellas, Вы писали:
T_B>Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать.
А вообще-то при компиляции проекта все упирается в проц! Во всяком случае у меня... и на всех соседних машинах...Разве у тебя не так?
Здравствуйте, LMars, Вы писали:
T_B>>Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать.
LM> А вообще-то при компиляции проекта все упирается в проц! Во всяком случае у меня... и на всех соседних машинах...Разве у тебя не так?
Гиг промежуточных файлов в двенадцати либах. По любому, ускорение работы с диском ускорит компиляцию. У тебя сколько промежуточных файлов генерится?
E>>А какие проблемы в том, чтобы держать исходники на винте, а объектники на виртуальном диске? E>>Имхо, даже в VS можно настраивать пути для расположения объектных файлов и других результатов компиляции. E>>Да и другие инструменты для управления компиляцией позволяют это делать.
T_B>Да, наверное, можно и так.
Или можно вообще просто link сделать (под NT reparse point) и всё, сорци на HDD, bin, obj, Debug, Release линками на RAM Drive, ну а после билда (если конечно это нужно) можно копию результата куда-нибудь на HDD сделать
T_B>Гиг промежуточных файлов в двенадцати либах. По любому, ускорение работы с диском ускорит компиляцию. У тебя сколько промежуточных файлов генерится?
Ну наверное ускорит, только на сколько. У меня конечно гига объектников нет... чуть более ста метров. И вижу что узкое место — это проц.
ИнкредиБилд то почему появился... и почему с ним быстрее... потому что он дополнительные процы привлекает к компиляции! При этом работа с файлами у него только ухудшается... он же их еще и по сети гоняет!
Здравствуйте, Tuo_Bellas, Вы писали:
T_B>Всем привет!
T_B>Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать. Про IncrediBuild знаю. Но хочу рассмотреть локальные решения, тем более, что инкредибилд, зараза, дорогой. Примерно в одну ценовую категорию попадает покупка RAID-0 и покупка двух гигов памяти и устройство на ней виртуального диска для компиляции.
T_B>Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества?
T_B>Спасибо, T_B>Tuo_Bellas.
Здравствуйте, Tuo_Bellas, Вы писали:
T_B>Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества?
RAM-диск какой-нибудь используй. Ну и обязательное дублирование исходников(перед компиляцией на ram переписываем только изменившееся), т.к. даже UPS не гарантия.
Здравствуйте, bubuka, Вы писали:
T_B>>Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества?
B>RAM-диск какой-нибудь используй. Ну и обязательное дублирование исходников(перед компиляцией на ram переписываем только изменившееся), т.к. даже UPS не гарантия.
Так вот, один из вопросов -- какой именно программой для создания RAM-дисков лучше воспользоваться?
Здравствуйте, Tuo_Bellas, Вы писали:
T_B> Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...
Код хранится в VCS.
Перед началом компиляции делается checkout из VCS на виртуальный диск.
Результаты компиляции копируются с виртуального диска куда надо.
Соответственно, код можно редактировать где угодно. Главное не забывать изменения в VCS класть.
Если я правильно понял Ваши предыдущие посты, решение вопроса уже подошло к практической реализации — если Вас не затруднит, отпишите пожалуйста результаты экспериментов — объем используемой памяти, софт для создания виртуального диска, выигрыш производительности и личные впечатления
Спасибо
Здравствуйте, execve, Вы писали:
T_B>> Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...
E>Код хранится в VCS. E>Перед началом компиляции делается checkout из VCS на виртуальный диск. E>Результаты компиляции копируются с виртуального диска куда надо.
E>Соответственно, код можно редактировать где угодно. Главное не забывать изменения в VCS класть.
Есть одно но -- класть потенциально некомпилирующийся (ведь мы его еще не пытались компилировать) код в vcs -- не хорошо. К тому же просто копировать скриптом изменившийся код с винчестера на виртуальный диск должно получиться дешевле с точки зрения производительности.
Здравствуйте, FreshMeat, Вы писали:
FM>Если я правильно понял Ваши предыдущие посты, решение вопроса уже подошло к практической реализации — если Вас не затруднит, отпишите пожалуйста результаты экспериментов — объем используемой памяти, софт для создания виртуального диска, выигрыш производительности и личные впечатления FM>Спасибо
Да, действительно, в ближайшее время собираюсь вплотную заняться решением данного вопроса. О результатах -- напишу