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 , , 47 reacties
Bron: The Register

Het kleine Amerikaanse DRC Computers heeft een FPGA-module ontwikkeld die in een Socket 940-voetje past en die probleemloos van AMD's Hyper Transport-bus gebruik kan maken. Daarmee is het relatief eenvoudig geworden om de Opteron uit te breiden met een specialistische co-processor, zonder dat daar speciaal micro-electronica voor ontworpen en gebakken hoeft te worden. De FPGA of Field-programmable gate array bestaat uit een grid van componenten, en door softwarematig verbindingen tussen die componenten te maken of te verbreken, wordt de functionaliteit van de chip geprogrammeerd. Hoewel dergelijke programmeerbare 'accelerators' al geruime tijd gemeengoed zijn, is het voor het eerst dat een FPGA kant-en-klaar voor interactie met een mainstreamchip wordt geleverd.

DRC-FPGA Het grote voordeel van de nieuwe aanpak is de lage prijs: de DRC-ic's zijn leverbaar vanaf 4500 dollar, terwijl concurrerende programmeerbare co-processors makkelijk 15.000 dollar kosten. De concurrentie heeft meestal ook nog eens extra propriëtaire soft- en hardware nodig, waar een DRC-chip op elk moederbord dat met twee of meer Socket 940-voetjes is uitgerust, naast een Opteron kan worden geprikt. Het overbodig maken van de extra hard- en software van de FPGA-fabrikanten zorgt er bovendien voor dat de afhankelijkheid van de FPGA-producent flink afneemt. Naast de hoge kosten wordt die afhankelijkheid als een van de belangrijkste nadelen van FPGA-oplossingen gezien, reden waarom de klanten veelal de voorkeur geven aan het inzetten van meer generieke hardware. 'De gangbare accelators leveren veel te weinig extra's voor het geld wat ze kosten, dus de klant koopt liever wat extra standaardhardware. Wij proberen die hardware met een factor drie op prijsprestatieverhouding te verslaan', aldus Larry Laurich van DRC.

De goedkoopste chip van DRC biedt een 8bits brede 200MHz HT-aansluiting; de twee andere modellen hebben een 400MHz 16bits interface. De co-processors hebben tussen de vijftig- en honderdveertigduizend programmeerbare componenten aan boord, en kunnen per seconde 12,8GB met het computergeheugen uitwisselen. Dankzij deze chips zou AMD wel eens een beslissende voorsprong op Intels Xeon kunnen nemen, profeteert DailyTech. Hoewel die opmerking in het licht van de huidige afzet van programmable logic wat aan de voorbarige kant lijkt te zijn, kan AMD's beslissing om van HyperTransport een open standaard te maken met zulke initiatieven fors uitbetalen: vergelijkbare functionaliteit is voor Intels Xeon-platform niet aanwezig of, zoals gezegd, aanzienlijk duurder.

DRC-FPGA naast Opteron-chip
Moderatie-faq Wijzig weergave

Reacties (47)

Misschien dat een vergelijkbaar bordje zo veel extra kost, maar een beetje Xilinx (ongeveer de standaard voor FPGS) heb je al voor een paar Euro.
Iets meer detail zou dus wel aardig zijn.

En verder lijkt mij zoiets meer dan genoeg voor beginners met FPGA's: http://www.xilinx.com/xln...oadvision.session.new=Yes

En dan ben je met $150 klaar..

<edit> natuurlijk is dit lang niet zo snel als hypertransport, maar zou dat betekenen dat de licentie kosten voor hypertransport bijna 4500 dollar zijn ? De FPGA's kosten hier maar een fractie van.</edit>
dat is natuurlijk wel even een iets andere klassen.
die sluit je aan via ethernet 10/100 of USB bijvoorbeeld.
een hypertranseportbus is velen malen sneller, en een opteron socket heeft potentieel veel meer geheugen bandbreedte ter beschikking.

ik denk dat je een hele hoop van die dingen nodig zult hebben om 1 van deze socket 940 co-processors bij te kunnen houden.

dit ding moet ook meer concureren met apperatuur die je in de systeem kast bouwed, en die direct aangesloten is op het systeem via een high-bandwidth verbinding.
Je bent nog lang niet klaar. Dit is leuk om mee te spelen, maar het heeft geen hypertransport en ook geen access naar een berg super snel memory. Naar verhoudding is dat ook een behoorlijk klein FPGA'tje op dat experimenteer bordje.

Voor echte zware toepassingen dus totaal ongeschikt.
Kijk eens heel goed naar het logo op de gebruikte FPGA op het plaatje bij het artikel :)
Daar staat toch echt het logo van Xilinx.

Vergeet niet dat bij dit boardje ook de gebruikte FPGA een stuk snellere IO heeft dan normaal, want communiceren met 12,8 GB/s is toch echt niet zomaar haalbaar met de standaard FPGA's op hun site.
Ik vermoed dus dat ze ook nog een stukje niet-programmeerbare logica erin hebben zitten die intern een hele brede geheugenbus aanbiedt, want meestal draaien die dingen intern op niet zo'n hele hoge frequentie.
Daarnaast moet dit boardje ook nog kunnen samenwerken met de andere processor, dus zit er ook nog het nodige aan andere logica in en mogelijk ook wat software.
@Sentry23
.....maar zou dat betekenen dat de licentie kosten voor hypertransport bijna 4500 dollar zijn ?.....
Vergeet vooral niet dat zn module ook ontwikkeld moet worden, dat kast ook geld. Ik denk dat het grootste deel van de kosten in de ontwikkeling zitten.
Wat kun je er nou precies mee? Iemand een praktijkvoorbeeldje?
zie het een beetje als gewoon een gespecializeerde processor.
net als BV een GPU HEEL goed is in het maken van 3d berekeningen, terwijl een veel sneller lopende CPU dat veel minder goed kan en minder snel.
deze co-processors het zelfde. die kun je ook zo maken dat ze iets (en alleen dat) extreem snel kunnen uitrekenen.

denk bijvoorbeeld aan simulaties (natuurkunde, het weer ect), daarbij moeten vaak, heel vergelijkbare berekeningen miljarden keren worden uitgerekend, en als zo'n co-processors dat tig keer sneller kan scheel dat een hoop tijd en/of geld (je bent of sneller klaar, of hebt minder hardware nodig om het in de zelfde tijd te doen)
net als BV een GPU HEEL goed is in het maken van 3d berekeningen, terwijl een veel sneller lopende CPU dat veel minder goed kan en minder snel.
Een hedendaagse CPU is anders ook behoorlijk rap in vectorberekeningen hoor :). Het grote geheim van de GPU schuilt 'm in z'n memory access en caches. Hij kan heel snel texels fetchen en blenden naar de framebuffer. Aangezien de generieke cache van de CPU niet ontworpen is voor texture-achtige datastructuren en de CPU bovendien gewoon minder snel bij z'n geheugen kan dan een GPU dat kan, kan software rendering niet tippen aan hardware rendering. Op de tweede plaats komt wel de shader-throughput; een GPU heeft daar veel meer pipelines voor gereserveerd en kan daardoor vele vertices en pixels tegelijkertijd verwerken.

En daar ligt dan ook gelijk de kracht van een dergelijke co-processor. Je kunt de beschikbare hardware zo 'rangschikken' dat deze vele (kleine) taken parallel aan elkaar uit kan voeren, die dan gespecaliseerd zijn voor een bepaald proces.
Alle programma's die een bepaald onderdeel heel vaak heel snel moeten doen, kunnen deze processor hiervoor inschakelen. Dus denk veel eenvoudiger en aan een grotere markt. Bijvoorbeeld als Apache en/of MySql deze processor gaan ondersteunen (welke heel vaak hetzelfde doen).
Ik weet dat ze bij Astron een tijdje getest hebben met zware videokaarten die het filterwerk deden en de output via DVI beschikbaar stelde aan een aparte computer die die data verzamelde.

Daar verzamelen ze de data van de Lofar-telescopen en daar moet een hoop op gefilterd worden en zo'n 98-99% van de data kan dus weggegooid worden.
Dat is onmogelijk te doen met gewone x86 processoren, maar prima met dit soort oplossingen.

Op de RuG is een hele vakgroep bezig met stromingen. Dergelijke simulaties duren op een moderne dual-opteron soms nog weken om door te rekenen als je een klein beetje resolutie wilt kunnen halen, maar met dit soort dingen zou je de berekeningen veel sneller kunnen uitvoeren, puur omdat je de boel zo kunt schakelen dat je zoveel rekeneenheden naast elkaar kunt plaatsen dat vrijwel geen enkele volgende stap meer hoeft te wachten op de vorige.
Op een gewone x86 processor kun je maar een beperkt aantal optellingen en vermenigvuldigen parallel doen, omdat de circuits om meer te doen gewoon niet aanwezig zijn. Bij zoiets kun je die er gewoon bij maken en dus in feite een processor maken die heel specifiek geoptimaliseerd is voor een bepaalde berekening, of zelfs maar een deelberekening. Wanneer je in een latere stap komt kun je de configuratie van je "processor" gewoon herprogrammeren en die volgende stap dus ook weer zeer geoptimaliseerd uitvoeren.

Denk dus aan signaalverwerking, of simulaties waarbij je veel dingen parallel moet/kunt doen.
Interessante ontwikkeling, al denk ik dat deze snel ingehaald zal worden door de multicore ontwikkeling aangezien men over een tijdje bepaalde cores wel specifieke taken kan gaan geven aangezien er >4 op een chip zitten :)
al denk ik dat deze snel ingehaald zal worden door de multicore ontwikkeling
Ik denk het niet. Zo'n FPGA doet in hardware _exact_ wat je hem vertelt, geen haar meer of minder. Om datzelfde in software te doen heb je heel wat meer kracht nodig, al was het maar om alle overhead van je OS weg te werken. Tevens laat je bij een hoop van die specifieke dingen hele gedeeltes van de Opteron onbenut.

Er zijn niet voor niets bedrijven die overleven op producten die 15x zo duur zijn als de Opteron. In die markt kijken ze naar de prestaties die de Opteron neerzet _bij hun specifieke doel_ en lopen geeuwend de presentatiezaal uit...
weet ik niet, je kunt je fpga specifiek voor een doel programmeren. Bijvoorbeeld physics voor tijdens het gamen en vervolgens in je favo teken progje jpeg compressie / blurren (kan parallel op je fpga, bij genoeg gates misschien wel je hele plaatje blurren in <10 fpga-clock-cycles)
zoals ze in het artical al zeggen, ze willen dus een 3 keer betere prijs/prestatie verhouding hebben als vergelijkbare systemen met alleen maar normale CPU's en daar zullen ze in de toekomst dus ook quad or meer core CPU's mee bedoelen.

dus als je een heel specifiekte taak hebt zou je als het goed is met een van deze modules altijd goedkoper uit moeten zijn.
Precies, de toepassing moet al wel heel specifiek zijn wil het opwegen tegen een tweede Opteron processor.
Dit heb ik nog nooit gezien, en nog niet van gehoord dus dit mag dom klinken, maar zo een chip kost 4500 euro tot 15.000 euro, das veel meer dan een opteron :s waarom niet gewoon 2 opteron's nemen dan?
Omdat je voor bepaalde scenarios 20 to 40 opterons nodig hebt om net zo snel te zijn als een FPGA ;)
een fpga met een hypertransportbus; leuk voor researchlabs.

hoewel deze werken meestal met custom embedded chips en fpga's en supersnel achtergrondgeheugen (1T SRAM) e.d.

voor de commodity x86 markt is deze fpga misschien een leuk prototyping systeem. coprocessors worden wel on-chip dan wel on-chipset geimplementeerd (ie. tcp/ip offloading engines e.d. bij de ethernetcontrollert in de chipset.)

voor de normale amd processor markt dus niet een een wezenlijke vooruitgang en daardoor niet bedreigend voor intel.
Er wordt ook niet gesuggereerd dat het voor de consumenten markt interessant is, dus de normale AMD, maar voor het bedrijfsleven.
Daar kan het wel interessant voor zijn omdat je specifieke taken naar de co-processor kan wijzen terwijl de normale cpu de andere dingen voor z'n rekening neemt.
Eigenlijk alle research ja.
Opteron is als snel, doe er een co-processor bij;
Die rekent ingewikkelde delen uit.

Zo kun je voor weer/ziekten/defensie/astronomie etc specifieke functies bijprogrammeren.

Die in een cluster van 1000 cpu's
:9~ , denk dat je rekencentrum hele mooie resultaten kan neerzetten.
Waar het hier om gaat is dat deze FPGA dingen dus tot 3 keer sneller kan doen dan een opteron.
Te denken valt aan crypto of bijvoorbeeld een java processor.
Voor bepaalde dingen is dit dus de oplossing.
Denk daarbij bijv. aan procesbesturing waarbij konstant dezelfde berekening moet worden gemaakt op de input.
Daar gaat het dus om realtime berekeningen.
En dat is iets waar een opteron wat minder goed in is omdat de processor ook nog het OS moet draaien.
Dat betekent dat de processor niet 100% van de tijd met het proces bezig is.
Dit heeft ook weer gevolg voor de response tijd.
Waar het hier om gaat is dat deze FPGA dingen dus tot 3 keer sneller kan doen dan een opteron.
niet helemaal. niet 3 keer sneller, vaak zelfs velen maalen sneller als een opteron (maar per stuk zijn ze ook wat duurder als een opteron).
maar hun streven is om altijd MINIMAAL 3 keer meer prestatie te leveren voor het zelfde geld. (kan dus veel meer zijn)
simpele som
met 1 van deze dingen, die even veel kost als 3 opterons, kan je minimaal 9 opterons vervangen.
(heel globaal natuurlijk. en met 9 opertons heb je ook 2 mobos nodig die waarschijnlijk een stuk duurder zijn als 1 dual socket mobo ect, en de extra stroom kosten niet te vergeten).

son gohan, je hebt gelijk, maar waar beweer ik het tegendeel?
ik zie alleen wel dat ik vergeten ben te zeggen dat het alleen werkt als je een specifieke taak hebt om die co-processor voor te gebruiken, meende dat ik dat al wel genoemd had, maar dat was in een andere post, mijn excuses.
Je vergelijkt nu appels en peren.
Je kan niet even een Opteron eruit halen en deze erin doen en klaar is kees.
Je zal die dingen moeten programmeren voor hun taken die ze moeten gaan doen, of programma's schrijven die dat voor jou doen. Het is geen vervanging van de Opteron, maar een aanvulling...
Zie het als de nieuwe Physixs, of zo iets...
Een add-on...

/Edit
Maakt niet uit, kan gebeuren. :)
Dat is maar een klein deel van de voordelen.

Dit ding kan bepaalde berekeningen gewoon vele malen sneller doen dan een Opteron (of any andere CPU) ooit zou kunnen.

Voor iedere toepassing kun je gewoon je eigen custom cpu/gpu/dsp/whatever bouwen. Puur dedecated voor de opdacht die deze moet doen. Deze zou zelfs dual of quad core kunnen zijn als dat zou passen in de FPGA. Los van of er nog een OS op zou draaien is de winste die je bij bepaalde toepassing kunt halen gigantisch.
is het gek om me af te vragen waarom we het hier hebbe over 8bit en 16bit en respectievelijk 200 en 400mhz (bus snelheden???) hebben,

ik vraag me dan gelijk af waarom dit soort co-procesoortjes
op een relatief zeer dure socket gaan terweil 't mij voorkomt (maar dat zal ik wel mis hebben dan?) dat ze ook op een pci-e x16 ook zoude passen...

zal er wellicht naast zitten, maar wilde 't toch vragen...

IEMAND?????

/edit: zoveer ik begrijp heeft pci-e x16 een max- snelheid van +/- 3.7GiB/s - lijkt me voor een Co-processort toch wel meer dan genoeg ????
Voor de meeste toepassingen zal een gewoon PCIe slot wel genoeg bandbreedte hebben en ik vermoed dat er ook al wel dergelijke kaartjes zijn of in ontwikkeling zijn voor de 16x PCIe sloten.
Het nadeel is echter dat je dan gebruik moet maken van de aanwezige processor om de data te verkrijgen en weer terug te sturen. Daarnaast is de latency een stuk lager als 'ie rechstreeks op die HT bus zit en dat kan ook een hoop schelen, want ik vermoed dat er niet echt veel ruimte voor buffers op de FPGA zit. Geheugencellen in een FPGA nemen namelijk relatief kostbare resources in beslag, aangezien je maar enkele tienduizenden programmeerbare componenten hebt en dat dus neer zou komen op zo'n 1 bit per component.
Ook om die reden kan het handig zijn om het geheugen van de rest van het systeem te gebruiken als goedkope cache/werkgeheugen voor die co-proc.
je vergeet dat er in een 940 socket niet alleen in totaal 3 hypertransport bussen kunnen, maar dat ze ook aangesloten worden op dual channel ddr400 geheugen (en straks dual channel ddr2 800 geheugen)

ook is de latency van de hypertransport bus naar het systeem toe korter, waardoor je co-processors efficienter kan werken.
Hoe zit het met de koelmogelijkheden voor zo'n chip? Die heeft dan een non-standard koeler nodig, lijkt mij.
Vermoedelijk gewoon passief, of met een klein koelertje. De dikste versie verbruikt maximaal 40 Watt (minimaal 10W). De kleinere 5 tot 20W.
Komt zoiets ook misschien voor de socket 939 ? :9
Behoorlijk nutteloss, aangezien je altijd een "host cpu" nodig hebt, en dus twee sockets. Dus: 939 is een no-no!
d'r zijn ook multi-cpu uitvoeringen op de 939 hoor. Bij m'n vorige werk hadden we een setje van 6 servers met dualcore 939 opterons, met nog 1 extra CPU slotje vrij op het moederbord om te kunnen schalen.
Je zult 940 bedoelen. Een pinnetje meer maakt een groot verschil
om te kunnen omschakkelen ja, maar dus niet om naast elkaar tegelijk te kunnen gebruiken.
want socket 939 heeft niet gehoeg hypertranceport links om 2 cpu's en een northbridge tegelijk in een systeem te hebben.
Dan hadden ze met kit een pinnentje dichtgemaakt denk ik.

:+
Dankzij HyperTransport is AMD's platform modulair en heeft het veel potentie. Er was al langer sprake van co-processors maar tot nu toe werd er alleen gepraat erover.

Nu bestaat ie dus echt, en zal het andere bedrijven stimuleren om meer uit AMD's HyperTransport systeem te halen. Customs PC's zijn veel makkelijker dan ooit te maken. Alleen jammer dat er nog weinig tot geen Custom Mainboards en custom S940 chips worden gemaakt.

Ik stel me voor: Een Quad Socket Opteron bord met daarop 2x Quad Core Opteron en 2x Extra FPU/Integer co-processors. Wat een systeem :9~

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