AndrisBB Novembris 16, 2022 Share Novembris 16, 2022 (labots) Tā arī domāju ka būs, ja kompilē uz visiem 16 korēm / 24 pavedieniem, tad 32GB RAM ir par maz. Noēd visu RAMu, ka nav ko redzēt, un beigās viss nokrešo. Var jau SWAP failu palielināt, bet tad 'swapos' iekšā/ārā un būs vēl lēnāk. Jāpalielina uz 64GB. Labots Novembris 16, 2022 - AndrisBB Link to comment Share on other sites More sharing options...
HIGH-Zen Novembris 16, 2022 Share Novembris 16, 2022 Tādas normālas prasības. Link to comment Share on other sites More sharing options...
AndrisBB Novembris 16, 2022 Share Novembris 16, 2022 Jāpalaiž builds no jauna un jāpaskatās cik ilgi aizņems bez source koda lejupielādēšanas. Tas man lielākais bottleneks tagad. Varbūt stundā var iekļauties. Sēdēt stundu un gaidīt kautkā neinteresanti, tapēc arī prasības Ar veco laptopu gan parasti visu dienu aizņēma Link to comment Share on other sites More sharing options...
HIGH-Zen Novembris 16, 2022 Share Novembris 16, 2022 - Priekšnieks brīnās, kāpēc staigā apkārt un nestrādā? - A, es te kompilēju, viss notiek, strādāju. 1 2 Link to comment Share on other sites More sharing options...
AndrisBB Novembris 16, 2022 Share Novembris 16, 2022 (labots) Tā jau ir. No nulles jau tik bieži nevajag, bet 10 - 20 min gaidīšana, tas standarts. Tad var kautko būtā/forumā ieklabināt vai aiziet kafiju uztaisīt Labots Novembris 16, 2022 - AndrisBB Link to comment Share on other sites More sharing options...
dainis61 Novembris 16, 2022 Share Novembris 16, 2022 labs jums darbs,programistiem. Link to comment Share on other sites More sharing options...
binary Novembris 16, 2022 Share Novembris 16, 2022 pirms 3 stundām , AndrisBB teica: ja kompilē uz visiem 16 korēm / 24 pavedieniem Ja fiziski ir 16 kores, tad ir kaut kāds vērā ņemams ieguvums, kompilējot vairāk kā 16 pavedienos? Cik no senākiem laikiem atceros, tad praktiski nekāda ieguvuma nebija, bet nu tas bija sen un varbūt vairs nav taisnība. Link to comment Share on other sites More sharing options...
Artanis Novembris 16, 2022 Share Novembris 16, 2022 (labots) Pirms 11 minūtēm , binary teica: Ja fiziski ir 16 kores, tad ir kaut kāds vērā ņemams ieguvums, kompilējot vairāk kā 16 pavedienos? Multithreading uz performance corēm, tak. Labots Novembris 16, 2022 - Artanis Link to comment Share on other sites More sharing options...
binary Novembris 16, 2022 Share Novembris 16, 2022 (labots) @Artanis, to jau arī toreiz, senākos laikos, testēju. Nekāda jūtama ieguvuma tur nebija, kas arī ir loģiski. Nav jau tā, ka abi threadi uz tās vienas fiziskās cores var izpildīties vienlaicīgi, tāpat tam threadam jāgaida, kamēr otrs threads atbrīvos cori. Vienīgais, uz ko tur var kaut ko ietaupīt - uz context switchingu? Bet cik tad laika tas aizņem, ja galvenais darbs ir reāla CPU slogošana… Bet vispār pārlasīju tavu komentāru un sapratu, ka ne vella nesapratu, ko tu ar to gribēji pateikt. Labots Novembris 16, 2022 - binary Link to comment Share on other sites More sharing options...
AndrisBB Novembris 16, 2022 Share Novembris 16, 2022 Pirms 27 minūtēm , binary teica: Ja fiziski ir 16 kores, tad ir kaut kāds vērā ņemams ieguvums, kompilējot vairāk kā 16 pavedienos? Eh, pa lielam atkarīgs visdrīzāk no katra individuāla setupa. Lai noskaidrotu ātrāko, tad visdrīzāk jāiet cauri dažādām permutācijām un jāeksperimentē. Viss builds sastāv no tūkstošiem recepšu. Katra recepte atbilst bilbiotēkai, softwārei, utt, piemēram kernels, opencv, kautkādas bibliotēkas, utt. Katra recepte iet cauri `tāskiem`, ir vēl citi, bet šie galvenie: - do_fetch - do_unpack - do_configure - do_compile - do_strip - do_install - do_package - do_deploy Nu kā te var redzēt 24 paraleli projekti tiek kompilēti/sapakoti instalēšanai. Tad nu divi galvenie mainīgie šinī pasākumā: - Cik paralēlas receptes/projektus buildot - Cik paralēlus `pavedienus` atļaut make/cmake/ninja utt, do_compile solī katrai receptei. Konsensus ir (un arī defaultais settings), ka abus ieliek tik cik 'pavedieni' CPU. Bet nu, maz ticams ka tas pats optimālākais-optimālākais variants. Link to comment Share on other sites More sharing options...
AndrisBB Novembris 16, 2022 Share Novembris 16, 2022 Ja gribās arī datoru lietot kamēr buildojas, tad noteikti mazāk, savādād visas kores un 100% un dators faktiski ir nelietojams, ja nu vienīgi pašā sākumā, kad visas receptes vēl do_fetch stadijā un tikai velk kodu no interneta. Vēl interesantāk ar ar tām pilnajām un pus-corēm. Link to comment Share on other sites More sharing options...
AndrisBB Novembris 16, 2022 Share Novembris 16, 2022 Pirms 52 minūtēm , binary teica: Vienīgais, uz ko tur var kaut ko ietaupīt - uz context switchingu? Bet cik tad laika tas aizņem, ja galvenais darbs ir reāla CPU slogošana… Nu ja pieņem ka tev ir 8 kores un tu palaid `make -j8`. Tad make teorētiski uzturēs 8 paralēlus gcc/g++ vai ko tu tur kompilē. Ja katrs tas process būtu 100% CPU piesaistīts un nekāda I/O (failu ielasīšana/izrakstīšana), tad jau 8 paralēli procesi būtu optimālākais. Bet realitātē tā nav. Un optimālākais esot 2 - 4 uz kori. Vispār japalaiž kāds C++ projekts un jāpamēģina. Link to comment Share on other sites More sharing options...
binary Novembris 16, 2022 Share Novembris 16, 2022 Pirms 5 minūtēm , AndrisBB teica: Bet realitātē tā nav. Un optimālākais esot 2 - 4 uz kori. Nu man kā reiz toreiz "2-4 uz kori" it nekādu ieguvumu nedeva. Tas gan bija tieši buildošanai - kompilēšana, linkošana, stripošana utt. Ja procesā ir daudzi I/O bound taski, tad jā, "1 task per core" to CPU nespēs noslogot. Bet jau rakstīju - tas bija sen un varbūt vairs nav taisnība. Link to comment Share on other sites More sharing options...
AndrisBB Novembris 16, 2022 Share Novembris 16, 2022 Palaidu nodejs buildu (tikai kompilēšana, linkošana,stripošana utt) ar 16 paralēliem pavedieniem, paskatīsies cik ilgi ies. Pēctam pamēģināšu 24, 32, 40. Varbūt tā nebij tā labākā izvēle, jo aizņem daudz laika parasti Link to comment Share on other sites More sharing options...
HIGH-Zen Novembris 17, 2022 Share Novembris 17, 2022 Jā, reālus testus būtu interesanti redzēt. Link to comment Share on other sites More sharing options...
AndrisBB Novembris 17, 2022 Share Novembris 17, 2022 Ja tīri kompilē, tad tiešām nekādas starpības nav, kas arī varētu tā būt. vari@prime:~/work/build$ export PARALLEL_MAKE="-j 8" vari@prime:~/work/build$ time bitbake nodejs -c compile real 24m52.525s user 0m0.787s sys 0m0.202s vari@prime:~/work/build$ export PARALLEL_MAKE="-j 12" vari@prime:~/work/build$ time bitbake nodejs -c compile real 22m33.582s user 0m0.890s sys 0m0.136s vari@prime:~/work/build$ export PARALLEL_MAKE="-j 16" vari@prime:~/work/build$ time bitbake nodejs -c compile real 20m6.989s user 0m0.902s sys 0m0.125s vari@prime:~/work/build$ export PARALLEL_MAKE="-j 24" vari@prime:~/work/build$ time bitbake nodejs -c compile real 20m42.033s user 0m0.910s sys 0m0.130s vari@prime:~/work/build$ export PARALLEL_MAKE="-j 32" vari@prime:~/work/build$ time bitbake nodejs -c compile real 21m8.823s user 0m1.103s sys 0m0.156s Link to comment Share on other sites More sharing options...
AndrisBB Novembris 17, 2022 Share Novembris 17, 2022 Tik tas ka ar katru jaunu pavedienu noēd vairāk RAM. Make vienkārši kompilē failu pa failam, kas nozīmē ka iesāk teiksim 32 paralēlus failus, bet nekādu ekstra ātrumu tas nedod, tik tas ka vajag ekstra atmiņu. Cita lieta ir ja laiž pilnu ciklu. Lejupielādē kodu -> atpako -> nopačo -> configurē -> compilē -> sapako -> lieliek gala failu sistēmā. Tad pa lielam ir ātrāk, ja buildojas vairāki paralēli projekti. Interesanti kapēc visādos vecākos postos cilvēki postē grafukus kur uzrādas sweet spots, ja 2 - 5 paralēli gcc uz kori? Varbūt ar 2 coru CPU tā arī sanāk (OS un viss cits pa vidam maisās), plus kautkāds būtiski lēnāks HDD. Šis Samsungs kas man tagad ir ātrākais kāds man bijis. Stabili 6000 mb/s 1 Link to comment Share on other sites More sharing options...
binary Novembris 17, 2022 Share Novembris 17, 2022 1 stundu atpakaļ, AndrisBB teica: Varbūt ar 2 coru CPU tā arī sanāk (OS un viss cits pa vidam maisās), plus kautkāds būtiski lēnāks HDD. Šis Samsungs kas man tagad ir ātrākais kāds man bijis. Stabili 6000 mb/s Varētu būt, ka man tie senie testi kā reiz bija uz 2 kodoliem ar lēnu hdd. Link to comment Share on other sites More sharing options...
AndrisBB Novembris 17, 2022 Share Novembris 17, 2022 (labots) Problēma jau tur ka `make` nevar neko pasākt ar 'pavedieniem'. Vienkārši palaiž pieņemsim 8 paralēlas `gcc` instances. Ja gcc varētu iekšēji taisit jaunus threadus, tad varētu izmantot abus pavedienus ko tām performance korēm. LLVM kautko tādu piedāvā. Interesanti kā otrās atbildes autors tika pie šiem rezultātiem? https://softwareengineering.stackexchange.com/questions/156569/how-many-make-threads-to-use Varbūt tiešām jāpamēģina 7*cores (pamēģināju, un pēc pus minūtes jau 64GB RAMS ir cauri un viss nokrešo ) Labots Novembris 17, 2022 - AndrisBB Link to comment Share on other sites More sharing options...
binary Novembris 18, 2022 Share Novembris 18, 2022 pirms 13 stundām , AndrisBB teica: Problēma jau tur ka `make` nevar neko pasākt ar 'pavedieniem'. Vienkārši palaiž pieņemsim 8 paralēlas `gcc` instances. Ja gcc varētu iekšēji taisit jaunus threadus, tad varētu izmantot abus pavedienus ko tām performance korēm. Tiešām? Ko tad tas make/gcc/whatever tur dara ar corēm? Vienkārši noslogo to cori, papildus lasot source failus (IO), beigās saglabājot storagē rezultātu (atkal IO). Ja IO laika ziņā aizņem "apmēram necik" un 99% laika CPU core tiek 100% noslogota, tad ko tie pavedieni tur palīdzēs? Tāpat "abi pavedieni" savā starpā konkurēs uz to cori. Cik nu no lasītā sapratu, nav tā, ka "abi pavedieni" varētu izpildīties vienlaicīgi, fiziski gluži vienkārši nav resursu, uz kuriem tam notikt. Jebšu es kaut ko ne tā saprotu un uz tām "performance corēm" ir dzelži, kas ļauj vairākiem threadiem vienlaicīgi izpildīt instrukcijas? Link to comment Share on other sites More sharing options...
AndrisBB Novembris 18, 2022 Share Novembris 18, 2022 pirms 3 stundām , binary teica: Jebšu es kaut ko ne tā saprotu un uz tām "performance corēm" ir dzelži, kas ļauj vairākiem threadiem vienlaicīgi izpildīt instrukcijas? Instrukcijas izpildīšana jau ir tikai viena maza daļa no visa `pipelaina`. Tur jau vēl visādas optimizēšanas, pārkārtošanas, utt. Kautko var izpildīt paralēli, kautko nevar. Rezultātā sanāk kautkas pa vidam, ka viena kore var izpildīt 2 threadus, bet nav tik ātri kā, ja katrs threads uz citas kores. Link to comment Share on other sites More sharing options...
HIGH-Zen Novembris 18, 2022 Share Novembris 18, 2022 Un kas ar videokarti? Iebūvētā? Link to comment Share on other sites More sharing options...
AndrisBB Novembris 18, 2022 Share Novembris 18, 2022 (labots) Jā. Spēles nespēlēju, tapēc nekāda lielā jēga no atsevišķas videokartes nav. Monitors ir 34'' 3440x1440 un processora GPU tiek ar to galā bez problēmām. Nu vienīgais čakars, ko tagad esi ievērojis ir, ka ja 'hibernē' Linux Mint, tad monitors vairs neatgriežas pie dzīvības. Slinkums pētīt, kas par vainu. Pirmstam izmantoju Mac Mini M1 kā desktopu un nekad neslēdzu viņu ārā, tādas problēmas nebij. Kā arī kluss kā kaps pat pie 100% noslodzes, salīdzinot ar jauno 'putekļusūcēju'. Varbūt vajag kautkādu 'šķidro dzesēšanu' Labots Novembris 18, 2022 - AndrisBB Link to comment Share on other sites More sharing options...
Anonīms Alkoholiķis Novembris 19, 2022 Share Novembris 19, 2022 Sistēmu jāiegremdē eļļā un jātur aiz loga ārpusē.. Link to comment Share on other sites More sharing options...
HIGH-Zen Novembris 19, 2022 Share Novembris 19, 2022 Droši vien baigā noņemšanās, ja grib likt šķidro dzesi. Un vēl jau var dabūt coil whine. Tā ka ar to klusumu ir kā paveicas. Link to comment Share on other sites More sharing options...
AndrisBB Novembris 19, 2022 Share Novembris 19, 2022 Nē, vienkārši ventilātori. Kad neko nedara, tad jau kluss. Korpuss nāca par kautkādu 3 pin ventilātoru, tas bij faktiski 100% on. Nomainiju uz 4 pin Noctua, tas tagad kluss. Nu CPU vents ir diezgan skaļš, kad uz 100% mauc. Neko jau laikam tur nepadarīt. Droši vien atstāšu kā ir. Linux kernelī ar vēl īsti supporta priekš 13tās paaudzes nav. Mint standartā nāk ar 5.15, itkā strādā. Updeitoju uz 5.17, parādijās HDMI skaņa un citi sīkumi. Intelis tā īsti supportu esot pielicis tikai no 5.19 vai 6.0 (jeb 5.20). Ubuntu 22.10 jau ir ar 5.19, ganjau arī Mint drīz piedāvās. Var jau vienkārši updeitot pats. 1 stundu atpakaļ, HIGH-Zen teica: Droši vien baigā noņemšanās, ja grib likt šķidro dzesi. Neizskatās ka tur būtu baigā ņemšanās uzlikt tos all-in-one kitus. Bet nu vait tur būs kas klusāks, tas cits jautājums. Jātstiepj no darba kādu no šiem prototipiem, tik 1700 soketam nederēs https://www.iceotope.com/technologies/ Link to comment Share on other sites More sharing options...
ivo Novembris 23, 2022 Share Novembris 23, 2022 19.11.2022. , 14:38, AndrisBB teica: CPU vents ir diezgan skaļš Tak nomaini uz kaut ko šādu, būs daudz klusāks Link to comment Share on other sites More sharing options...
Recommended Posts
Izveido kontu, vai pieraksties esošajā, lai komentētu
Jums ir jābūt šī foruma biedram, lai varētu komentēt tēmas
Izveidot jaunu kontu
Piereģistrējies un izveido jaunu kontu, tas būs viegli!
Reģistrēt jaunu kontuPierakstīties
Jums jau ir konts? Pierakstieties tajā šeit!
Pierakstīties tagad!