Cykl zegara procesora i cykl maszynowy
Jednostka spoza układu · wielkość: odstęp zestrojenia i miara pracy obliczeniowej
Jesienią 2004 roku Intel odwołał prace nad procesorem, który miał chodzić na dziesięciu gigahercach, i nie było to niepowodzenie techniczne, lecz przyznanie się do ściany fizycznej: układ pędzony dwa razy szybciej żądał czterokrotnej mocy i po prostu się topił. Wyścig częstotliwości, trwający trzydzieści lat, skończył się w jeden dzień, a wraz z nim zwyczaj oceniania maszyny po liczbie na pudełku.
Sam cykl to odstęp między dwoma zboczami sygnału zegara, ten właśnie krok, którym wszystkie zestrojone części układu przełączają się naraz. Jego odwrotnością jest częstotliwość, i dlatego cykl przy pięciu gigahercach trwa dwie dziesiąte nanosekundy, w których światło zdąży sześć centymetrów, a sygnał po miedzianej ścieżce jeszcze mniej — mniej, niż układ jest szeroki.
01 · Definicja
Cykl to okres sygnału zegara, czyli odstęp między dwoma jednoimiennymi zboczami, przy których zestrojone elementy układu razem zmieniają stan. Cykl maszynowy to całkowita liczba cykli zegara, w której procesor wykonuje ukończone działanie; w maszynie potokowej zastępuje go miara odwrotna — liczba cykli na rozkaz, której własna odwrotność mówi, ile rozkazów opuszcza potok w jednym cyklu.
Długości cyklu nie zadaje przyroda, lecz rozprowadzenie połączeń w układzie: nie może być krótsza niż najwolniejsza droga między dwoma przerzutnikami, wliczając opóźnienie samego przerzutnika i zapas na rozrzut parametrów. Stąd zwykły chwyt projektanta — przeciąć długą drogę logiczną na dwa stopnie potoku: cykl skraca się o połowę, częstotliwość podwaja, a rozkaz przechodzi teraz całe schody.
Częstotliwość ogranicza jednak nie logika, lecz moc: pobór dynamiczny rośnie wraz z częstotliwością i z kwadratem napięcia, a napięcie trzeba podnieść, by układ nadążył przy zwiększonej częstotliwości. Ciepło idzie zatem mniej więcej jak sześcian częstotliwości, i na tej zależności sześciennej wyścig gigaherców stanął około czterech.
Wreszcie cykl to jednostka, której długość nie jest stała. Zarządzanie zasilaniem zmienia częstotliwość setki razy na sekundę, dostosowując się do obciążenia i temperatury, i dlatego z liczby cykli nie da się wnosić o upływie czasu, można za to wnosić o wykonanej pracy: licznik cykli liczy nie sekundy, lecz kroki obliczenia, i na tym polega jego prawdziwa wartość.
Prowadź częstotliwość suwakiem i śledź dwie krzywe, które rozchodzą się w przeciwne strony. Zielona to odległość, którą sygnał zdąży przebyć w jednym cyklu: im wyższa częstotliwość, tym krótsza ta droga, a przy pięciu gigahercach okazuje się mniejsza niż sam układ. Karmazynowa to, ile kosztuje w cyklach sięgnięcie do pamięci: jej opóźnienie w nanosekundach prawie się nie zmienia, więc w cyklach tylko rośnie.
Przeciąwszy pracę na stopnie, projektant skraca cykl, lecz pojedynczy rozkaz przechodzi teraz całe te schody, a jego własne opóźnienie nie maleje, tylko rośnie. Zysk pojawia się dopiero wtedy, gdy stopnie są wypełnione różnymi rozkazami, a przy źle przewidzianym skoku potok trzeba opróżnić w całości — im głębszy, tym drożej to wypada.
02 · Przeliczanie
Częstotliwość, okres, praca
Wprowadź częstotliwość albo długość cyklu, a karta pokaże odwrotność, drogę sygnału w jednym cyklu i koszt sięgnięć do pamięci w cyklach. Pierwsza rodzina jest ścisła z definicji, druga opiera się na średnich wartościach rdzenia, trzecia na typowych opóźnieniach dzisiejszej hierarchii pamięci.
Prędkość sygnału po ścieżce przyjęto jako sześć dziesiątych prędkości światła; w drobniejszych ustawieniach karty można ją zmienić na połowę.
Według częstotliwości porównywać można tylko jednakowe rdzenie, ponieważ liczba cykli na rozkaz różni się między architekturami kilkakrotnie: jedna maszyna bierze w cyklu cztery rozkazy, druga ledwie jeden. Właśnie dlatego liczba w gigahercach zniknęła z reklam, a na jej miejsce weszły zestawy testów, które mierzą już nie cykle, lecz wykonaną pracę.
| Wartość | Uwaga | ||
|---|---|---|---|
| {u} | {name} | {value} | {note} |
03 · Rzędy wielkości
skala logarytmiczna: od cyklu po okno czasowe planisty04 · Przyrządy pomiarowe
Czym zadaje się cykl i czym się go liczy
Źródłem cyklu jest płytka kwarcu, drgająca zwykle na kilkudziesięciu megahercach z dokładnością około dziesięciu milionowych. Gigaherce w układzie biorą się nie z niej, lecz z powielenia tej częstotliwości odniesienia, tak że stałość całej maszyny dziedziczy się po kawałku minerału wielkości ziarna ryżu.
Pętla synchronizacji fazy porównuje podzieloną częstotliwość generatora z odniesieniem i podkręca go, aż fazy się zgodzą; przez zmianę dzielnika częstotliwość zmienia się w biegu. To właśnie ona pozwala zarządzaniu zasilaniem opuścić cykl w spoczynku do kilkuset megaherców i podnieść go w tryb turbo na kilka sekund, dopóki jest zapas cieplny.
Wewnątrz rdzenia siedzą rejestry liczące cykle, ukończone rozkazy, chybienia pamięci podręcznej i źle przewidziane skoki, a czytać je można wprost z działającego programu. Z tych liczb otrzymuje się liczbę cykli na rozkaz — jedyną uczciwą miarę tego, jak dobrze kod ułożył się na danym układzie.
Żeby zobaczyć sam cykl, potrzebny jest przyrząd chwytający zbocza z rozdzielczością kilku pikosekund, i ten sam pokazuje rzeczy, przez które częstotliwości nie da się podnieść wyżej: drżenie fazy, przekos przybycia sygnału do różnych rogów układu i osiadanie zbocza na długiej linii.
05 · Zasady zapisu
Cykle i herce to nie to samo
Częstotliwość zapisuje się w hercach z przedrostkiem wielką literą przy mega i giga, liczbę cykli zaś jako liczbę całkowitą bez żadnej jednostki, ponieważ cykl nie jest jednostką SI. Wskaźniki wydajności pisze się wielkimi literami bez kropek i z zaznaczeniem, którego rdzenia dotyczą; mieszać częstotliwości i wydajności w jednej wielkości nie wolno.
Pierwszy zapis miesza dwie różne wielkości: liczba cykli jest bezwymiarowa, herc zaś mierzy częstotliwość. Drugi łamie wielkość litery przedrostka, obowiązkową przy mega i giga. Trzeci porównuje według częstotliwości architektury, których cykle na rozkaz różnią się kilkakrotnie, a z takiego porównania nic nie wynika. Czwarty bierze wielkość zmienną za stałą.
06 · Jednostki sąsiednie
Obok stoją jednostki mierzące tę samą pracę z innych stron: herc jako częstotliwość samego sygnału, liczba działań zmiennoprzecinkowych na sekundę oraz liczba rozkazów przypadających na jeden cykl. Wszystkie wynikają jedna z drugiej, gdy tylko znane są częstotliwość i zachowanie potoku.
częstotliwość, jednostka SI
miara bezwymiarowa
miara pracy obliczeniowej
Spośród kart Simetrium obok stoją herc, który podaje częstotliwość, sekunda i jego przedrostki podwielokrotne, unix time, gdzie granicę wyznacza również słowo maszynowe, oraz bit s bajt, którymi mierzy się to, co cykl niesie.
07 · Dział historyczny
Trzydzieści lat wyścigu i jeden dzień odwołania
Pierwszy procesor na jednym układzie chodził na częstotliwości, którą dzisiejszy układ przechodzi w ułamku mikrosekundy, a jeden rozkaz zajmował mu osiem cykli. Cykl maszynowy był wtedy pojęciem dosłownym: odczytać rozkaz, rozłożyć go, pobrać dane, policzyć i zapisać — każdy stopień zajmował swój cykl, a wszystkie szły ściśle po kolei.
Gdy tylko stopnie nauczyły się pracować jednocześnie nad różnymi rozkazami, zwykła miara pękła: rozkaz nadal szedł pięć cykli, ale opuszczał potok co cykl. Trzeba było odwrócić rachubę i mówić o cyklach na rozkaz, które u dobrej maszyny spadły poniżej jedności — to znaczy, że w jednym cyklu kończy się więcej niż jeden rozkaz.
Architektura z potokiem o trzydziestu jeden stopniach została zbudowana dla częstotliwości i uderzyła w ciepło: obiecane dziesięć gigaherców żądało chłodzenia nie do pomyślenia w obudowie biurkowej. Projekt zamknięto, a branża zwróciła się ku wielu rdzeniom — nie dlatego, że to lepsze, lecz dlatego, że sześcienny wzrost poboru nie zostawił innej drogi.
Dzisiejszy rdzeń nie ma jednej częstotliwości: w spoczynku opada do kilkuset megaherców, pod obciążeniem wznosi się ku pięciu gigahercom i trzyma je, dopóki starczy zapasu cieplnego. Liczba z karty stała się obietnicą w sprzyjających warunkach, a porównywać po niej maszyny przestali i wytwórcy, i recenzenci.
Jednostka, której długość zmienia się w trakcie pomiaru
Cykl jest dla metrologa urządzony niewygodnie: jego długości nie zadaje wzorzec, lecz rozprowadzenie połączeń w układzie, i zmienia się ona w jednym i tym samym procesorze setki razy na sekundę, ponieważ zarządzanie zasilaniem dostraja częstotliwość do obciążenia i temperatury. Dlatego licznik cykli nie nadaje się do mierzenia czasu, choć z zewnątrz wygląda jak zegar, a program, który mu ufa, pomyli się o tyle, o ile przesunęła się częstotliwość.
Za to do zadania, dla którego cykl powstał, nadaje się lepiej niż jakakolwiek jednostka czasu. Licząc cykle, mierzymy nie czas trwania, lecz objętość pracy obliczeniowej, i dlatego liczba cykli na rozkaz pozostaje porównywalna przy każdej zmianie częstotliwości — mówi o tym, jak dobrze kod ułożył się na układzie, a nie o tym, ile sekund minęło.
Katalog · jednostki miary
Karta dla każdej wielkości
Siedem jednostek podstawowych SI, dwadzieścia dwie pochodne z własnymi nazwami i wielkości spoza układu, bez których nie działałaby ani technika, ani kalendarz.