Tags: Applicatieontwikkeling

Hardcore ontwikkelaar: “Wat doe jij met 1000 Cores?”

Hardcore ontwikkelaar - wat doe jij met 1000 Cores? Als ik IT verhalen van vroeger hoor dan verbaast het me altijd hoe ontwikkelaars zich in allerlei bochten moesten wringen om hun programma in een geheugen van bijvoorbeeld 64KB te kunnen laten draaien. De ene ontwikkelaar was nog slimmer dan de andere in het geheugengebruik.

Vandaag heb ik soms het idee dat die groep ontwikkelaars nog steeds hun sporen hebben achtergelaten bij de jonge garde ontwikkelaars. Niet dat zij zich zorgen maken over het geheugengebruik, maar meer over het bouwen van applicaties met zoveel mogelijk technologische hoogstandjes. Wie kan programma’s zo efficient mogelijk laten lopen, niet nadenkend over de onderhoudbaarheid van het resultaat in de komende vijf of tien jaar dat die programmatuur gebruikt gaat worden door eindgebruikers.

En als ik dan denk aan de nieuwe Intel processor strategie: de capaciteit van een processor elke 18 maanden verdubbelen, niet door de kloksnelheid te verhogen, maar door het aantal Cores per socket te laten toenemen dan heeft dat voor ontwikkelaars weer een grote impact en zal het een geheel nieuwe opvoeding vragen. De steeds hogere kloksnelheid van de processor was elke ontwikkelaar een eenvoudige en welkome verbetering.

Met de multi core strategie wordt het anders. Nu moet er serieus over nagedacht worden hoe een business probleem opgeknipt kan worden in vele kleine afzonderlijk funktionerende programma’s, die dan ook in verschillende cores kunnen draaien.

Wat zou je nu anders doen als je weet dat je straks 80 cores op één processor socket krijgt? Ofwel een systeem dat vandaag 32 processoren heeft, heeft straks meer dan 2500 Cores met een lage kloksnelheid.

Een grote single thread batch voor bijvoorbeeld de wekelijkse fakturering is dan niet zo handig, die kan alleen in één core draaien en dan hebben die andere 2500 cores niets te doen. Gaan we dan van batch programmatuur bouwen af? Wellicht niet helemaal, maar daar waar nodig zullen we toch moeten gaan kijken of we een batch programma kunnen opslitsen in vijf of tien kleine batch programma’s die dan in parallel kunnen draaien in de vele cores die we ter beschikking hebben. Maar dan wel even nadenken over de onderhoudbaarheid van het geheel, zodat we met minimaal onderhoud die applicatie toch weer vijf of liefst tien jaar kunnen blijven gebruiken.

Natuurlijk bieden deze technologische ontwikkelingen kansen voor ontwikkelaars om het ontwikkelproces nog complexer te maken en nog meer afstand te nemen van de buisness unit die een oplossing wil hebben voor hun business probleem. Maar dat is nou juist niet de bedoeling. Applicatie ontwikkeling dient steeds eenvoudiger te worden, steeds dichter bij die business unit en ook steeds minder afhankelijk van al die technologische ontwikkelingen die nog gaan komen.

Daarom zouden veel meer ontwikkelaars nu moeten kiezen voor het bouwen van applicaties op het Platform Independent Model (PIM) niveau, waarbij generatoren de applicatie zo omzetten naar runtime code dat de onderliggende hardware en software optimaal benut wordt, nu en in de toekomst.

Dan kun je je als ontwikkelaars gewoon blijven bezig houden met het bouwen van inovatieve IT oplossingen voor de business unit, zonder je zorgen te maken of er nu 1000 of 10.000 cores in een systeem zitten of bijvoorbeeld welke mogelijkheden het .Net 5.0 framework gaat bieden of er naast Ajax er ook nog een PSV voor ontwikkleaars gaat komen.

Maarten Schneider
Marketing manager AB Suite Europe

Lees meer over Unisys
Ga terug naar We Love IT uitgave 5 - 2008
Advertentie