Autor: Radoslaw Sokol (rsokol_at_iname.com)
Data: Mon 23 Oct 2000 - 11:11:56 MET DST
Hi,
Marlow wrote:
>
> Ciekawe jak to faktycznie jest... bo patrzac na wyniki w sandrze procesor
> PIII600 osiaga ponad 1600 MIPS'ow, pewnie w nowszych procesorach jest wiecej
> potokow niz sie nam wydaje;)))))))) nie liczac instrukcji MMX i SSE
MIPS w ogóle jest bardzo abstrakcyjnym testem... Możliwe, że w tym
konkretnym przypadku użyto też potoku zmiennoprzecinkowego -- wtedy by
się to zgadzało, ale trudno mi wyobrazić sobie jednoczesne zapełnianie
trzech potoków wykonujących pracę ciągłą...
> Co do cache'u moglbys jasniej wytlumaczyc, jestem ciekaw a nigdy o czyms
> takim nie slyszalem.......zreszta kompiluje sie programy dla nowszych
> procesorow tak aby instrukcje nie trafialy na granice wiersza pamieci cache
> (moze o to ci chodzi).
IIRC w czasie odczytu burst cache typu PB zbudowany z pamięci statycznych
używa cykli 3-1-1-1-2-1-1-1-2-... lub 2-1-1-1-1-1-1-1-..., więc albo wysterowuje
się co któryś odczyt jednym taktem, albo tylko przygotowuje potok na starcie
odczytu sekwencyjnego. Przy pełnym odczycie sekwencyjnym nie będzie oczekiwań,
ale przy skoku (odczycie od innej komórki) powinien być jeden lub dwa takty
czasu na załadowanie na nowo potoku cache. Można mierzyć MIPS na kilku
instrukcjach, ale IMHO lepsza jest pętla, a to wymaga już czytania cache
w bloku nieciągłym :)
-- |"""""""""""""""""""""""""""""""""""""""""""""""""""""""| | Radosław Sokół | http://www.magsoft.com.pl/~rsokol/ | | UIN:39350879 | ftp://sokol.gliwicki.necik.pl/ | \................... WinNT FAQ: http://nt.faq.net.pl/ ../
To archiwum zostało wygenerowane przez hypermail 2.1.7 : Tue 18 May 2004 - 20:47:17 MET DST