Delade minnesmultiprocessorer används ofta som beräkningsservrar med flera parallella program som körs samtidigt. I sådana miljöer kan effektiviteten hos en parrdlelapplikation påverkas avsevärt av policyn för schemaläggning av operativsystemet. I detta dokument använder vi detaljerade simuleringsstudier för att utvärdera prestandan av flera olika schemaläggningsstrategier, Dessa inkluderar regelbunden prioritet schemaläggning, coscheduling eller gäng schemaläggning, processkontroll med processorpartitionering, handhavande schemaläggning och affinitetsbaserad schemaläggning. Vi utforskar också kompromisser mellan användningen av hektiskt väntande och blockerande synkronisering primitiva och deras interaktioner med schemaläggningsstrategierna. Eftersom effektiv användning av cacher är avgörande för att uppnå hög prestanda, är ett viktigt fokus på effekten av schemaläggningsstrategier på caching beteendet hos applikationerna. Våra resultat visar att i situationer där antalet processer överstiger antalet processorer, resulterar regelbunden prioritetsbaserad schemaläggning i samband med hektisk-väntande synkronisering primitiver i extremt dålig processoranvändning. I sådana situationer, användning av blockera synkronisering primitiva kan avsevärt förbättra prestanda. Process kontroll och gäng schemaläggning strategier visas erbjuda högsta prestanda, och deras prestanda är relativt oberoende av den synkroniseringsmetod som används. Men för program som har betydande arbetsuppsättningar som passar in i cache, processkontroll fungerar bättre än gäng schemaläggning. För de applikationer som beaktas, prestandavinster på grund av överlämnande schemaläggning och processor affinitet visas vara liten.
REF utforskade effekten av schemaläggningsstrategierna på caching beteendet hos applikationerna.