|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 4:39 pm
Машина за бърза компилация...
| Автор |
Съобщение |
|
Цецо
Ранг: Форумен бог
Регистриран на: Пон Сеп 27, 2004 9:22 am Мнения: 15501 Местоположение: София
|
 Машина за бърза компилация...
Какво му е нужно на GCC, а и на другите компилатори да дъвчат по - бързо? В моя случай иде реч за боза като основа.
Досега съм установил, че SSD/HDD влияе нищожно. Между 4Г и 8Г рам разлика никаква. Дали бозата е 32 или 64 битова също няма съществена разлика. Другото което знам, е че новия ми 4 ядрен i7(2 и нещо GHz) лаптоп търкаля близо два пъти по бавно от вече старата ми десктоп система с 4 ядрен i5(3.4GHz). От което си правя извода, че начина да се забърза е тактова честота и нищо друго. Прав ли съм?
_________________ "Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.
|
| Пет Юли 25, 2014 3:02 pm |
|
 |
|
sparkybg
Ранг: Форумен бог
Регистриран на: Вто Авг 23, 2005 12:02 pm Мнения: 3070 Местоположение: София
|
 Re: Машина за бърза компилация...
На микрочипските им трябват ядра. И да им е пусната опцията да ги ползва. Колкото повече ядра, толкова повече файлове дъвче на куп едновременно, а вероятно и нещо друго. Тоест, ако не си пуснал HyperThreading-а на i7-цата - пусни го и търкаляй компилатора като върху 8 ядрен.
Освен друго, повечето i7-ци държат доста оверклокване, примерно от 2.7 на 3.4Ghz. Има значение и на колко си си пуснал паметта. Разликата при мен между 1000 и 1600Mhz е доста съществена.
|
| Пет Юли 25, 2014 3:21 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: Машина за бърза компилация...
"make -j" - да компилира на всички ядра, разбира се ако ползваш мейк - неудобството е че разбърква грешките и варнингите, и доста рядко се омотва и трябва да го пуснеш още веднъж за да докомпилира ccache - това може да се ползва вместо gcc т.е. то си вика gcc вътрешно когато се наложи, като преди това проверява дали не компилираш пак същия файл със същите инклудвания и ако е така направо ползва резултата от предишната компилация бонус: ако ползваш Ц++, темплейти, стл, бууст и т.н. - махни ги, ползвай чисто Ц и компилацията ще фръкне 
_________________ Мразя да мразя ...
|
| Пет Юли 25, 2014 3:32 pm |
|
 |
|
Цецо
Ранг: Форумен бог
Регистриран на: Пон Сеп 27, 2004 9:22 am Мнения: 15501 Местоположение: София
|
 Re: Машина за бърза компилация...
Да -j позабързва нещата, ама нищо не мога да проследя в конзолата....
_________________ "Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.
|
| Пет Юли 25, 2014 4:09 pm |
|
 |
|
head_up
Ранг: Форумен бог
Регистриран на: Нед Юни 01, 2008 9:54 pm Мнения: 1503 Местоположение: Пловдив
|
 Re: Машина за бърза компилация...
което е нормално Какво толкова голямо компилираш, в смисъл колко време ти отнема компилацията? Защото на 1.6Гхз / 512 МБ рам съм стоял по 10 часа на компилация и като крашне - пак на другия ден, та не е като да ми е непозната болката ти. Все пак ме учудва каква е за теб мярката "бързо".
|
| Пет Юли 25, 2014 4:24 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: Машина за бърза компилация...
Бавното компилиране не е чак толкова лошо нещо - учи на хубави навици ... аз поне не бих се кахърил за нещо което отнема под 1-2 минути. Линукс ядрото на моя чупен макбук се компилира за няколко минути - а то е огромен проект. Подозирам, че Цецо се опитва да си оптимизира цикъла на програмиране до нещо като турбо паскал - натиснеш Ф9 и то на следващата секунда е готово или ти е извадило списък с грешките 
_________________ Мразя да мразя ...
|
| Пет Юли 25, 2014 4:36 pm |
|
 |
|
Цецо
Ранг: Форумен бог
Регистриран на: Пон Сеп 27, 2004 9:22 am Мнения: 15501 Местоположение: София
|
 Re: Машина за бърза компилация...
На десктопа е под 2 минути след clean. На новия лаптоп отива над 3 минути, а на по-бавничък лаптоп (нещо двуядрено), минава 5 минути...
Просто като съм свикнал на работната машина и се прибера да доработвам в къщи, брадясвам и се зачудих какво трябва да си купя следващия път.
_________________ "Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.
|
| Пет Юли 25, 2014 5:24 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: Машина за бърза компилация...
Ако имаш нерви да го търпиш колкото може повече, след време ще видиш, че всъщност не пречи чак толкова, че е бавно - просто ще компилираш по рядко и всяка компилация ще минава без досадни грешки от бързане или недоглеждане ... единствения проблем който ми идва на ум е, че през това време ако се отплеснеш да си провериш поща или форума или фейсбук и отиде 10 минути разсейване - затова спираш интернета и да живей бавното компилиране  Edit: майтапя се де ... донякъде ...
_________________ Мразя да мразя ...
|
| Пет Юли 25, 2014 5:47 pm |
|
 |
|
ДедоБоре
Ранг: Форумен бог
Регистриран на: Нед Ное 21, 2004 11:31 pm Мнения: 10088
|
 Re: Машина за бърза компилация...
машинка за подстригване на бради на времето компилирахме яко С++ все тежи простотии. бяхме направили клъстер от 10 двуксеонни маши с по 8 ядра и distcc. пълен билд вървеше около час на тоя звяр. като свършихме проекта го изгасихме, щото дърпаше по 4kW и не можехме да го изхраним. но не мисля, че това е твоя случай. играй си -j както спарки каза, важно е паметта, кеша и процесора да са на кохеретни честоти. също така навремето установихме, че ксеона е друг процесор (това е плюса), но и gcc трябва да е билднато за него, за да има файда (това е минуса). отделно по незнайни/неизследвани причини grep не работеше еднакво на ксеон и пентиум. но това беше преди 7 (въй!) години и от тогава не следя модните тенденции в интел. аз също съм на кръстопът за нова машинка за ментора. някакво i ще е (АМД се чупи на някои места, ксеона е ОК, но е безумно скъп). искам на същата машина да търкалям и SW, от което следва и дебело видео. но все още тествам, а ме задържа и излизащата нова версия на 'кспедишъна'. тя ще си дойде с нови трески и мотики, обаче до колко ще са критични ами затова са измислени лог файловете понякога има проблем с гладкия билд с много компилатори, защото зависимостите са кошмарни за описване в мейка. може цял месец да си мислиш, че си натъмънил нещата и пак да настипъш мотиката неочаквано. или поне някое градинско гребло. ама това е за наистина сложни проекти. като човек, спал по време на компилации, моя съвет е да си джуркаш както в момента и да не се втелясваш. ако ти боде брадата - машинката е много по-евтина.
|
| Пет Юли 25, 2014 6:00 pm |
|
 |
|
¶
Ранг: Форумен бог
Регистриран на: Пет Фев 25, 2005 1:58 pm Мнения: 4585 Местоположение: US
|
 Re: Машина за бърза компилация...
Имам едногодишен лаптоп Gateway i3 който компилира видимо около два пъти по-бързо от по-новия ми лаптоп Dell с i5. Едно и също на двете машини: проект, ОС, RAM, видеокарти, компилатор и т.н. Само че, една има една тънка разлика  , i3 е 4-та генерация процесор, докато i5 се оказа 3-та. И това го разбрах като им сравних точките от Benchmark тест. Като купувах Dell преди няколко месеца гледах да i5 и нагоре, и като излезна добра оферта скочих в калта като не видял, нямаше време кой да чете ситните букви че това е стар модел i5. Виж и при теб да не се окаже там разликата. Служебния е Xeon E5504 @ 2GHz, 4-ри ядра, HP Z800 Workstation, ми малко е ташак работа този процесор. Забранявам антивирусната, че с нея пък не може да отлепи. Компилира по време съизмеримо с Gateway лаптопа, само дето Xeon машината струва > $2k, а Gateway го взех за $350. Пробвай да смениш GCC с LLVM  , или компилирай на Unix подобна машина.
_________________ Ето аз дишам, работя, живея и програми пиша тъй както умея, с проца под вежди се гледаме строго и боря се с него доколкото мога....
|
| Пет Юли 25, 2014 9:19 pm |
|
 |
|
scout_3pm
Ранг: Популярен
Регистриран на: Вто Авг 07, 2012 3:16 pm Мнения: 331
|
 Re: Машина за бърза компилация...
Доколкото знам има само един или два модела i5, които са 4 ядрени, всичко друго е 2 ядрено с HT. Относно gcc, ако постановката ти бе под Линукс има помощни средства: 1. https://ccache.samba.org/ - страшно много ускорява 2. https://code.google.com/p/distcc/ - също, но тук вече включваш поне още една машина по мрежа Инсталирането и конфигурирането на двете е под 5 минути, но уви нямат версии за M$ . Успех !
|
| Нед Юли 27, 2014 12:56 pm |
|
 |
|
loser
Ранг: Минаващ
Регистриран на: Съб Ное 12, 2011 9:21 pm Мнения: 62
|
 Re: Машина за бърза компилация...
@Цецо ползваш ли нещо от cygwin, инсталирал ли си нещо, дори бегло свързано - с cygwin? някаква mingw инсталация може би ползваш... просто стрелям в мрака...
изобщо - как, и откъде компилираш (да викаш 'make' е едно нещо, да викаш 'mingw32-make' може да се окаже съвсем различно нещо)?
|
| Съб Авг 02, 2014 1:36 am |
|
 |
|
gicho
Ранг: Форумен бог
Регистриран на: Пон Мар 13, 2006 1:59 pm Мнения: 3867 Местоположение: Габрово
|
 Re: Машина за бърза компилация...
Десктопските i5 са 4 физически ядра. Има една опция на gcc, "-pipe" (без кавичките), спестява ползването на диска за междинни файлове, може да даде сериозно ускорение. Иначе, както си забелязал, клок и брой ядра са истината. Както и свястна билд система (има доста алтернативи на make).
|
| Вто Авг 05, 2014 12:46 pm |
|
 |
|
bobihot
Ранг: Форумен бог
Регистриран на: Сря Фев 13, 2013 3:35 pm Мнения: 1803
|
 Re: Машина за бърза компилация...
Какво му е на турбо паскал - а ?
|
| Вто Авг 05, 2014 10:15 pm |
|
 |
|
stefan63
Ранг: Форумен бог
Регистриран на: Вто Фев 07, 2012 11:22 pm Мнения: 3084
|
 Re: Машина за бърза компилация...
Какво за турбо паскала, че ми стана интересно?
|
| Вто Авг 05, 2014 10:42 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 5 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|