Jak oblicza się taktowanie procesora i co ono reprezentuje?
Czy jeden tickrównają się 10 milisecondszatem jeśli jakiś wątek doniesień nie wezwał do ( 5 * 10 ticks = 500 ticks) to znaczy procesor był chyba zbyt zajęty, aby zaplanować ww wątku do pracy ?
czy możesz umieścić „CPU tick” w kontekście - być może wytnij i wklej akapit źródła frazy? Obawiam się, że może istnieć zamieszanie między jedną z kilku możliwych odpowiedzi.
Kleszcz jest dowolna jednostka do pomiaru wewnętrznego czas systemowy. Zazwyczaj istnieje wewnętrzny licznik OS dla kleszczy; bieżąca godzina i data używane przez różne funkcje systemu operacyjnego pochodzą z tego licznika.
Ile milisekund oznacza podziałka zależy od systemu operacyjnego, a nawet może się różnić w zależności od instalacji. Użyj mechanizmów systemu operacyjnego, aby zamienić tiki na sekundy.
W systemie Linux liczbę tyknięć zegara na sekundę można uzyskać za pomocą sysconf(_SC_CLK_TCK);. Patrz np. Http://linux.die.net/man/2/times
To, dlaczego wątek zgłasza, że nie jest wywoływane: Będzie to zależeć od tego, czy gdzieś blokuje wątek (czekanie, operacje we / wy itp.). Jeśli nie blokuje, to tak, harmonogram systemu operacyjnego zdecyduje, kiedy ma się uruchomić, co może potrwać długo, jeśli system jest zajęty.
Edytować:
Zauważ, że być może niestety niektórzy autorzy używają również tik jako synonimu cyklu zegara procesora (np. Ten tekst ). Uważam, że to użycie jest mniej rozpowszechnione, ale najlepiej najpierw dowiedzieć się, o czym mówią ludzie.
@aaron: nie, czas wykonania instrukcji jest związany z określoną liczbą cykli procesora. biorąc pod uwagę konkretny system operacyjny na określonym procesorze działającym z określoną częstotliwością, możesz obliczyć, ile tyknięć zajmuje dana instrukcja, ale to obliczenie niekoniecznie jest ważne dla jakiejkolwiek innej kombinacji OS / CPU / częstotliwość / instrukcja.
@Aaron: Nie, tiki i cykle procesora to dwie różne koncepcje. Długość cyklu procesora zależy od sprzętu (częstotliwość procesora); tiki są wytwarzane przez system operacyjny i używają dowolnej długości, którą system operacyjny (lub jego projektanci) uznają za odpowiedni.
Nie używaj datetime.ticks () jako miernika, jest on celowo stały z założenia, aby reprezentować datę i godzinę wystąpienia tego obiektu. Jest to zależne od czasu, podczas gdy tiki sprzętowe są niezależne od czasu. To złe nazewnictwo ze strony frameworka.
@sleske Hmmm Widzę różnicę. „tiki” były synonimem cykli procesora, a także terminem „stała ilość czasu niezależna od szybkości zegara procesora”. Ten sam termin o dwóch znaczeniach. Czy to prawda?
„Zegar procesora koordynuje wszystkie operacje procesora i pamięci poprzez okresowe generowanie sygnału odniesienia czasu zwanego cyklem zegarowym lub taktowaniem. Częstotliwość zegara jest określana w gigahercach (GHz), co określa miliardy tyknięć na sekundę. Szybkość zegara określa szybkość wykonywania instrukcji. Niektóre instrukcje wymagają jednego tiku, inne wielu tików, a niektóre procesory wykonują wiele instrukcji podczas jednego tiku. ”
Czas między tyknięciami jest określany na podstawie szybkości zegara i trwa od jednego do wielu tyknięć w zależności od wykonywanego OP. Na przykład procesor klasy 286 potrzebuje 20 znaczników, aby pomnożyć dwie liczby.
Jeśli potrzebujesz zegarów o wysokiej wydajności, nie sądzę, że możesz polegać na tym, że tiki są stałe we wszystkich systemach.
Program planujący procesor mógł opóźnić wątek, zwłaszcza jeśli istniał inny wątek o wyższym priorytecie. Tak, procesor mógł być zbyt zajęty.
Mówię o kleszczach sprzętowych. Procesor 1 Hz przetwarza 1 tik (cykl) na sekundę, 200 Hz może przetwarzać 200 cykli na sekundę, 2 GHz dwa miliardy cykli / sek. Im szybszy procesor, tym więcej cykli / sek.
Ach, rozumiem, niektórzy autorzy używają tickjako synonim processor cycle. Mimo to widzę najczęściej tickużywane, jak wyjaśniono w mojej odpowiedzi powyżej. Ale
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.