Wat is de Sun-Ni-wet?
De Sun-Ni-wet is een benadering die wordt gebruikt bij parallelle verwerking en die probeert de prestaties te verbeteren. Het wordt ook wel geheugengebonden versnelling genoemd en werd voorgesteld door professoren Xian-He Sun en Lionel M. Ni. Deze wet schaalt de probleemomvang op en probeert een oplossing te vinden die alleen wordt beperkt door de hoeveelheid beschikbaar geheugen. Het is een generalisatie van twee andere benaderingen die worden gebruikt in parallel computing, de wet van Amdahl en de wet van Gustafson.
Een van de uitdagingen bij parallel computing is om erachter te komen hoe de prestaties van het systeem verbeteren wanneer het wordt opgeschaald. Omdat dit moeilijk meetbaar kan zijn, is speedup een van de meest bekende schaalbaarheidscijfers. Speedup heeft betrekking op de uitvoering van parallelle programma's die op een bepaald aantal processors draaien en de uitvoeringstijd die nodig is voor het snelste sequentiële programma om dat probleem op te lossen. Een type van versnelde aanpak is om de probleemomvang constant te houden, waardoor het aantal processors dat aan het probleem werkt kan worden verhoogd. Dit wordt de wet van Amdahl genoemd en staat bekend als een versnelling met een vaste grootte.
De wet van Amadhl probeert dus de uitvoeringstijd te verminderen door meer parallelle processors te gebruiken en stelt de computationele werklast vast als een constante. Het probeert in wezen het probleem in steeds kortere tijd op te lossen. De wet van Gustafson daarentegen, ook wel fixed-time speedup genoemd, probeert binnen een vastgestelde tijd een resultaat te verkrijgen en schaalt de probleemomvang op door meer operaties uit te voeren om een nauwkeurige oplossing te krijgen. Dit wordt toegepast op problemen met een tijdsdruk, maar het is niet noodzakelijk om ze in de kortst mogelijke tijd op te lossen.
De benadering van geheugengebonden versnelling, of de Sun-Ni-wet, houdt zich bezig met de geheugengrootte en hoe deze de prestaties beïnvloedt. De probleemgrootte die kan worden aangepakt, wordt beïnvloed door de hoeveelheid beschikbaar geheugen. Een beperkt fysiek geheugen betekent dat er meer tijd wordt besteed aan het uitzoeken van oplossingen om een probleem binnen de parallelle computerarchitectuur op te lossen. De benadering die de Sun-Ni-wet hanteert, is dat, als de tijdslimiet die is opgegeven door de speed-up speedup wordt gehaald en er voldoende geheugenruimte is, het probleem moet worden geschaald om voldoende gebruik te maken van al het beschikbare geheugen.
Dit is wat de Sun-Ni-wet doet, en de formule houdt rekening met de geheugengrootte en houdt verband met de prestaties. Elke processor in een parallelle computerarchitectuur heeft een vast geheugen en de formule relateert de probleemgrootte aan de totale beschikbare geheugencapaciteit. De geheugengrensversnelling die is vastgelegd in de Sun-Ni-wet, is in wezen een generalisatie van zowel de vaste tijd als de vaste grootte versnellingen. Aangezien de totale geheugengrootte toeneemt wanneer het aantal processors toeneemt, probeert de Sun-Ni-wet al die geheugenruimte efficiënter te gebruiken.