C't heeft een nieuwe benchmark geïntroduceerd met de naam CTKurve. Uit onderstaande omschrijving begrijp ik dat het hier gaat om een spelletje geheugen blokjes heen en weer schuiven, vanuit een bepaald geheugen bereik:
Das Tool ctkurve vermisst den Transfer von Blöcken von1 KByte Größe mit Dword- und Cacheline-Alignment (32 Byte) auf zufälligen Adressen und zeigt auf, in welchem Speicherbereich der Athlon und wo der Pentium III jeweils ihre Stärken und Schwächen haben. Während beim Athlon das Alignment keinen Einfluss auf die Performance hat, ist der Pentium III hier sehr sensibel. [break] Uit het grafiekje met de resultaten is in ieder opvallend dat de Pentium III een knik vertoond bij 32K (L1 cache) en 256K (L2 cache). De Athlon doet dit heel voorspelbaar bij 128K (L1 cache) en 512K (L2 cache):
Update: Andreas Stiller himself geeft op JC's message board uitleg over de werking van deze benchmark: [/break] Some words about ctkurve ...ctkurve is a rather old c't-tool (about 8 years now, first results are published in ct 11/92) but the last versions (until V4.1) were only available for subscribers on the so called ctsi-CD. But I will put Version 4.3 on our Website asap. It still uses the old fashioned REP MOVSD and neither 3Dnow nor SSE improvements (there is a new yet unpublished "c't memory workbench", which can do all of this stuff and much more ...).
The addresses of the tranferred 1 KByte blocs are randomly choosen within an address range (with a given alignment)in such a way, that the random number generator does not provoke cache misses and takes only a little, constant amount of time.
These ctkurve transfers are a mixture of reads, writes (on modern processors with write allocation) and castoffs (when cachemisses occur and dirty cachelines have to be replaced) so the value does not represent a memory or cache bandwidth but include the ability of processor, chipset and memory to handle those mixed accesses.