Inledande implementationer av parallella program ger vanligtvis nedslående resultat. Avstämning för att förbättra prestandan är därför en viktig del av den parallella programplaneringen. Den ansträngning som krävs för att justera ett parallellt program, och den prestandanivå som så småningom uppnås, båda beror starkt på kvaliteten på den instrumentering som är tillgänglig för programmeraren. Detta papper beskriver Quartz, ett nytt verktyg för att ställa in parallella program prestanda på delade minne multiprocessorer. Filosofin bakom Quartz var inspirerad av den sekventiella UNIX verktyg gprof: att på lämpligt sätt rikta uppmärksamheten på programmeraren genom att effektivt mäta bara de faktorer som är mest ansvariga för prestanda och genom att relatera dessa mått till varandra och till strukturen i programmet. Denna filosofi är ännu viktigare i den parallella domänen än i den sekventiella domänen, på grund av det dramatiskt större antalet möjliga mått och den dramatiskt ökade komplexiteten i programstrukturer. Den huvudsakliga metriska av Quartz är normaliserad processorn tid: den totala processorn tid spenderas i varje avsnitt av kod dividerat med antalet andra processorer som är samtidigt upptagen när den delen av koden utförs. Bundna till den logiska strukturen av programmet, denna metrisk ger en "rökande pistol" pekar mot de områden av programmet som är mest ansvariga för dålig prestanda. Denna information kan förvärvas effektivt genom att kontrollera till minne antalet upptagna processorer och tillståndet för varje processor, och sedan statistiskt provtagning dessa med hjälp av en dedikerad processor. Förutom att beskriva designen logik, funktionalitet och genomförande av Quartz, undersöker tidningen hur Quartz skulle användas för att lösa ett antal prestandaproblem som har rapporterats som ofta påträffas, och beskriver en fallstudie där Quartz användes för att avsevärt förbättra prestandan hos en CAD-kretskontrollant.
REF definierar begreppet normaliserad processortid för en komponent som förhållandet mellan den mängd processortid den förbrukar och graden av parallellism.
Quartz: a tool for tuning parallel program performance
{'venue': "SIGMETRICS '90", 'journal': None, 'mag_field_of_study': ['Computer Science']}