En superdator från grunden

Permalänk
Medlem
Skrivet av scombei:

Intressant artikel

Funderar dock lite kring verkningsgraden på 5%. Är denna siffra mer eller mindre konstant så fort man arbetar med flera noder eller minskar den linjärt? Om jag bara haft två noder hade verkningsgraden fortfarande varit ca 5% med detta system?

Vilken verkningsgrad skulle jag få om jag bara haft 1? Finns ju ingen kommunikation att ta hänsyn till mer än till lagrignsservern och administrationsnätet. Om så är fallet torde jag ha ~100% verkningsgrad. Vilket i sin tur skulle innebära att jag behöver ~20 noder för att uppnå samma beräkningskraft (med antagandet att verkningsgraden på 5% är konstant)!

Känns som jag tänker fel, om inte är det ju helt vansinnigt ^^

Problemet formuleras i Almdahls lag och har lika mycket (mer?) med mjukvaran och dess rent praktiska gränser att göra som med hårdvaran. Ju fler noder/processorer/trådar desto sämre effektivitet pga. att även mängden overhead (extra administriva operationer) som måste genomföras för att synkronisera programmet ökar.

http://en.wikipedia.org/wiki/Amdahl%27s_law

Permalänk
Medlem

Hur blir 480st diskar på 3 terabyte vardera ca 2TB borde väll vara 4 terabyte vardera för att det ska stämma. 480*3=1440, 480*4=1920.

Visa signatur

CPU: 5900x. Mem:64GB@3200 16-17-17-34-1T. (ImDIsk)
GPU: 1080 Ti@ca 6-7%OC. Sound: SB-Z -> toslink (DTS)-> old JVC. MB Realtek to Z-2300 for VOIP.

Permalänk
Datavetare
Skrivet av anon159643:

Edit: Hur tusan räknar man energieffektivt på en cpu men vanliga mått? Om vi tar en lysdiod så är all energi som inte resulterar i ljus lika med "onyttig energi". Så på en cpu skickar man in 90Watt och nästan 90Watt värme kommer ut så är den 0% energieffektiv? (ja jag kan ohms lag, men jag förenklar resonemanget)

Som phz redan påpekat är FLOPS/W ett sätt att mäta. Men som nämns i artikeln så är effektiviteten i vissa typer av beräkningar (de som relativt mycket kommunikation mellan noder) låg, så ett bättre mått är utförda-jobb/Joule (måste vara definierat åt det hållet för nordamerikaner då större alltid ska vara bättre , precis som de har miles-per-gallon i stället för vårt liter-per-mil).

Finns en de-facto standard benchmark för att mäta energieffektivitet för servers, SPECpower, där kör man med "Server Side Java Operations per Joule" som mått vilket känns som en väldigt rimlig definition av energieffektivitet.

För att få hög beräkningar/J kvot i lägen med låg utnyttjandegrad blir det likt moderna telefoner/bärbara datorer väldigt viktigt med snabb race-to-sleep och sedan låg förbrukning i "idle". Som artikeln nämner drar beräkningsnoderna 30-40W i tomgång, betydligt högre än vad man kan förvänta sig av Haswell men det beror på att Xeon E5/E7-plattformen är idag optimerad för bra perf/W vid last samt maximal perf. Går med andra ord att fixa om det skulle prioriteras.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Avstängd

Fan va nice att sweclockers lägger upp en trevlig nyhet varje helg. Ni har gjort de ett tag nu och det uppskattas för de blir tråkigt när där inte finns något att läsa på helgen. Innan var det alltid att nyheterna tog stopp på fredag och sen fick man vänta till måndag, vilket var tråkigt.

Permalänk
Medlem

klarar den ms röj

Visa signatur

[Intel Core i9@13900KF Raptor Lake@5,5Ghz Oc][Asus ROG Z790 HERO[G-Skill RGB 32GB 6600Mhz cL34][WD Back 2TB NvMe][2TB Samsung 970 Evo + 2x8Tb Samsung 870 Qvo spel disk][Msi RTX 4090 Gaming Trio-X][ASUS ROG Swift OLED PG48UQ][Windows 11][1000/1000Mbits Telia fiber][Razer Ornata Tangentbord.

Permalänk
Medlem

Intressant artikel, men måste gnälla på språket som kändes väldigt styltigt. Bitvis kändes det som att läsa något som kommit direkt från Google Translate. Ser gärna fler artiklar av skribenten, men gärna att någon annan på SC:s redaktion går igenom texten innan.

Permalänk
Medlem
Skrivet av hACmAn:

Hur blir 480st diskar på 3 terabyte vardera ca 2TB borde väll vara 4 terabyte vardera för att det ska stämma. 480*3=1440, 480*4=1920.

Är nog antalet eller 2PB som är fel då det verkar vara 3TB diskar på bilden.

Permalänk
Skrivet av 92_slayer:

hur mkt skulle du gagnas av ett infiniband i en vanlig speldator? skulle det göra skillnad om proffsen i vissa spel hade det jämfört med andra??? jag är bara nyfiken.

Bara om man tycker att "vanlig" ethernet orsakar outhärdlig lag pga latens! Men vem vet, kanske finns en placeboeffekt om man vet att man kommunicerar via UUID istället för sketna IP.

Permalänk
Skrivet av svealan:

Frågan är dock:

Går det att spela på den?

Vill du spela får du nog sikta in dig på en HPC installation som inkluderar GPU(er). Om du har tålamod så ser summit lite gullig ut. Har nästa generations NVidia grafik (Volta), flera 1000 kort för maximal framerate!

Permalänk
Medlem
Skrivet av 92_slayer:

hur mkt skulle du gagnas av ett infiniband i en vanlig speldator? skulle det göra skillnad om proffsen i vissa spel hade det jämfört med andra??? jag är bara nyfiken.

Normalt sett skickas det väldigt lite information vid spelande, latenstiden är det viktiga. I ett vanligt LAN ligger latenstiden på under 1 ms, eller en tiondel av tiden det tar att rendera en bild. Så nej, det skulle inte ge någon som helst fördel.

Permalänk
Medlem
Skrivet av CamelCase:

Vill du spela får du nog sikta in dig på en HPC installation som inkluderar GPU(er). Om du har tålamod så ser summit lite gullig ut. Har nästa generations NVidia grafik (Volta), flera 1000 kort för maximal framerate!

Frågan är inte heltokig, de speltjänster som sköts via nätet (saliga OnLive etc) körde förmodligen med liknande prylar, i.e. blad med processorer med många kärnor, Nvidia GRID-card och ovanpå det en bunt virtualiserade miljöer.

Permalänk

Mycket bra avslutning!

Permalänk
Medlem
Skrivet av CamelCase:

Vill du spela får du nog sikta in dig på en HPC installation som inkluderar GPU(er). Om du har tålamod så ser summit lite gullig ut. Har nästa generations NVidia grafik (Volta), flera 1000 kort för maximal framerate!

Rätt häftigt egentligen att korten är passiva och att fläktar pushar luft genom flänsarna (fast troligen kan dom byta kyllösning om dom vill, mer standardlösningen jag tänker på).

Vore lite kul om fler servers kör med oljekylning (teoretiskt bör det sänka energiförbrukningen rätt bra). Fast jobbigt att byta delar i sådant system.

Visa signatur

Min spel rigg:FD Define R4|VX 550W|i5 2500K|Corsair LP 4GBX2|Mammabräda P67 Extreme4|GTX 670 windforce|23tum u2312hm
Min gamla/HTPC:AMD 6000+|Ram 2GbX2|Radeon HD5770| XFX 450/nu XFX 550
Mitt bygge: ByggloggFri frakt INET:Fraktfritt sweclockers vid köp över 500kr

#Gilla inlägg som är bra & Använd citera/@"namn" vid snabbt svar

Permalänk
Datavetare
Skrivet av CamelCase:

Vill du spela får du nog sikta in dig på en HPC installation som inkluderar GPU(er). Om du har tålamod så ser summit lite gullig ut. Har nästa generations NVidia grafik (Volta), flera 1000 kort för maximal framerate!

De HPC som inkluderar GPUer kör typiskt med Nvidia Tesla som är optimerade för beräkningar, går dessa ens att använda för att rendera grafik? Finns då ingen synlig kontakt för skärm på denna

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av bboy-basil:

Energi problem, Känns lite onödigt att dra upp sådant, datorer blir mer ström effektiva varje år dessutom blir vi bättre med att utnyttja sol vind och vatten

Energiåtgången är ett problem när datorerna börjar komma upp i 100-megawattklassen, eftersom det är orimligt rent praktiskt. Det går inte i praktiken att ha en en-exaflopmaskin somn ska dra en gigawatt och behöva ett eget kärnkraftverk. Men Intel har lyckats sänka effektåtgången. Den nya Aurora kommer att leverera 1 petaflop för bara 0,072 megawatt, men vill inte säga hur. Jag ligger på dem.

Permalänk
Medlem
Skrivet av hACmAn:

Hur blir 480st diskar på 3 terabyte vardera ca 2TB borde väll vara 4 terabyte vardera för att det ska stämma. 480*3=1440, 480*4=1920.

Du glömmer overhead för RAID-5-funktionen. Med så många diskar går det inte att bortse ifrån att en av dem går sönder då och då. Utan RAID klarar man sig inte.

Permalänk
Medlem
Skrivet av Bengt-Arne:

Intressant artikel, tack!

Men... Sa dom något om hur ofta diskarna kraschar?

Nej. Det berättades inte, men du kan ju ta en disks MTBF och dividera med 480. Men det spelar ingen roll för det är RAID 5.

Permalänk
Medlem
Skrivet av 92_slayer:

hur mkt skulle du gagnas av ett infiniband i en vanlig speldator? skulle det göra skillnad om proffsen i vissa spel hade det jämfört med andra??? jag är bara nyfiken.

Du skulle inte vinna något alls för det finns inget du kan ansluta Infiniband till, inuti en vanlig speldator. Och det går inte att koppla till Internet.

Permalänk
Medlem
Skrivet av anon159643:

Intressant artikel och jag beställde hem en sådan superdator som htpc efter att ha läst den.

På tal om energi så är en processor extrem energi-ineffektiv (typ 0% blir nyttig energi om man ska avrunda eller?), då i princip all energi blir värme. Men denna värme kan man ta vara på och sälja som värme eller el.

Precis all inmatad energi till en dator blir till värme. Vad kan den annars bli till? Kemisk energi? Rörelseenergi? Ljus? Verkningsraden är noll. Men man kan återvinna den inmatade elenergin. Det gör Bahnhof. Men med tanke på kylmaskinernas pris och inte helt toppenverknignsgrad måste man upp i halvmegawattklassen innan det blir riktigt lönsamt. Fortum köper värme. Se min hippa film: http://techworld.idg.se/2.2524/1.615444/stadje-1-600-servrar-...

Permalänk
Datavetare
Skrivet av JörgenS:

Du skulle inte vinna något alls för det finns inget du kan ansluta Infiniband till, inuti en vanlig speldator. Och det går inte att koppla till Internet.

Visst går det att koppla InfiniBand till Internet, att köra IP över denna länktyp är en standardfunktion under Linux och ser även ut att vara det under Windows.

Däremot lär man ändå inte vinna något på det då det knappast är den delen av nätverket närmast speldatorn som är den dominerande latensfaktorn. Även om man sitter på ett LAN med 300FPS handlar det om >1ms per frame så latensen i Ethernet är flera tiopotenser lägre -> irrelevant faktor.

Edit: Tack för en väldigt intressant artikel, är riktigt kul att läsa om datorsystem där man verkligen pushat saker och ting till det yttersta!

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av scombei:

Intressant artikel

Funderar dock lite kring verkningsgraden på 5%. Är denna siffra mer eller mindre konstant så fort man arbetar med flera noder eller minskar den linjärt?

Vilken verkningsgrad skulle jag få om jag bara haft 1? Finns ju ingen kommunikation att ta hänsyn till mer än till lagrignsservern och administrationsnätet. Om så är fallet torde jag ha ~100% verkningsgrad. Vilket i sin tur skulle innebära att jag behöver ~20 noder för att uppnå samma beräkningskraft (med antagandet att verkningsgraden på 5% är konstant)!.

Med bara en enda dator skulle verkningsgraden alltid bli 100%, men då är det inte parallellprocessing. Och det är bara medelverkningsgraden mellan alla sorters program som är 5%. Verkningsgraden är helt beroende på typ av problem och hur klantiga programmerarna är. Det kan också bero på vilken kommunikationsstrategi man väljer. Med asynkron kommunikation, där processorerna inte väntar på varandra, kan man öka verkningsgraden. Men i princip handlar det om att klanta mindre när man skriver program.

Och vissa problem, kan, som jag antyder i artikeln, köras med betydligt högre verkningsgrad.

Permalänk
Medlem
Skrivet av Zelements:

Varje reportage av Städje vi fått ta del av här har varit en riktig guldgruva med kunskap, mer sådant tack! Så skönt att han har en ny plattform att skriva på nu när IDG gått åt helvete...

Nå, jag skriver ju fortfarande hos Techworld. TW upprätthåller fortfarande kvalitetens fana (http://techworld.idg.se/2.2524/1.621798/den-mystiska-mekanism...).

Permalänk
Medlem
Skrivet av klinggels:

Väntar fortfarande på kvantdatorerna.

Då får du vänta. De är fortfarande bara fantasifoster: http://techworld.idg.se/2.2524/1.483680/datorn-som-ingen-fors...

Permalänk
Medlem
Skrivet av hakro807:

Intressant artikel, men måste gnälla på språket som kändes väldigt styltigt. Bitvis kändes det som att läsa något som kommit direkt från Google Translate. Ser gärna fler artiklar av skribenten, men gärna att någon annan på SC:s redaktion går igenom texten innan.

Exempel? Var skriver jag som Google Translate? Menar du att jag skulle ha snott engelsk text?

Permalänk
Medlem
Skrivet av Thomas:

Nja, läs artikeln jag länkade.
Den observerbara delen är 93 miljarder ljusår i diameter, inte <14 (och inte heller <28, som är den mer rimliga felaktiga siffran isåfall, eftersom det skulle vara en radie på ~13.8, inte diameter, om det vore så). Hur stort universum är totalt vet vi som sagt inte.

Som det mesta annat mäter man det normalt radien. Därav att 13.8 används istället för 27.6.

Vi kan omöjligt observera något som är längre bort än 13.8Gly, då ljuset inte skulle ha nått fram. Dessa objekt vi tittar på som är 13.8Gly bort, tittar vi på som de såg ut för 13.8Gy sedan. Att dessa har förflyttat sig, och idag befinner sig mycket längre bort är inte relevant, då vi inte kan observera detta.

Som sagt, du kan hävda att det "kända" universum är 93Gly, men inte det observerbara.

Edit: Den enda referens wikipedia har för att det skulle vara 93Gly är en artikel som specifikt skriver "Today the diameter of the observable universe is estimated to be...".

Jag hävdar fortfarande att detta är en dålig definition, då det "observebara" borde rimligen referera till vad vi kan observera. Vilket är hur unviversum så ut då ljuset skickades.

Permalänk
Medlem
Skrivet av JörgenS:

Nej. Det berättades inte, men du kan ju ta en disks MTBF och dividera med 480. Men det spelar ingen roll för det är RAID 5.

Nja... Dom diskarnas MTBF stämmer ju inte i praktiken!
http://www.sweclockers.com/nyhet/20362-backblaze-fasar-ut-5-0...

Visa signatur

Engineer who prefer thinking out of the box and isn't fishing likes, fishing likes is like fishing proudness for those without ;-)
If U don't like it, bite the dust :D
--
I can Explain it to you, but I can't Understand it for you!

Permalänk
Medlem

Bra artikel, men enormt jobbig och läsa. Känndes som att det inte var något flyt i artikeln när man läste den.

Visa signatur

Citera för svar!
ASUS X570-E, AMD 5950X, RTX4080 Super, 32gb B-die

Permalänk
Hedersmedlem
Skrivet av DevilsDad:

Som det mesta annat mäter man det normalt radien. Därav att 13.8 används istället för 27.6.

Vi kan omöjligt observera något som är längre bort än 13.8Gly, då ljuset inte skulle ha nått fram. Dessa objekt vi tittar på som är 13.8Gly bort, tittar vi på som de såg ut för 13.8Gy sedan. Att dessa har förflyttat sig, och idag befinner sig mycket längre bort är inte relevant, då vi inte kan observera detta.

Som sagt, du kan hävda att det "kända" universum är 93Gly, men inte det observerbara.

Vill egentligen inte svara här, eftersom det är OT, ber om ursäkt för det... men nej, jag pratar fortfarande om det observerbara, som i det vi kan se just nu.
De objekt som är längst bort bland allt vi kan se är i dagsläget omkring 47 miljarder ljusår bort. De var omkring 13-14 miljarder ljusår bort när det ljus vi nu ser lämnade dem, dock.
Anledningen till skillnaden är alltså att rymden mellan oss och dem har expanderat, så att avståndet ökats med c:a 33 miljarder ljusår under tiden ljuset har färdats. Eftersom expansionen av rymd mellan två objekt inte har någon hastighetsgräns (till skillnad från rörelse genom rymd, som relativitetsteorin begränsar) så är detta inget problem.
Om det inte vore för expansionen så skulle du förstås ha helt rätt att vi inte skulle kunna se längre bort än universums ålder gånger ljusets hastighet.

Alltså kan man antingen säga att vi kan se 14 miljarder ljusår bort -- men det är missvisande, eftersom de objekten numera är väldigt mycket längre bort -- eller så kan man säga att de är 47 miljarder ljusår bort. I vilket fall så ser vi dem förstås som de var ~14 miljarder år sedan.
Oavsett så skulle det gå in 47 miljarder 1 ljusår långa tumstockar mellan oss och de objekten om de magiskt kunde dyka upp överallt samtidigt, idag, men "bara" 14 miljarder st vid det moment ljuset skickades iväg.

Länkar -- alla förklarar på ungefär samma sätt, så det är egentligen ingen mening att läsa flera.
http://scienceblogs.com/startswithabang/2009/07/31/the-size-o...
http://www.pbs.org/wgbh/nova/blogs/physics/2012/10/how-large-...
http://www.fromquarkstoquasars.com/from-quark-to-quasar-the-o...
http://www.space.com/24073-how-big-is-the-universe.html

Visa signatur

Asus ROG STRIX B550-F / Ryzen 5800X3D / 48 GB 3200 MHz CL14 / Asus TUF 3080 OC / WD SN850 1 TB, Kingston NV1 2 TB + NAS / Corsair RM650x V3 / Acer XB271HU (1440p165) / LG C1 55"
Mobil: Moto G200

Permalänk
Datavetare
Skrivet av JörgenS:

Med bara en enda dator skulle verkningsgraden alltid bli 100%, men då är det inte parallellprocessing. Och det är bara medelverkningsgraden mellan alla sorters program som är 5%. Verkningsgraden är helt beroende på typ av problem och hur klantiga programmerarna är. Det kan också bero på vilken kommunikationsstrategi man väljer. Med asynkron kommunikation, där processorerna inte väntar på varandra, kan man öka verkningsgraden. Men i princip handlar det om att klanta mindre när man skriver program.

Och vissa problem, kan, som jag antyder i artikeln, köras med betydligt högre verkningsgrad.

Antar att "en enda dator" ska vara "en enda CPU-kärna". Även om latensen mellan CPU-kärnor i en och samma CPU-krets är runt två tiopotenser lägre än InfiniBand så är det ändå ungefär en tiopotens dyrare att läsa/skriva en cache-line som bara används av den lokala kärnan mot att läsa/skriva en cache-line som samtidigt används av en annan CPU-kärna.

Kan enkelt ses t.ex. med detta program (standard C++11)

#include <atomic> #include <chrono> #include <cstdint> #include <iostream> #include <thread> #include <vector> #define NUM_THREADS 2 using namespace std; atomic<uint64_t> var; void adder() { for (;;) var.fetch_add(1, memory_order_relaxed); } int main() { vector<thread> thrs; for (int i = 0; i < NUM_THREADS; i++) thrs.emplace_back(thread(adder)); for (auto &thr: thrs) thr.detach(); this_thread::sleep_for(chrono::seconds(1)); cout << var.load() << endl; }

Dold text

Programmet skapar två trådar som båda adderar ett till en variabel så fort det bara går under en sekund och skriver sedan ut totalt antal gånger man adderat ett till den gemensamma variabeln.

Kör jag detta på en CPU-kärna (vilket inkluderar på två olika "hypertrådar" i samma kärna alt. att programmet delar en fysisk CPU-tråd) får man ett rejält mycket högre värde än om man kör programmet på två CPU-kärnor, detta visa åter igen vad kommunikationslatens (i detta fall via cache-koherens protokollet) kan göra i program som körs över flera CPU-kärnor.

Kör jag detta på en dator med Silvermont där två kärnor delar en L2-cache och jämför fallen:

  1. båda trådar på samma CPU-kärna

  2. trådarna kör på två CPU-kärnor som delar L2-cache

  3. trådar kör på två CPU-kärnor som inte delar L2-cache (måste gå via RAM)

Resultatet blir då att första fallet är x3.3 snabbare än 2. och x8.4 snabbare än 3.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Entusiast
Skrivet av Broken-arrow:

Rätt häftigt egentligen att korten är passiva och att fläktar pushar luft genom flänsarna (fast troligen kan dom byta kyllösning om dom vill, mer standardlösningen jag tänker på).

Vore lite kul om fler servers kör med oljekylning (teoretiskt bör det sänka energiförbrukningen rätt bra). Fast jobbigt att byta delar i sådant system.

Att köra stora flänsar på CPU och köra en rad fläktar i fronten har varit standard länge. Det är det överlägset smidigaste sättet att kyla stora mängder servrar på. Det hjälper ju inte så mycket att sätta en liten fläkt på en kylfläns i chassit om den inte får luft utifrån. Det blir också väldigt mycket lättare att serva när fläktarna ger upp om man slipper öppna upp hela chassit varje gång. Nvidia säljer sina Tesla i två modeller, en med och en utan fläkt. Samma sak med Intels Xeon Phi så även instickskort kyls av en rad fläktar i ena änden av chassit.

Skrivet av Yoshman:

De HPC som inkluderar GPUer kör typiskt med Nvidia Tesla som är optimerade för beräkningar, går dessa ens att använda för att rendera grafik? Finns då ingen synlig kontakt för skärm på denna
http://www.hardwarezone.com.ph/files/img/2013/05/NVIDIA-Tesla...

Borde väl inte vara några problem att låta en stor mängd Tesla rendera grafik och sedan skicka resultatet till ett enkelt kort som sköter skärminterfacet. När du kör SLI så är det ju bara ena kortet som faktiskt pratar med skärmen. Split frame rendering med en rad pixlar per GPU borde ju ge rätt bra fart om vi blundar för alla problem med att kommunicera mellan ~1000-2000 GPUer.

Visa signatur

Q9450, HD4850, 8 GB DDR2 800 MHz, 3x750 GB, Antec 300, Dell 2408WFP, U2410, Qnap TS-419p+ 4x2 TB Samsung F4, Asus UL30A-QX056V, Logitech Z-680, Sennheiser HD380pro, M-Audio FastTrack Pro, Ibanez sa160qm, Ibanez TB 15R, Zoom 505II, Ibanez GSR 200, Ibanez SW 35, Cort AC-15, Squier SD-3 BBL, Yamaha PSR 270, Røde NT1-A, Nikon D200, Nikkor 18-70/3,5-4,5, 70-300VR, 50/1,8, 28/2,8, Tamron 17-50/2,8, 90/2,8, Sigma 30/1,4, SB-800, SB-25, SB-24