optimization - Co oznaczają terminy „związany z procesorem” i „związany z we / wy”?

Translate

Co oznaczają terminy „powiązany z procesorem” i „powiązany z I / O”?

This question and all comments follow the "Attribution Required."

Wszystkie odpowiedzi

Translate

To całkiem intuicyjne:

Program jest związany z procesorem, gdyby działał szybciej, gdyby procesor był szybszy, tj. Spędza większość czasu po prostu używając procesora (wykonując obliczenia). Program, który oblicza nowe cyfry π, będzie zwykle związany z procesorem, po prostu przetwarza liczby.

Program jest związany we / wy, gdyby działał szybciej, gdyby podsystem we / wy był szybszy. Który konkretny system we / wy jest przeznaczony, może się różnić; Zwykle kojarzę go z dyskiem, ale oczywiście sieć lub komunikacja w ogóle jest również powszechna. Program, który przeszukuje ogromny plik w poszukiwaniu niektórych danych, może zostać związany we / wy, ponieważ wąskim gardłem jest wtedy odczyt danych z dysku (w rzeczywistości ten przykład jest obecnie być może trochę staroświecki z setkami MB / s pochodzących z dysków SSD).

Źródło
Translate

Związany z procesoremoznacza szybkość, z jaką postępuje proces, jest ograniczona szybkością procesora. Zadanie, które wykonuje obliczenia na małym zestawie liczb, na przykład mnożenie małych macierzy, prawdopodobnie będzie związane z procesorem.

Powiązane I / Ooznacza szybkość, z jaką postępuje proces, jest ograniczona przez prędkość podsystemu We / Wy. Zadanie przetwarzające dane z dysku, na przykład liczenie wierszy w pliku, prawdopodobnie będzie związane z operacjami we / wy.

Związana z pamięciąoznacza szybkość, z jaką postępuje proces, jest ograniczona ilością dostępnej pamięci i szybkością dostępu do pamięci. Zadanie przetwarzające duże ilości danych w pamięci, na przykład mnożenie dużych macierzy, prawdopodobnie będzie związane z pamięcią.

Powiązana pamięć podręcznaoznacza szybkość, z jaką postęp procesu jest ograniczony ilością i szybkością dostępnej pamięci podręcznej. Zadanie, które po prostu przetwarza więcej danych niż mieści się w pamięci podręcznej, zostanie powiązane z pamięcią podręczną.

Opcja I / O Bound byłaby wolniejsza niż Memory Bound byłaby wolniejsza niż Cache Bound była wolniejsza niż CPU Bound.

Rozwiązanie problemu związanego z wejściem / wyjściem niekoniecznie oznacza uzyskanie większej ilości pamięci. W niektórych sytuacjach algorytm dostępu można zaprojektować z uwzględnieniem ograniczeń we / wy, pamięci lub pamięci podręcznej. WidziećNieświadome algorytmy pamięci podręcznej.

Źródło
Translate

Związany z procesorem oznacza, że program ma wąskie gardło przez procesor lub jednostkę centralną, podczas gdyI / Ozwiązane oznacza, że program jest zablokowany przez wejścia / wyjścia lub wejścia / wyjścia, takie jak odczyt lub zapis na dysku, sieć itp.

Generalnie optymalizując programy komputerowe, próbuje się znaleźć wąskie gardło i je wyeliminować. Świadomość, że twój program jest związany z procesorem, pomaga, więc nie można niepotrzebnie optymalizować czegoś innego.

[Mówiąc „wąskie gardło”, mam na myśli to, co sprawia, że program działa wolniej niż w innym przypadku.]

Źródło
Translate

Inny sposób wyrażenia tego samego pomysłu:

  • Jeśli przyspieszenie procesora nie przyspieszy programu, może tak byćI / Ouwiązany.

  • Jeśli przyspieszenie I / O (np. Użycie szybszego dysku) nie pomoże, twój program może być związany z CPU.

(Użyłem „może być”, ponieważ musisz wziąć pod uwagę inne zasoby. Pamięć jest jednym z przykładów).

Źródło
Translate

Kiedy Twój program czekaI / O(tj. odczyt / zapis dysku lub odczyt / zapis sieciowy itp.), CPU może wykonywać inne zadania, nawet jeśli program jest zatrzymany. Szybkość twojego programu będzie głównie zależeć od tego, jak szybko może nastąpić to IO, a jeśli chcesz go przyspieszyć, będziesz musiał przyspieszyć I / O.

Jeśli twój program wykonuje wiele instrukcji programu i nie czeka na I / O, mówi się, że jest związany z procesorem. Przyspieszenie procesora sprawi, że program będzie działał szybciej.

W obu przypadkach kluczem do przyspieszenia programu może nie być przyspieszenie sprzętu, ale optymalizacja programu w celu zmniejszenia potrzebnej ilości operacji we / wy lub procesora lub wykonanie operacji we / wy przy jednoczesnym obciążeniu procesora rzeczy.

Źródło
Alma Lee
Translate

Ograniczenie we / wy odnosi się do stanu, w którym czas potrzebny do zakończenia obliczeń jest określany głównie przez okres oczekiwania na zakończenie operacji wejścia / wyjścia.

Jest to przeciwieństwo zadania związanego z procesorem. Ta okoliczność pojawia się, gdy szybkość, z jaką żądane są dane, jest mniejsza niż szybkość, z jaką są one zużywane lub, innymi słowy, więcej czasu spędza się na żądaniu danych niż na ich przetwarzaniu.

Źródło
dua
Translate

Procesy powiązane z IO: spędzają więcej czasu na wykonywaniu IO niż na obliczeniach, mają wiele krótkich impulsów procesora. Procesy powiązane z procesorem: spędzają więcej czasu na wykonywaniu obliczeń, kilka bardzo długich impulsów procesora

Źródło
Translate

Proces związany z I / O: - Jeśli większość czasu życia procesu jest spędzona w stanie I / O, wtedy proces jest procesem powiązanym z ai / o. Przykład: -calculator, Internet Explorer

Proces związany z procesorem: - Jeśli większość czasu procesu jest spędzana w procesorze, jest to proces powiązany z procesorem.

Źródło
Leave a Reply
You must be logged in to post a answer.