Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 29 reacties

Intel heeft het verschijnen van de laatste top-500-lijst van supercomputers aangegrepen om nieuwe Xeon-cpu's aan te kondigen. Het betreft chips met zes cores die geoptimaliseerd zijn voor high performance-computing.

Volgend jaar komt Intel met de 'Nehalem-EX'-lijn van cpu's voor servers. Deze lijn zal uit processors met acht cores en ondersteuning voor HyperThreading bestaan. De fabrikant maakt echter bekend ook een variant met zes cores voor hpc-doeleinden uit te gaan brengen. Deze hexacore Nehalem-EX zal over hogere kloksnelheden dan de octocores beschikken, terwijl daarnaast volgens Intel 'voordelen bij sommige hpc-werklasten geboden worden'. De maximale hoeveelheid Nehalem EX-hexacores waarmee fabrikanten hun supercomputers uit kunnen rusten zal 256 zijn. Meer details over de komende chips geeft Intel nog niet.

Wel laat het bedrijf weten dat er eind dit jaar een bèta-programma voor zijn Ct-technologie beschikbaar komt. De Ct-technologie moet programmeren in C en C++ voor multicores eenvoudiger maken en ook bestaande code voor parallele verwerking optimaliseren.

Ten slotte benadrukte Intel dat van de 500 systemen van de laatste top-500-lijst van supercomputers, er 402 met Intel-cpu's uitgerust zijn, terwijl er 20 van de hoogste 50 noteringen Intel-processors bevatten. Dat neemt echter niet weg dat van de vijf krachtigste systemen er vier AMD-processors bevatten, waaronder het systeem dat de ranglijst aanvoert: Cray XT5 Jaguar.

Moderatie-faq Wijzig weergave

Reacties (29)

wat is het verschil tussen hyperthreading en multithreading?
kan niet egt uit aan de engelse wikipedia uitleg
hyperthreading is een techniek om in gunstige gevallen 2 berkeningen (gelijktijdig) door 1 core te laten doen (van Intel) en multithreading slaat volgens mij gewoon op een programma dat gebruik kan maken van meerdere threads zoals HT dat mogelijk maakt of cpu's met meer dan 1 core (oftewel de cpu ondersteund meer dan 1 thread tegelijk)...

[Reactie gewijzigd door watercoolertje op 17 november 2009 08:55]

En als je dan allebei de bovenstaande reacties samenvoegt kom je een heel eind ;)

Dus:

Thread: stuk aan een volgende programmacode

Multthreading: Een programma is opgedeeld in meerdere threads, om zo tegelijkertijd dingen uit te voeren. (Denk bijvoorbeeld aan op het op de achtergrond downloaden van een bestand, terwijl de GUI niet bevriest.)

Hyperthreading: Bepaalde delen van een core kunnen tegelijk gebruikt worden, zodat je in dat geval 2 threads tegelijk kan verwerken op 1 core. (normaal voeren cores verschillende threads uit door heel snel te schakelen tussen de verschillende threads, vandaar dat ook je P4 niet bevriest op het moment dat je meer dingen tegelijk aan het doen bent.)
Ik vind je uitleg nu niet echt toelichten wat het verschil is. En eerlijk gezegd het voorbeeld van het downloaden ook niet echt duidelijk, want dat kunnen gewoon verschillende programma's zijn.

Normaal kunnen verschillende programma's (schijnbaar) tegelijk werken, doordat het operating systeem heel vaak wisselt tussen de verschillende programma's, en deze steeds verdeelt over de verschillende cores.

Dat werkt leuk voor losse programma's. Je kunt iets downloaden, tegelijk een mailtje schrijven en een muziekje luisteren.

Maar als je binnen programma ook dingen tegelijk wilt doen, moet het programma intern in "losse sub-programmaatjes" opgedeeld worden. Dit noemen we threads.
Het operating systeem behandelt dit min of meer als losse programma's, zodat deze threads ook schijnbaar tegelijk verwerkt worden.

Een goed voorbeeld is de tekstverwerker Word. Deze bestaat uit 3 threads. Eentje voor het normale tikwerk, de opmaak, enzovoort. Eentje voor de spellings- en grammaticacontrole. (Je hoeft immers niet steeds te wachten wanneer je een woord voltooid hebt, je tikt gewoon verder. Als je een bestand opent, kun je ook gewoon gaan tikken, de spellingscontrole haalt je dan in). En de derde thread is het "printen-in-de-achtergrond".

Nu denk je misschien dat e.e.a. dan efficienter werkt wanneer je minimaal 3 cores hebt, maar dat is echt niet nodig. Op een gemiddelde pc draaien al gauw 20 processen, en dat wordt gewoon keurig verdeeld over de aanwezige cores.

Ok, nu nog het verschil tussen meerdere "echte" cores, en hyperthreading. Bij hyperthreading is er geen echte tweede core, maar is er slechts een klein gedeelte aanwezig in de processor. De overige delen van de core worden gedeeld. Voordeel is dat het veel goedkoper te maken is. Nadeel is dat twee threads vaak op elkaar moeten wachten op de gedeelde onderdelen, en de snelheidswinst beperkt is.

Om een idee te geven: Met 2 echte cores draaien twee onafhankelijke programma's gewoon 2x zo snel. Met 2 echte cores en twee threads binnen één programma is de snelheidswinst eerder een factor 1,9. (Dit vanwege de overhead om de twee threads onderling te laten communiceren en af te stemmen). Intel geeft bij hyperthreading een snelheidswinst op van 1,3 (dus een "hyperthread core" zal gemiddeld 30% van de snelheid van een echte core hebben).

En natuurlijk kan e.e.a. gecombineerd worden. Dus bij een "echte" 4-core processor met hyperthreading ziet het operating system 8 verwerkingseenheden. Maar het is lang geen echte volwaardige 8-core processor. Een "echte" 6-core processor is waarschijnlijk sneller dan zo'n 4/8 core processor.

[Reactie gewijzigd door Munters op 17 november 2009 12:38]

Mag ik nog even wat puntjes op de i zetten?

In een CPU zonder hyperthreading heb je een stukje opslag (de zogenaamde registers, de waarden waar je mee aan het rekenen bent) en een stukje dat daadwerkelijk berekeningen uit kan voeren (de ALU, de "arithmetic and logic unit"). Om een processor sneller te maken moet je met de ALU aan de slag, die moet simpelweg sneller worden (kloksnelheid omhoog), je moet er meerdere hebben (multi-core processors) of je moet hem efficiënter gebruiken (daar is hyperthreading een voorbeeld van).
Het punt is namelijk dat je RAM geheugen, in verhouding tot de processor, de laatste jaren steeds langzamer wordt (geheugen wordt sneller, maar processoren ook, en dat laatste gaat veel harder). Daarom komt het steeds vaker voor de je processor staat te wachten op het geheugen (dat data aan moet leveren), voordat ie verder kan. Oftewel: de ALU staat niks te doen.
Truc van hyperthreading: 1 ALU en 2 sets registers (ter vergelijking, een dual-core is 2 ALUs en 2 sets registers). Omdat er twee sets registers zijn ziet je OS twee processoren er is, conceptueel, niet echt een wezenlijk verschil tussen twee single-cores of één dual-core en kunnen er dus twee threads aan worden toegewezen (elke "processor" eentje). Omdat er slechts één ALU is kan echter maar één "processor" / thread tegelijk verwerkt worden. Zodra er echter data uit het geheugen gehaald moet worden voor deze thread boek je winst: normaal staat de ALU dan een hele tijd niks te doen, maar met hyperthreading kan de ALU meteen "overgeschakeld" worden naar de andere thread, die dan verwerkt kan worden.

Blijft er nog één vraag over: waarom niet gewoon een dual-core maken? Nou ja, dat kost meer ruimte op je chip. Een set registers neemt weinig ruimte in beslag, dat past makkelijk, een set registers plus een volledige ALU neemt meer plek in beslag. Uiteindelijk is één hyperthreaded core een "tussen-station" tussen een "gewone" single-core en een "gewone" dual-core.
Ik heb geen persoonlijke ervaring met hyperthreading (geef mij maar AMDtjes :p ) dus ik kan je niet vertellen hoe goed het in de praktijk werkt. Het is in theorie mogelijk (vanwege een beetje overhead) dat een hyperthreaded core net iets langzamer is dan een "gewone" core. In het gunstigste (theoretische!) geval kan het twee keer zo snel zijn. In de praktijk zal het er ergens tussenin liggen (volgens Munters hierboven dus 30% volgens Intel).
Truc van hyperthreading: 1 ALU en 2 sets registers
Het is meer dan dat.

Elke CPU heeft velen functional units, daar vallen inderdaad dingen als de ALU onder, maar ook diverse andere dingen. Veel van deze FU's zijn in meervoud uitgevoerd, met het idee dat de CPU instructies van 1 thread parallel kan uitvoeren (ILP). Alleen, het wordt steeds moeilijker om alle FU's ook daadwerkelijk bezig te houden.

Met hyperthreading probeer je gewoon je spare FU's bezig te houden met instructies vanuit je andere threads. Dikwijls ontstaan er toch weer afhankelijkheden, omdat er toch enige dependencies zijn. Als je totaal geen dependencies had, zou je het gewoon modelleren als een 2de core.
Ok, mijn uitleg was inderdaad niet helemaal compleet, maar geloof dat het plaatje nu wel duidelijk genoeg geschetst is :)

Echt ervaring heb ik niet met het voordeel van hyperthreading met mijn core i7, heb hem nog nooit helemaal vol getrokken, of vergeleken met hyperthreading uit. Maar het blijft wel machtig mooi om 8 grafiekjes te zien in task manager :D
Maar het blijft wel machtig mooi om 8 grafiekjes te zien in task manager
Op mijn dual CPU workstation geeft top en mpstat -P ALL er zelfs 16 weer :P

(2x quad-core nehalem + hyper threading :P)
Multithreading betekent dat een proces gelijktijdig over meerdere cores kan worden uitgevoerd. Dat levert dus een snelheidwinst op (iedere core doet een stukje van het werk, ipv dat één core alles moet doen).

Hyperthreading is een trucje om te 'voorspellen' wat de volgende instructie gaat zijn, en die alvast parallel aan de huidige instructie uit te voeren. In principe kan je hiermee dus snelheidswinst boeken.

Multithreading kan in principe met ieder merk CPU, zolang er maar meer dan één core is. Hyperthreading is afaik Intel-only.

[Reactie gewijzigd door wildhagen op 17 november 2009 08:55]

Multithreading betekent dat een proces gelijktijdig over meerdere cores kan worden uitgevoerd.

Voor multihreading zijn niet perse meerdere cores nodig. Windows*, en een heleboel Windows applicaties, maken gebruik van multithreading en draaien ook gewoon op een single core processor.
Multithreading betekent dat er meerdere programma-onderdelen tegelijkertijd kunnen draaien. Het OS bepaalt of dit afgewisseld wordt op 1 core, of uitgesplitst over meerdere cores.

Zie ook het goede betoog van Munters hieronder.

*Edit: en niet te vergeten Linux, OS X, etc.

[Reactie gewijzigd door menke op 17 november 2009 14:20]

Hier begrijp ik iets even niet:
De maximale hoeveelheid Nehalem EX-hexacores waarmee fabrikanten hun supercomputers uit kunnen rusten zal 256 zijn.
Dus je kunt maximaal 256 van die CPU's in een supercomputer stoppen?

Maar dat komt in de verste verte niet in de buurt van de meer dan 260.000 cores (meer dan 37.000 processors) in die Cray XT5 computer die nu aan de top staat.

Staat er een fout in het artikel of hoe zit het nu?
Wat ik denk dat er bedoelt word:
Er kunnen per node maximaal 256 cores gebruikt worden.
Dit omdat de meeste OSen een byte gebruiken om te bepalen wat op welke core draait.
Een super computer bestaat tegenwoordig uit meerdere nodes

[Reactie gewijzigd door Fiander op 17 november 2009 11:04]

Ok, maar in het artikel staat niet dat het 256 processors per node zijn. Het lijkt me overigens sterk dat deze beperking wordt opgelegd door het operating system, ik denk eerder dat het een hardware beperking is (max. 256 processors kunnen samenwerken in één node).
De grootste supercomputers bestaan uit meerdere nodes omdat het in de meeste gevallen niet nodig is (en slecht voor de prestaties) om iedere processor direct met iedere andere processor te laten praten. De XT5 op #1 draait bijvoorbeeld een Linux-kernel per 2 processors / 12 cores.

Voor Nehalem-EX is het maximum aantal sockets per node 256, maar SGI heeft al aangekondigd dat ze systemen met zeker 4096 sockets kunnen leveren. En als je genoeg geld hebt willen ze vast ook grotere configuraties voor je bouwen ;).

[Reactie gewijzigd door Wouter Tinus op 17 november 2009 11:05]

Leuke CPU's. Zou zo'n Octa core graag in mijn desktop terug zien (zou nogwel komen denk ik). Ben benieuwd op hoeveel Ghz deze cores draaien. Die Ct-Technologie spreekt mij tevens ook wel aan. Ben benieuwd in hoevere dit het programmeren vergemakkelijkt :)
Diegene die naar het lab waar ik werk komen draaien op 2,27 Ghz - we krijgen een shared memory system met 1024 Nehalem-EX cores met 8Tb werkgeheugen (SGI ultra violet)! :9~ Zou nog voor het eind van het jaar hier moeten zijn dus dat wordt een leuk kerstkado... ;)
Ten slotte benadrukte Intel dat van de 500 systemen van de laatste top-500-lijst van supercomputers, er 402 met Intel-cpu's uitgerust zijn, terwijl er 20 van de hoogste 50 noteringen Intel-processors bevatten. Dat neemt echter niet weg dat van de vijf krachtigste systemen er vier AMD-processors bevatten, waaronder het systeem dat de ranglijst aanvoert: Cray XT5 Jaguar.
Waarschijnlijk omdat die van AMD iets goedkoper zijn en je er dus meer kan combineren voor dezelfde prijs. Echter zie ik niet dat van de 5 krachtigste computers er 4 AMD processoren gebruiken; volgens www.top500.org hebben alleen de 1ste, 2de en 3de opteron chips, waarvan de 2de (RoadRunner) zelfs een combinatie van PowerXCell en Opterons heeft. Klopt dus volgens mij niet helemaal...

[Reactie gewijzigd door les_paulde op 17 november 2009 09:05]

Waarschijnlijk omdat die van AMD iets goedkoper zijn en je er dus meer kan combineren voor dezelfde prijs. Echter zie ik niet dat van de 5 krachtigste computers er 4 AMD processoren gebruiken; volgens www.top500.org hebben alleen de 1ste, 2de en 3de opteron chips, waarvan de 2de (RoadRunner) zelfs een combinatie van PowerXCell en Opterons heeft. Klopt dus volgens mij niet helemaal...
Budget genoeg voor de meeste dingen denk ik. En de Opterons kan je ook niet echt goedkoop noemen. Voor het topmodel van AMD kan je nog altijd véél geld voor uitgeven.

Ik denk meer dat het bij het feit ligt dat Intel gewoon niet zo goed schaalt tot in die aantallen van processors. Kan zijn dat met de Nehalem hier een verandering in komt, maar eerst zien dan geloven.

Ik snap je redenering niet. In de top 5 worden er in 4 systemen toch AMD processoren gebruikt? Hoe kan je daar nu aan twijfelen.
ik zie dus 'maar' 3 systemen waarin AMD chips gebruikt worden, in de 4de worden PowerPC chips gebruikt en in de 5de Xeon E5540/E5450- valt dus niks aan te twijfelen, alleen te concluderen... ;)
Hallo? En nu eens goed kijken naar de lijst??

In de Roadrunner (nummer 2 dus) worden 13824 Opteron chips gebruikt en 116640 PowerXcell processors. Er zitten er misschien niet veel in, maar er worden er toch wel Opterons gebruikt.
http://en.wikipedia.org/wiki/IBM_Roadrunner

In het National SuperComputer Center in Tianjin/NUDT (nummer 5 dus) zitten 5120 AMD GPU chips en 6144 Intel CPU chips.
http://en.expreview.com/2...ay-one-supercomputer.html
In de Roadrunner (nummer 2 dus) worden 13824 Opteron chips gebruikt en 116640 PowerXcell processors. Er zitten er misschien niet veel in, maar er worden er toch wel Opterons gebruikt.
http://en.wikipedia.org/wiki/IBM_Roadrunner
Er zitten inderdaad Opterons in dat beest, maar om nou te zeggen dat ie daar op draait...
Hoewel elk programma natuurlijk zelf kan kiezen hoe de hardware gebruikt wordt zal het vaak zo gaan:
De Opterons draaien management-taken op hoog niveau (data over het interne netwerk sturen, taken toewijzen aan Cells)
De PPU in de Cell zorgt voor management op een lager niveau (in principe: "zijn" acht SPUs taken toewijzen)
De SPUs in de Cell gaan daadwerkelijk aan het number crunchen.

Ik bedoel, als er ergens in een storage node toevallig een RAID-controller ofzo van Intel wordt gebruikt, roep je dan ook dat die machine Intel-chips bevat? Tuurlijk heb je in principe gelijk, maar het geeft geen goed beeld van de manier waarop de machine werkt.
En nummer 9 dan?

Nevermind, het artikel heeft het over de top 5, al kun je debatteren over #5 op de lijst.

[Reactie gewijzigd door Seal64 op 17 november 2009 09:46]

Waarom hebben ze voor de professionele gebruiker (freelancers ect.) nog geen moederboard uit waar je bv 4 of 8 sockets hebt. Je koopt de computer met 2 cpu's en prikt er later gewoon bij :) Dat is toch iets wat zeer leuk zou zijn. Naarmate de jaren vorderen moet je niet investeren in nieuwe computers van de grond op, maar kan je gewoon bijprikken.

Deze cpu's gaan we in macpro's zien?
je zoekt dus eigenlijks
http://www.tyan.com/produ...=MB&pid=554&SKU=600000043

en alvast deze om er bovenop te prikken
http://www.tyan.com/product_accessories_spec.aspx?pid=49
dan heb je 8 mogelijke CPU's, met elk 16GB lokaal RAM en in totaal 128 GB RAM.

boven staande staat helaas niet in pricewatch.
deze wel http://tweakers.net/price...915wa2nrf-e.html#tab:info

Je mag alleen zelf gaan uitvogelen wat een CPU kost welke voor meer dan 2 sockets geschikt is. Ik denk dat je dan wel gaat snappen waarom het er niet zoveel is.

[Reactie gewijzigd door Fiander op 17 november 2009 10:52]

Even de lijst bekenen, maar ik zie maar drie AMD systemen in de top 5. Buiten deze AMD systemen is er een Blue Gene met PowerPC procs en een cluster die bestaat uit Xeon's en ATI Radeon HD 4870x2.

Ligt er een beetje aan of je de ATI graka's ook onder AMD processors rekend.
EX beloven, ja dat doen ze al een paar jaar, eerst was het een mid 2009 launch, dan een eind 2009 nu is het al ergens in 2010, komt er nog op neer dat amd g34 nog op dezelfde moment zal zijn......

uit die top 500 kan je weer maar eens zien dat jan modaal steeds de bekende vendor kiest ook al zijn ze niet het best voor alle applicaties... 402 van de 500 lol welkom IT wereld waar de oude garde aan het hoofd van deze afdelingen enkel de naam pentium en intel kent.....
Zouden ze bij Intel een beetje jaloers zijn?
Neemt niet weg dat uit dit bericht duidelijk blijkt dat een gezonde concurrentie leidt tot
betere producten. Ik neem niet aan dat Intel dit bericht rondstuurt als ze de top 5
al in handen zouden hebben.
lol zo'n octocore in je pc zou wel lkkr draaien :p dan nog 8 gb ram ofzo dan loopt die als een trein :)
Loopt jouw pc niet soepel zonder octacore en 8 gig ram?
Als het hexa-cores worden genoemd hoezo heeft de processor dan 8 cores?? Dat klopt helemaal niet met de naamgeving. Het lijkt me ook niet dat ze out of the blue ineens met 8-cores komen. Ik denk dat het gewoon de verwachte 6-cores zijn.

edit: Als ik dit van de intel website lees: The 6-core chip will run at higher frequencies than 8-core versions of the Nehalem-EX processors and will offer advantages on some HPC workloads dan lijkt het er toch op of er OOK 8-cores gaan komen? Alleen zullen die dan op een lagere frequentie gaan draaien.

jj71: Dus je kunt maximaal 256 van die CPU's in een supercomputer stoppen?
Maar dat komt in de verste verte niet in de buurt van de meer dan 260.000 cores (meer dan 37.000 processors) in die Cray XT5 computer die nu aan de top staat.
Staat er een fout in het artikel of hoe zit het nu?


Uit het intel-artikel: and will be able to build supercomputers with up to 256 such chips; a supercomputer cluster may contain many such machines.

Dus 256 cpu's per machine en heel van van deze machines in een cluster, wat dan je supercomputer vormt.

[Reactie gewijzigd door pizzaislekker op 17 november 2009 11:01]

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True