3.2 GHz ile operacji

0

Witam, ile operacji na sekunde i na minute wykonuje procesor 3.2GHz?

1

Zalezy od konkretnego przypadku. Najlatwiej przekonac sie np wstawiajac liczniki instrukcji do programu, odpalenie go i zapamietanie ilosci instrukcji, nastepnie usuniecie licznikow i odpalenie ponowne z identycznym wejsciem by zmierzyc czas. Majac liczbe instrukcji i czas latwo policzyc iloraz.

1

To zależy jaki procesor i jakich operacji.

Współczesne procesory są superskalarne - potrafią wykonywać więcej niż jedną instrukcję na raz. Poza tym jest pipeline, jest predykcja gałęzi, jest out of order execution oraz instrukcje wektorowe. Z drugiej strony niektóre instrukcje zajmują więcej niż jeden cykl. To wszystko powoduje, że ilość operacji na sekundę nie jest jednoznaczna z częstotliwością taktowania. Wydaje mi się, że do określania takich parametrów po prostu stosuje się benchmarki i już.

1

tak mniej więcej 6528364 na minutę

1

@1123234141 zegar 3.2 GHz oznacza że procesor dostaje 3.2 miliarda tików na sekundę. Ale niewiele więcej można powiedzieć.
Różne instrukcje procesora wymagają różnej liczby tików (zależy to od operacji). Poza tym, jak już wspomniano wyżej, procesory mają pipelining, tzn to nie jest tak ze procesor dostaje operację typu add ax, bx i zajmuje się tylko nią od początku do końca. Operacje są podzielone na mniejsze kawałki (w najbardziej podstawowej wersji to przynajmniej fetch, decode i execute) i każdy kawałek może być wykonywany równolegle, niezależnie. W efekcie procesor który dzieli operacje na 3 kawałki potrafi jednocześnie przetwarzać sobie 3 operacje (każda w innym "stanie").
Gdyby tego bylo mało to procesory są też superskalarne - mają więcej niż jedną jednostkę wykonawczą i wtedy mogą mieć więcej niż jedną operację w jednym "stanie".
To wszystko (a także branch prediction i out of order execution) sprawia że nie da się odpowiedzieć jednoznacznie na postawione pytanie.

0

tak bardzo. 3.2 miliardy to są impulsy elektryczne i kiedy zegar nada kolejny impuls cały procek wykonuje wtedy jakąś operacje ? Tak wiele impulsów, że to wszystko musi być mega dokładne, od zegara który musi tyle tych impulsów nadać do elementów które je wykrywają ;/ Najlepsze jest to, że już 40 lat temu były zegary kilkuset hercowe i to działało.

0

Ale co niby ma być dokładne? Przecież to są wszystko elektryczne części które reagują na impuls elektryczny. Nikt tu nic nie "wykrywa". Prąc po prostu płynie przez układ.

0

Nic się wielkiego nie stanie, jeśli zegar nominalnie 3,2 GHz będzie miał w rzeczywistości 3,20001 albo 3,199999 GHz. To nie jest zegar atomowy że musi być superdokładny.
Rzeczywista prędkość zegara kwarcowego zależy m.in. od temperatury.

To jak w zegarze z wahadłem, którego wahadło ma częstotliwość 1 Hz (albo 0,5 Hz w większych), ale jak będzie to 1,01 Hz albo 0,99 to zegar oczywiście będzie się spieszył albo późnił, ale cały mechanizm nadal tyka prawidłowo.

Weź też pod uwagę overclocking - taki procek o zegarze 2 GHz można przy odrobinie szczęścia puścić na 3 GHz i działa... wniosek: dokładność zegara nie jest taka ważna.
Co jest ważne, to by cały „mechanizm” zdążył zareagować i zmienić stan w czasie między jednym tyknięciem zegara a drugim.

0

Mimo wszystko i tak trzeba tak dopasować parametry, by zarówno uzyskać wysokie taktowanie jak i nie dopuścić do błędów.
W układach synchronicznych (z zegarem) jest prościej niż w układach asynchronicznych (bez zegara), ale i tak się sporo rzeczy liczy.
http://en.wikipedia.org/wiki/Propagation_delay
http://en.wikipedia.org/wiki/Contamination_delay

1 użytkowników online, w tym zalogowanych: 0, gości: 1