Optymalizacja kodu
Definicje
- Łańcuch zależności jest to ciąg instrukcji,
w którym wykonanie następnej instrukcji zależy od wyniku poprzedniej.
- Latency (opóźnienie) - dla instrukcji jest to opóźnienie jakie powoduje
w łańcuchu zależnośći.
Jest to w przybliżeniu liczba cykli zegara jakie potrzebuje CPU aby daną instrukcję wykonać.
(Bardziej dokładnie ile musi czekać następna instrukcja która jest od niej zależna).
- Troughput (przepustowość) - jest to maksymalna liczba instrukcji tego samego rodzaju,
która może być wykonana w jednym cyklu zegara (jeżeli nie ma między nimi zależności).
- Reciprocal throughput to odwrotność przepustowości. Jest to średnia liczba
cykli zegara na instrukcje, które nie są częścią łańcucha zależnośći.
Tomasz Kapela, Kraków 2011-2020