Veel hightechbedrijven worstelen met software die niet goed presteert. Het schrijven van correcte code is al moeilijk, laat staan code die de onderliggende (multicore) hardware efficiënt benut. Een goed startpunt voor optimalisatie is het gebruik van een tool die inzicht verschaft in het gedrag van een applicatie en de locatie van bottlenecks. In dit artikel kijkt Maurice Kastelijn van Vector Fabrics naar de Perf-profiler en zijn mogelijkheden.
Bij het verbeteren van de softwareprestaties valt er nog veel te winnen. Een van de manieren waarop we winst kunnen boeken, is door efficiënt gebruik te maken van zo veel mogelijk beschikbare processoren in hedendaagse multicore architecturen. Om dit potentieel te ontsluiten, is kennis van het gedrag van onderliggende hardware echter onontbeerlijk.
De complexiteit die gepaard gaat met de multicorebelofte maakt het optimaliseren van software voor veel programmeurs een enorme uitdaging. Vaak resulteert een eerste poging tot parallellisatie juist in een verslechtering van de prestaties. Het achterhalen van het probleem vergt een diepgaande kennis van onder meer het cachegedrag, de processorarchitectuur en de compiler.
