Re[6]: Средства для управления сборкой проекта?
От: avbochagov Россия  
Дата: 28.06.05 10:48
Оценка: 13 (3)
Здравствуйте, Tuo_Bellas, Вы писали:

T_B>Извините, но таки все, что можно уже разбито, и precompiled headers во всю используются. К тому же, как не разбивай, а суммарный объем промежуточных файлов, сливающихся в один экзешник при линковке -- более-менее постоянен...


В общем, ожидаемый ответ

Может вам тогда вот эта штука подойдет. Gigabyte обещала выпустить в продажу уже в июле этого года.... т.е. где-то осенью можно будет купить.
... << RSDN@Home 1.1.4 beta 7 rev. 461>>
Re: Компиляция на диске в памяти
От: Alex Axyonov Украина  
Дата: 02.06.05 13:22
Оценка: 6 (1)
Здравствуйте, Tuo_Bellas, Вы писали:

T_B>Всем привет!


T_B>Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать. Про IncrediBuild знаю. Но хочу рассмотреть локальные решения, тем более, что инкредибилд, зараза, дорогой. Примерно в одну ценовую категорию попадает покупка RAID-0 и покупка двух гигов памяти и устройство на ней виртуального диска для компиляции.


T_B>Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества?


T_B>Спасибо,

T_B>Tuo_Bellas.

Re[2]: Почему нет железок для программистов
Автор: Малич Юрий
Дата: 16.05.05
... << RSDN@Home 1.1.4 beta 7 rev. 462>>
Re[7]: Компиляция на диске в памяти
От: Sashko Россия http://www.dc.baika.ru/
Дата: 02.06.05 07:10
Оценка: 4 (1)
E>>А какие проблемы в том, чтобы держать исходники на винте, а объектники на виртуальном диске?
E>>Имхо, даже в VS можно настраивать пути для расположения объектных файлов и других результатов компиляции.
E>>Да и другие инструменты для управления компиляцией позволяют это делать.

T_B>Да, наверное, можно и так.


Или можно вообще просто link сделать (под NT reparse point) и всё, сорци на HDD, bin, obj, Debug, Release линками на RAM Drive, ну а после билда (если конечно это нужно) можно копию результата куда-нибудь на HDD сделать
Компиляция на диске в памяти
От: Tuo_Bellas Россия  
Дата: 01.06.05 08:07
Оценка: 3 (1)
Всем привет!

Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать. Про IncrediBuild знаю. Но хочу рассмотреть локальные решения, тем более, что инкредибилд, зараза, дорогой. Примерно в одну ценовую категорию попадает покупка RAID-0 и покупка двух гигов памяти и устройство на ней виртуального диска для компиляции.

Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества?

Спасибо,
Tuo_Bellas.
Re[8]: Средства для управления сборкой проекта?
От: imeshev  
Дата: 07.07.05 04:59
Оценка: 2 (1)
Здравствуйте, Tuo_Bellas, Вы писали:

T_B>Здравствуйте, avbochagov, Вы писали:


T_B>>>Извините, но таки все, что можно уже разбито, и precompiled headers во всю используются. К тому же, как не разбивай, а суммарный объем промежуточных файлов, сливающихся в один экзешник при линковке -- более-менее постоянен...


A>>В общем, ожидаемый ответ


A>>Может вам тогда вот эта штука подойдет. Gigabyte обещала выпустить в продажу уже в июле этого года.... т.е. где-то осенью можно будет купить.


T_B>Штука-то хорошая, но на каждую девелоперскую машину ставить -- дороговато. На билд-сервер -- да, пожалуй. Только это не снимает вопроса, как же этот билд-сервер организовать. Anyone?


T_B>Спасибо,

T_B>Tuo_Bellas.


Посмотрите на [http://www.viewtier.com/products/parabuild/index.htm]Parabuild[/url] — это сервер билдов котороый позволяет организовать continuous integration и ночные/дневные билды. Сейчас идет Early Access Program и за каждый найденый баг обещают бесплатные лицензии.

Слава
Re[5]: Компиляция на диске в памяти
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 01.06.05 09:41
Оценка: 1 (1)
Здравствуйте, Tuo_Bellas, Вы писали:

T_B> Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...


А какие проблемы в том, чтобы держать исходники на винте, а объектники на виртуальном диске?
Имхо, даже в VS можно настраивать пути для расположения объектных файлов и других результатов компиляции.
Да и другие инструменты для управления компиляцией позволяют это делать.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re: Компиляция на диске в памяти
От: LMars Россия  
Дата: 01.06.05 10:47
Оценка: +1
Здравствуйте, Tuo_Bellas, Вы писали:

T_B>Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать.


А вообще-то при компиляции проекта все упирается в проц! Во всяком случае у меня... и на всех соседних машинах...Разве у тебя не так?
Re: Компиляция на диске в памяти
От: ilnar Россия  
Дата: 01.06.05 08:25
Оценка:
Здравствуйте, Tuo_Bellas, Вы писали:

T_B>Всем привет!


T_B>Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать. Про IncrediBuild знаю. Но хочу рассмотреть локальные решения, тем более, что инкредибилд, зараза, дорогой. Примерно в одну ценовую категорию попадает покупка RAID-0 и покупка двух гигов памяти и устройство на ней виртуального диска для компиляции.


T_B>Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества?

УПС — или так сказать, или устройство такое поставить

T_B>Спасибо,

T_B>Tuo_Bellas.
Re[2]: Компиляция на диске в памяти
От: Tuo_Bellas Россия  
Дата: 01.06.05 08:54
Оценка:
Здравствуйте, ilnar, Вы писали:

T_B>>Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать. Про IncrediBuild знаю. Но хочу рассмотреть локальные решения, тем более, что инкредибилд, зараза, дорогой. Примерно в одну ценовую категорию попадает покупка RAID-0 и покупка двух гигов памяти и устройство на ней виртуального диска для компиляции.


T_B>>Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества?

I>УПС — или так сказать, или устройство такое поставить

Я имею ввиду программно, с упсом понятно

Спасибо,
Tuo_Bellas.
Re[3]: Компиляция на диске в памяти
От: ilnar Россия  
Дата: 01.06.05 09:01
Оценка:
Здравствуйте, Tuo_Bellas, Вы писали:


T_B>Я имею ввиду программно, с упсом понятно


hibernate — самое то продолжишь как дадут электричество (понимаю беспокойство моквичей :-D )

T_B>Спасибо,

T_B>Tuo_Bellas.
Re[4]: Компиляция на диске в памяти
От: Tuo_Bellas Россия  
Дата: 01.06.05 09:07
Оценка:
Здравствуйте, ilnar, Вы писали:

T_B>>Я имею ввиду программно, с упсом понятно


I>hibernate — самое то продолжишь как дадут электричество (понимаю беспокойство моквичей :-D )


Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...

Спасибо,
Tuo_Bellas.
Re[5]: Компиляция на диске в памяти
От: ilnar Россия  
Дата: 01.06.05 09:11
Оценка:
Здравствуйте, Tuo_Bellas, Вы писали:

T_B>Здравствуйте, ilnar, Вы писали:


T_B>>>Я имею ввиду программно, с упсом понятно


I>>hibernate — самое то продолжишь как дадут электричество (понимаю беспокойство моквичей :-D )


T_B> Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...


может просто столько не париться? это же все-таки просто компиляция, а не транзакция на млрд енотов.

T_B>Спасибо,

T_B>Tuo_Bellas.
Re[6]: Компиляция на диске в памяти
От: Tuo_Bellas Россия  
Дата: 01.06.05 10:11
Оценка:
Здравствуйте, eao197, Вы писали:

T_B>> Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...


E>А какие проблемы в том, чтобы держать исходники на винте, а объектники на виртуальном диске?

E>Имхо, даже в VS можно настраивать пути для расположения объектных файлов и других результатов компиляции.
E>Да и другие инструменты для управления компиляцией позволяют это делать.

Да, наверное, можно и так.

А как насчет других вопросов? Кто-нибудь вообще пробовал такими извращениями заниматься?

Спасибо,
Tuo_Bellas.
Re[7]: Компиляция на диске в памяти
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 01.06.05 10:40
Оценка:
Здравствуйте, Tuo_Bellas, Вы писали:

T_B>А как насчет других вопросов? Кто-нибудь вообще пробовал такими извращениями заниматься?


Да, под DOS-ом, году эдак в 93-м. А как под Windows виртуальный диск в памяти организовать я сейчас даже и не знаю.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[2]: Компиляция на диске в памяти
От: Tuo_Bellas Россия  
Дата: 01.06.05 11:24
Оценка:
Здравствуйте, LMars, Вы писали:

T_B>>Размер временных файлов проекта стал подбираться к гигабайту. Время линковки и компиляции начинает несколько напрягать.


LM> А вообще-то при компиляции проекта все упирается в проц! Во всяком случае у меня... и на всех соседних машинах...Разве у тебя не так?


Гиг промежуточных файлов в двенадцати либах. По любому, ускорение работы с диском ускорит компиляцию. У тебя сколько промежуточных файлов генерится?

Спасибо,
Tuo_Bellas.
Re[3]: Компиляция на диске в памяти
От: LMars Россия  
Дата: 02.06.05 08:52
Оценка:
T_B>Гиг промежуточных файлов в двенадцати либах. По любому, ускорение работы с диском ускорит компиляцию. У тебя сколько промежуточных файлов генерится?

Ну наверное ускорит, только на сколько. У меня конечно гига объектников нет... чуть более ста метров. И вижу что узкое место — это проц.

ИнкредиБилд то почему появился... и почему с ним быстрее... потому что он дополнительные процы привлекает к компиляции! При этом работа с файлами у него только ухудшается... он же их еще и по сети гоняет!

Все это мое ИМХО.
Re: Компиляция на диске в памяти
От: bubuka Россия  
Дата: 03.06.05 07:13
Оценка:
Здравствуйте, Tuo_Bellas, Вы писали:

T_B>Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества?


RAM-диск какой-нибудь используй. Ну и обязательное дублирование исходников(перед компиляцией на ram переписываем только изменившееся), т.к. даже UPS не гарантия.
... << RSDN@Home 1.1.4 beta 4 rev. 303>>
Re[2]: Компиляция на диске в памяти
От: Tuo_Bellas Россия  
Дата: 06.06.05 21:01
Оценка:
Здравствуйте, bubuka, Вы писали:

T_B>>Если с инкредибилдом и рэйдом все более-менее ясно, то про компиляцию на диске в памяти я слышал только краем уха. Кто-нибудь этим занимался? Какие впечатления? Какими тулзами для этого пользовались? Сильно ли увеличилась скорость? Как уберечься от внезапного отключения электричества?


B>RAM-диск какой-нибудь используй. Ну и обязательное дублирование исходников(перед компиляцией на ram переписываем только изменившееся), т.к. даже UPS не гарантия.


Так вот, один из вопросов -- какой именно программой для создания RAM-дисков лучше воспользоваться?

Что еще есть кроме ramdrive.sys и http://www.8ung.at/ramdriv/ramdiskent-rus.htm?

Спасибо,
Tuo_Bellas.
Re[5]: Компиляция на диске в памяти
От: execve  
Дата: 06.06.05 21:53
Оценка:
Здравствуйте, Tuo_Bellas, Вы писали:

T_B> Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...


Код хранится в VCS.
Перед началом компиляции делается checkout из VCS на виртуальный диск.
Результаты компиляции копируются с виртуального диска куда надо.

Соответственно, код можно редактировать где угодно. Главное не забывать изменения в VCS класть.
Re: Компиляция на диске в памяти
От: FreshMeat Россия http://www.rsdn.org
Дата: 07.06.05 03:06
Оценка:
Добрый день, Tuo_Bellas:

Если я правильно понял Ваши предыдущие посты, решение вопроса уже подошло к практической реализации — если Вас не затруднит, отпишите пожалуйста результаты экспериментов — объем используемой памяти, софт для создания виртуального диска, выигрыш производительности и личные впечатления
Спасибо
Хорошо там, где мы есть! :)
Re[6]: Компиляция на диске в памяти
От: Tuo_Bellas Россия  
Дата: 07.06.05 10:00
Оценка:
Здравствуйте, execve, Вы писали:

T_B>> Я, все же, несколько о другом. Если компилять на диске в памяти, то где редактировать код? Если это делать на винте, а перед компиляцией копировать на виртуальный диск, то проблем с отключением электричества это не прибавит. Но появятся проблемы с тем, как запускать процесс компиляции, (кое-какие скрипты, думаю, придется написать). Если же редактировать код непосредственно на виртуальном диске, то проблем с запуском компиляции не должно быть, но появляются проблемы при отключении электричества. UPS, впрочем, их в большинстве своем решает...


E>Код хранится в VCS.

E>Перед началом компиляции делается checkout из VCS на виртуальный диск.
E>Результаты компиляции копируются с виртуального диска куда надо.

E>Соответственно, код можно редактировать где угодно. Главное не забывать изменения в VCS класть.


Есть одно но -- класть потенциально некомпилирующийся (ведь мы его еще не пытались компилировать) код в vcs -- не хорошо. К тому же просто копировать скриптом изменившийся код с винчестера на виртуальный диск должно получиться дешевле с точки зрения производительности.

Спасибо,
Tuo_Bellas.
Re[2]: Компиляция на диске в памяти
От: Tuo_Bellas Россия  
Дата: 07.06.05 10:03
Оценка:
Здравствуйте, FreshMeat, Вы писали:

FM>Если я правильно понял Ваши предыдущие посты, решение вопроса уже подошло к практической реализации — если Вас не затруднит, отпишите пожалуйста результаты экспериментов — объем используемой памяти, софт для создания виртуального диска, выигрыш производительности и личные впечатления

FM>Спасибо

Да, действительно, в ближайшее время собираюсь вплотную заняться решением данного вопроса. О результатах -- напишу

Спасибо,
Tuo_Bellas.
Re[3]: Компиляция на диске в памяти
От: bubuka Россия  
Дата: 08.06.05 11:40
Оценка:
Здравствуйте, Tuo_Bellas, Вы писали:

T_B>Что еще есть кроме ramdrive.sys и http://www.8ung.at/ramdriv/ramdiskent-rus.htm?

К сожалению не пользовался ни одной, поэтому посоветовать вряд ли что смогу
... << RSDN@Home 1.1.4 beta 4 rev. 303>>
Re[3]: Средства для управления сборкой проекта?
От: Tuo_Bellas Россия  
Дата: 25.06.05 20:00
Оценка:
Здравствуйте, Tuo_Bellas, Вы писали:

FM>>Если я правильно понял Ваши предыдущие посты, решение вопроса уже подошло к практической реализации — если Вас не затруднит, отпишите пожалуйста результаты экспериментов — объем используемой памяти, софт для создания виртуального диска, выигрыш производительности и личные впечатления

FM>>Спасибо

T_B>Да, действительно, в ближайшее время собираюсь вплотную заняться решением данного вопроса. О результатах -- напишу


Пока -- никак. На 1.5 Гб выделяю 1.1 под диск, сборка идет медленнее чем просто так, не хватает оперативки (правда настройками много не игрался). Для дальнейших экспериментов нужно добыть еще две планки на 512, но пока нет времени.

Перешли было на инкредибилд, фулл-ребилд стал компилиться быстрее где-то на треть на пяти машинах (примерно одинаковых). Появившийся в 2.30 инкредилинк не удалось заставить работать, линковка все равно занимает много времени.

Потом обстоятельства заставили перейти на интел 9.0. Время на сборку сразу выросло (теперь за 30 минут), и инкредибилд его еще не понимает, только 8.1.

Посему -- вопрос. Что еще можно прикрутить для ускорения сборки? В принципе, в соседней комнате стоит довольно мощный (и мало загруженный) рендер-сервер под Windows 2003 Server, на который можно было бы перенести сборку -- все быстрее чем на девелоперской машине. Но встает вопрос синхронизации исходников и удаленного управления сборкой.

Какие вы знаете готовые инструменты для этого? В идеале, чтобы еще и .vcproj, .sln и интеловские файлы проектов читали...

Какие из них вы реально использовали, и каковы ваши впечатления?

Спасибо,
Tuo_Bellas.
Re[4]: Средства для управления сборкой проекта?
От: Denis_TST Россия www.transsys.ru
Дата: 26.06.05 15:28
Оценка:
Здравствуйте, Tuo_Bellas, Вы писали:

T_B>Здравствуйте, Tuo_Bellas, Вы писали:


FM>>>Если я правильно понял Ваши предыдущие посты, решение вопроса уже подошло к практической реализации — если Вас не затруднит, отпишите пожалуйста результаты экспериментов — объем используемой памяти, софт для создания виртуального диска, выигрыш производительности и личные впечатления

FM>>>Спасибо

T_B>>Да, действительно, в ближайшее время собираюсь вплотную заняться решением данного вопроса. О результатах -- напишу


T_B>Пока -- никак. На 1.5 Гб выделяю 1.1 под диск, сборка идет медленнее чем просто так, не хватает оперативки (правда настройками много не игрался). Для дальнейших экспериментов нужно добыть еще две планки на 512, но пока нет времени.

У нас сборка на Delphi, но результаты получились похожие — из 2 gb(занято 700 мб), выделил 300 мб под RAM диск с общими библиотеками.
Получил %10-%20 прирост .
это на отдельном сервере для сборки...
получатся узкое место это процессор...
... << RSDN@Home 1.1.4 beta 6 rev. 433>>
Re[4]: Средства для управления сборкой проекта?
От: avbochagov Россия  
Дата: 27.06.05 05:27
Оценка:
Здравствуйте, Tuo_Bellas, Вы писали:

T_B>Здравствуйте, Tuo_Bellas, Вы писали:



T_B>Какие вы знаете готовые инструменты для этого? В идеале, чтобы еще и .vcproj, .sln и интеловские файлы проектов читали...


Извините, но может стоит попробовать разбить проект на модули? (возможно у вас это уже сделано).

И еще один дурацкий вопрос: вы используете PCH?
... << RSDN@Home 1.1.4 beta 7 rev. 461>>
Re[5]: Средства для управления сборкой проекта?
От: Tuo_Bellas Россия  
Дата: 28.06.05 07:26
Оценка:
Здравствуйте, avbochagov, Вы писали:

T_B>>Какие вы знаете готовые инструменты для этого? В идеале, чтобы еще и .vcproj, .sln и интеловские файлы проектов читали...


A>Извините, но может стоит попробовать разбить проект на модули? (возможно у вас это уже сделано).




A>И еще один дурацкий вопрос: вы используете PCH?




Извините, но таки все, что можно уже разбито, и precompiled headers во всю используются. К тому же, как не разбивай, а суммарный объем промежуточных файлов, сливающихся в один экзешник при линковке -- более-менее постоянен...

Tuo_Bellas.
Re[7]: Средства для управления сборкой проекта?
От: Tuo_Bellas Россия  
Дата: 29.06.05 13:27
Оценка:
Здравствуйте, avbochagov, Вы писали:

T_B>>Извините, но таки все, что можно уже разбито, и precompiled headers во всю используются. К тому же, как не разбивай, а суммарный объем промежуточных файлов, сливающихся в один экзешник при линковке -- более-менее постоянен...


A>В общем, ожидаемый ответ


A>Может вам тогда вот эта штука подойдет. Gigabyte обещала выпустить в продажу уже в июле этого года.... т.е. где-то осенью можно будет купить.


Штука-то хорошая, но на каждую девелоперскую машину ставить -- дороговато. На билд-сервер -- да, пожалуй. Только это не снимает вопроса, как же этот билд-сервер организовать. Anyone?

Спасибо,
Tuo_Bellas.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.