Узкие места оборудования / IO

0

Принимая во внимание следующие проблемы, каков будет порядок убывания от наибольших до наименьшего количества узких мест в компьютерной системе?

  • Сетевой ввод / вывод
  • Дисковый ввод / вывод
  • RAM I / O
  • Графический ввод / вывод
  • Обработка ввода / вывода

Я часто объясняю концепцию того, что может заставить машину выглядеть медленной, и я хотел бы получить хорошее представление о том, какие узкие места в системе встречаются от наибольшего до минимального. Учитывая средний компьютер с неплохим жестким диском 7200 об / мин, сетевым подключением со средней скоростью 500 килобайт в секунду, средней скоростью ОЗУ, двухъядерным процессором 2 ГГц и довольно дешевой видеокартой, я бы сказал, что список выше? Я предположил бы, что это будет способ, которым я написал это, но я хотел бы быть уверен.

Каковы наибольшие и наименьшие причины узких мест в оборудовании и вводе / выводе?

Naftuli Kay
источник
3
Сильно зависит от того, для чего он будет использоваться. Я бы убрал оперативную память из медленного списка :-), до тех пор, пока какой-нибудь носитель информации не сможет приблизиться где-нибудь близко :-) Интернет всегда "медленный", 500 Кб даже медленнее, но насколько быстро он должен быть, зависит от того, что вы хочу сделать с этим. Если вы хотите делать отличные игры, вам нужна отличная видеокарта, даже если процессор немного слабоват. тем не менее, зависит от игры. Процессоры выполняют потрясающую обработку быстро, но они должны быть в 2 раза быстрее, если бы они двигались так же, как и раньше.
Psycogeek
2
Если вы хотите свой самый грубый список узких мест. Прежде всего, дисковый ввод-вывод. Это повлияет на все, начиная от времени загрузки, запуска приложений и даже до серфинга в сети. Если ваш целевой пользователь играет в игры, то, очевидно, это будет видеокарта.
kobaltz
Вопрос действительно не имеет особого смысла. Поскольку каждая операция или передача занимают ограниченное количество времени, самая медленная или самая длинная операция или передача, вероятно, будет «узким местом». Так вы просто запрашиваете порядок скорости передачи или скорости передачи данных? Но даже самая быстрая (единичная) операция / передача, выполняемая многократно в течение длительного времени, будет выглядеть как «узкое место»!
sawdust
1
@Psycogeek: ОЗУ должно оставаться в списке, хотя скорость передачи данных для ОЗУ намного выше, чем у всех периферийных устройств. Учтите, что в большинстве BIOS есть опция «быстрой загрузки», которая исключает тест RAMemory: большинству людей не нравится ждать завершения теста RAM. Сделайте что-нибудь достаточно долго, и это станет заметным и «узким местом».
sawdust
Вопрос действительно плохо уточнен. Это всегда зависит от того, что вы предлагаете сделать.
dmckee

Ответы:

2

Это зависит

Если то, что вы делаете, загружает файлы, то узким местом в вашем случае будет сетевой ввод / вывод. Если они работают с текстовыми документами, сетевой ввод / вывод не имеет значения.

Вот, пожалуй, лучший способ описать это:

  • Если проблема заключается в том, что приложения работают медленно, то узким местом обычно является ЦП, если имеется доступная ОЗУ, или из-за того, что ОЗУ не доступно, диск (так как данные были страницами там). На стороне диска есть узкое место ввода / вывода, если процессор перегружен (или, скорее всего, ядро ​​разогнано, а приложение не является многопоточным), узким местом является ЦП, но не ввод / вывод ЦП. ,
  • Если проблема заключается в том, что игры работают медленно, это можно исправить, если получить более качественную видеокарту. Это почти никогда не о вводе / выводе, но о вычислениях.
  • Скорость ОЗУ имеет значение, только когда пользователь много пишет (> 1 ГБ / с) в ОЗУ. Если пользователь не делает это часто или не заботится о различиях в миллисекундах, это почти никогда не имеет значения. Операции ввода-вывода ОЗУ, как правило, очень быстрые (DDR2 может обрабатывать от 3200 до 8533 МБ в секунду, а DDR3 быстрее), поэтому это редко является узким местом
  • Сетевой ввод / вывод имеет значение только в том случае, если много данных передается туда-сюда.
  • Дисковый ввод / вывод имеет значение при запуске и при копировании или загрузке больших файлов / приложений, но, как правило, если это не делается, это не очень заметно.

Замечания: Ввод / вывод относится к вводу / выводу. Хотя это является фактором для некоторых компонентов (например, для диска), для других он, как правило, не имеет значения. Многие процессоры могут принимать 6 ГБ / с, как и графические процессоры. Время, затрачиваемое на завершение вычислений, как правило, гораздо больше, чем время, которое требуется им, чтобы просто прочитать данные и выплюнуть их.

soandos
источник
@TKKocheran, черточки с пространством должны были сделать пули. Как правило, перед отправкой правки стоит проверить, чтобы форматирование не изменилось.
soandos
Скорость ОЗУ (в отличие от скорости кеша) имеет значение много когда вы делаете вычисления среднего размера. Иногда я получал порядок, просто меняя программу, чтобы лучше использовать кэш (матричное суммирование - классический пример такого рода вещей).
dmckee
Я полагаю, что это функция латентности, а не грубая скорость.
soandos
Плохо написанный фрагмент кода снова и снова останавливает конвейер, ожидая поступления данных из ОЗУ. Пока это происходит, ничего не делается, поэтому выполнение кода занимает больше времени. Это действительно влияет на скорость вычислений.
dmckee