Multicoreprocessors nog steeds een uitdaging

27 maart 2009
Als voornaamste reden wordt gegeven dat de embedded software geheel is afgestemd op single-corechips en dat het zeer moeilijk is om de software aan te passen voor chips met meer kernen. Tweede factor is dat de rekentaken binnen een communicatiesysteem zich maar zeer moeilijk laten parallelliseren. Daardoor wordt het erg moeilijk om de code efficiënt te verdelen over twee of meer rekenkernen. Een bepaalde taak in twee min of meer gelijke delen splitsen is nog wel te doen, maar een verdere verdeling wordt moeilijk.

Die conclusie trekt The Linley Group uit verzamelde marktgegevens. Makers van embedded systemen blijven nog in toenemende mate gebruikmaken van single-corechips. Aan het eind van dit jaar zal het aandeel van single-coreprocessors zijn gestegen tot 50 procent van het totaal, zo becijfert Linley.

Het aandeel van de heterogene systemen, en dan met name de PowerQuicc-architectuur zoals die is bedacht door Freescale Semiconductor, is op zijn retour. Nu heeft nog ruim 40 procent van de systemen zo’n heterogene architectuur, een aandeel dat aan het eind van 2012 zal zijn geslonken tot een procent of 10. PowerQuicc is, zoals de naam al doet vermoeden, gebaseerd op de Power-architectuur. Een of meer Power-chips worden gecombineerd met een Quicc Engine, een onderdeel dat fungeert als centrale verkeersregelaar voor het systeem.

Tegen het eind van 2012 zal het aandeel van de dualcores zijn gegroeid tot iets meer dan 20 procent en hebben chips met vier rekenkernen of meer een aandeel van circa 10 procent. “Het gebruik van multicorechips gaat veel langzamer dan we enkele jaren geleden hadden gedacht. Het blijkt heel veel moeite te kosten om de obstakels te overwinnen”, zegt Gwennap.

De problemen liggen overigens niet alleen bij het ontwerpen van de software, ook de hardware kan roet in het eten gooien. Gwennap: “Bepaalde onderdelen in een multicoresysteem, denk aan een centrale databus, kunnen een ware flessenhals vormen. Ook een enkele verbinding met het geheugen kan leiden tot ware dataopstoppingen.”

Bij servers en werkstations is de acceptatie van multicorechips een stuk beter. De producenten zien de techniek hier als een manier om systemen sneller te maken zonder de kloksnelheid te hoeven verhogen. Voorwaarde is ook hier dat de software in staat is de rekentaken te splitsen in min of meer gelijke delen, zodat de cores evenveel te doen hebben en niet op elkaar hoeven te wachten.
Applicaties moeten daarvoor op een andere manier worden geschreven en dat lukt alleen wanneer de ontwikkelaars de juiste instelling hebben.

Vorig jaar zijn Intel en Microsoft gestart met een project om de softwareschrijvers die nieuwe instelling bij te brengen. Samen met de overheid werd een bedrag van 20 miljoen dollar gereserveerd. In eerste instantie zou het project zich richten op het maken van tools, waarmee software voor multicoresystemen gemaakt kon worden. Inmiddels is een aantal van die tools klaar, zoals de Parallel Studio voor C en C++ van Intel. Ook enkele kleinere aanbieders hebben zich op dit terrein begeven, zoals Codeplay, Polycore en Clik Arts. De meeste tools zijn echter nog in ontwikkeling.

Het maken van een parallelle compiler is een tweetrapsraket. In de eerste plaats zal de compiler moeten kunnen vaststellen welke delen van een applicatie parallel gemaakt kunnen worden. De tweede stap is het daadwerkelijk uitvoeren van die parallellisatie, zo mogelijk zonder menselijke tussenkomst.

Gwennap: “Het is mooi dat op het vlak van de software vooruitgang wordt geboekt, maar de hardwaresector mag niet achterblijven. Als je meer rekeneenheden in een systeem propt, dan zul je ook de bandbreedte naar het geheugen moeten vergroten. En de snelheid van dat geheugen moet groter worden, hetzij direct of door toepassing van een razendsnel tussengeheugen.”
 
Lees het hele artikel
Je kunt dit artikel lezen nadat je bent ingelogd. Ben je nieuw bij AG Connect, registreer je dan gratis!

Registreren

  • Direct toegang tot AGConnect.nl
  • Dagelijks een AGConnect nieuwsbrief
  • 30 dagen onbeperkte toegang tot AGConnect.nl

Ben je abonnee, maar heb je nog geen account? Neem contact met ons op!