Bogar Pal kerdezi "Mekkorak a ma letezo legnagyobb sebessegek; egyaltalan hogyan
lehet oket merni".
Ez egy meglehetosen bonyolult temakor, de roviden (es elore elnezest kerve az
angol kifejezesek hasznalataert):
A "regi szep idokben" minden egyszeru volt: Ha egy cpu cycle-time Tc microsec
volt, es utasitas i vegrehajtasahoz Ni cycle kellett, akkor kiszamithato hogy
ez a cpu ezt az utasitast hanyszor tudta vegrehajtani egy masodperc alatt:
MIPSi = 1 / (tc * Ni); ahol MIPS=Million Instuctions Per Second
Egy cpu persze egy csomo utasitast tud - neha 100-nal tobbet. Ezek, egy reszet
egy, mas reszet ketto vagy tobb - neha tobb szaz cycle alatt hajtja vegre. Egy
modern cpu pelda: an 32Mhz-es Intel 80386 cycle-time = 31.25nsec (szamithato a
frekvenciabol). A "register to register" kozti utasitasok altalaban 2 cycles,
"register to memory" 7 cycles, protected mode task switch 200-300 cycles.
Szamitsuk ki a fenti Intel cpu sebesseget:
MIPSregister_to_register = 1 / (3 * 0.03125) = 16MIPS
MIPSregister_to_memory = 1 / (7 * 0.03125) = 4.5MIPS
MIPStask_switch = 1 / (300*0.03125) = 0.1MIPS
Mint lathato eleg nagy szoras van az egyes utasitasok MIPS erteke kozott.
A gyartok feltalaltak es publikaltak egy "atlag MIPS" erteket a cpuikra.
Meghataroztak az egyes utasitasok valoszinu vegrehajtasi frekvenciait, es ebbol
az "atlag MIPS" szamithato. Intel 4-5MIPS-et allit errol a cpu-rol.
MIPS hasznalat nepszeru volt egyszerusege miatt, de mint sebesseg jelzo
egyes felhasznalok szamara nagyon pontatlannak bizonyult.
A problema, hogy egyes felhasznalok "workload"-ja vagy "instruction-mix"-e
messze van az atlagtol. Peldaul egy nehez tudomanyos szamitas mas utasitasokat
igenyel vegrahajtas kozben mint egy adatbazis eleres. Igy persze a MIPS ertekek
erre a ket feladatra teljesen kulonbozoek lesznek. Tovabbi problema a MIPS
meresekkel, hogy nem nagyon hasonlithatok ossze a kulonbozo gyartok adatai,
mert az atlagos "instruction-mix" feltetelezesek es maguk az utasitasok sem
osszehasonlithatok. Modern cpu-k "chache"-t hasznalnak, "pipelines", elore
szamitanak cimeket, stb. Ez azt jelenti, hogy egy utasitas vegrehajtasa is
valtozo, nem pedig csak a cpu "cycle"-tol fugg. A MIPS nem nagyon hasznalhato.
Modernebb sebesseg meghatarozasok:
Ezek "benchmark"-okon alapulnak. Egy jol definialt es praktikus "workload"
vegrehajtasi idejet merik kulonbozo cpu-kon. A teljes futasi idobol szamitjak
a gyorsasagot. A felhasznalo eldonti, hogy melyik "standard-workload"-hoz
all az o sajat "workload"-ja a legkozelebb, es azt a benchmarkot hasznalja
gyartok osszehasonlitasara vasarlaskor. Ismertebbek:
Dhrystone: 1984-ben a Siemens-nel Reinhold Weiker csinalta. C, Pascal, ADA
integer benchmark (no floating point).
Weiker, R. P., A Synthetic Systems Programming Benchmark, Communications of
the ACM, Vol 27, No 10, Oct 1984.
Whetstone: British Central Computer Agency. 949 ALGOL programon alapul.
Curnow, H. J. and Wichman, B. A., A Synthetic Benchmark, Computer Journal,
19, 1, Feb 1976.
Linpack: John Dongarra csinalta az Argonne National Laboratory. Nagy linear
egyenleteket old meg. Floating point benchmark.
Dongarra, J. J., Performance of Various Computers Using Standard Linear
Equations Software in a Fortran Environment, Computer Architecture News,
13, 1, Mar 1981.
Livermore Loops: Lawrence Livermore National Laboratories. Numerical appl-s.
Mc Mahon, F., The Livermore Fortran Kernels: A Computer Test of the Numerical
Performance Range, Tech. Rep. UCRL-53745, Lawrence Livermore National Laboratory
,Dec 1986.
Legmodernebb es egyre inkabb hasznalt benchmarks:
SPEC (System Performance Evaluation Cooperative) Benchmarks. SPEC-et alapitotta
1989-ben a HP, MIPS, SUN, Apollo, 1990-ben belepett IBM, Fujitsu, Siemens, DEC,
Intel, Motorola, AT&T, Unisys etc. SPEC in Release 1, definialt 10 benchmark-ot.
Ezek "real workload"-okat representalnak. 6 integer, 4 floating point mix. A
programok nagyok - 156,000 lines 21 oras futas a "reference" gepen. Igy cpu-k
nagy cache memoriakkal nem tudjak az egesz benchmarkot cache-bol futtatni.
Mind a 10 benchmark futasi idejet merik, es osszehasonlitjak a "reference" gepen
valo futasi idovel:
SPEC Ratio = futas_ido / DEC_VAX_11_780_futas_ido;
Publikaljak a SPEC Ratio-t mind a 10 workload-ra, es egy composite indexet
szamolnak, ami a 10 ratio geometriai-kozepe. A workload-ok publikalva vannak,
a felhasznalo ha tudja, melyikhez all kozel a sajat workload-ja, azt hasznalja.
Ha nem tudja, a geometriai-kozep, amit SPECmark-nak hivnak, hasznalhato.
Nehany szam: IBM RISC/6000-930: Min SPEC Ratio=17.5, Max SPEC ratio=76.1,
SPECmark=28.9
Note: the VAX 11/780 azert lett valasztva, mert ez egy 1 MIPS cpu-nak volt
titulalva, mert nehany floating point benchmark-ot olyan gyorsan hajtott
vegre, mint az IBM 370/158, amit az IBM 1 MIPS gepnek hirdetett. Mas testek
bizonyitottak, hogy a "reference" machine kozelebb van 0.5 IBM MIPS-hez.
Literature: SPEC Newsletter Vol 1, Issue1, Fall 1989., SPEC - care of
Waterside Associates, 39510 Paseo Padre Parkway, Suite 350, Fremont, CA94538.
4 Issue evente 89-tol. Egy csomo konkret gepre vonatkozo adat van bennuk.
Problemak a SPECmarkkal: nincs komoly I/O load. Ezen es transaction workload
mixeken dolgoznak a Release 2 reszekent, ami lehet hogy mar kesz.
Meg egy note: sebesseg nem egyenlo teljesitmennyel. Modern mainframe, de meg
workstation is egy csomo felhasznalot futtat egyszerre. Nagy I/O load, sok
periferia illesztessel. Ezeknek harmonikusan kell egyutt mukodni, ugy hogy ne
legyen "bottleneck". A valtofutast nem biztos hogy az a csapat nyeri, ahol a
leggyorsabb futo van. Egy gyenge csapat lehuzhatja ot is az utolso helyre.
Meg mielott mindenki elalszik, Boldog Ujevet
Lou
|
Most, hogy itt van a vadaszati ideny, ujbol eszembe jutott egy
regi kerdesem. Otthon kedvenc csemegenk volt a vadhus (szarvas, vad-
diszno, vadnyul, facan stb.) Immaron negyedik eve szivom a chicagoi
levegot, de sehogyan sem tudtam itt ilyesmihez hozzajutni. Pontosabban
egyszer felhivtam egy ceget, akik azt mondtak, hogy minimum 20 kilot tud-
nak csak eladni, ami azert kicsit sok a jobol. Tehat a kerdesem: ismer-e
valaki olyan ceget, amelyik (nyers) vadhust arul, kis tetelben is, itt
az USA-ban, lehetoleg Chicagoland-ban ? Azon is elgondolkodtam: mitcsi-
nal az a rengeteg ember azzal a rengeteg szarvassal es egyebbel, amit le-
teritenek ebben az idoszakban (ahogy irta valaki vagy egy honapja is
Wisconsinbol) ? A kerdes nem biztos, hogy trivialis. Azt hallottam,
hogy pl. allati belsosegeket (maj stb.) nem esznek az amerikaiak.
Kivancsian varom nalam tajekozottabb TIPP-elok ismereteit.
Koczo Kalman, IIT
|