Узкое место (R[tky byvmk)

Перейти к навигации Перейти к поиску

Узкое место — явление, при котором производительность или пропускная способность системы ограничена одним или несколькими компонентами или ресурсами. В соответствующем англоязычном термине бутылочное горлышко (англ. bottleneck) прослеживается аналогия с горловиной бутылки, узость которой не позволяет вылить или высыпать всё её содержимое сразу, даже если её перевернуть. При увеличении её ширины увеличивается и скорость, с которой бутылка опустошается. Относительно бизнеса узким местом является фактор, ресурс, процесс или подразделение, которое ограничивает общую производительность определённым верхним пределом даже при условии существенного увеличения производительности всех остальных компонентов.

Управление проектами

[править | править код]

Узкое место в управлении проектами — это процесс или цепочка процесса, ограничение пропускной способности которых приводит к ограничению пропускной способности всей цепочки. Компонент иногда называется критическим элементом.

Связанными концепциями в управлении проектами являются:

В качестве примера узких мест, ограничивающих пропускную способность, можно привести снабжение металлургического комбината или нефтеперерабатывающего завода.

Технические науки

[править | править код]

В технических науках, узкое место — это явление, приводящее к тому, что производительность или пропускная способность всей системы ограничивается одним компонентом. Этот компонент иногда называется критическим элементом.

Формально узкое место расположено на критическом пути системы и обеспечивает самую низкую пропускную способность. Узкие места обычно избегаются системными проектировщиками, затрачивающими массу усилий для их локализации и избежания. Узким местом могут быть, например, процессор, линия связи, программное обеспечение, обрабатывающее данные и т. д.

Разработчики стараются избегать узких мест и направлять усилия на обнаружение и исправление существующих узких мест. Некоторые примеры возможных инженерных узких мест: процессор, канал связи, дисковый ввод-вывод и т. д. Любая система или приложение столкнутся с узким местом, если работа будет выполняться в достаточно быстром темпе[1].

Дорожные работы в правой части дороги приводят к тому, что весь транспортный поток проходит через одну полосу, вызывая затор.
Затор, вызванный дорожными работами

Касательно транспорта узкое место представляет собой участок дороги со сниженной пропускной способностью по отношению к другим участкам той же дороги. Зачастую это узкая часть дороги, возможно также участок с малым числом полос или железнодорожный путь с ограниченным числом колей. Это может быть также узкий мост или туннель, глубокая выемка или узкая дамба, или осуществляемые на участке дороги или железнодорожного пути работы.

Узкие места пропускной способности — наиболее уязвимые точки в сети, зачастую являющиеся целью агрессивных или оборонительных военных операций. Узкие места пропускной способности стратегического значения — такие как Панамский канал, где транспортный поток ограничен инфраструктурой — обычно являются геостратегическими точками; узкие места пропускной способности тактического значения являются полосами для манёвра[англ.].

Узкие места в программном обеспечении

[править | править код]

Узким местом (англ. bottleneck) в программировании называется Hotspot, на который затрачивается значительная доля процессорного времени, если затрачиваемое время возможно сократить оптимизацией кода.[2]

Обнаружение узких мест (иногда называемыми «активными участками» — участками кода, которые выполняются наиболее часто — например, имеют наивысшее число выполнений) является одной из задач профилирования. Для этого обычно применяются специализированные средства, называемые профайлерами. Целью является максимально возможное улучшение производительности таких участков кода для улучшения общей алгоритмической эффективности.

Примечания

[править | править код]
  1. Wescott, Bob. The Every Computer Performance Book, Chapter 3: Useful laws. — CreateSpace, 2013. — ISBN 1482657759. Архивная копия от 26 июля 2015 на Wayback Machine
  2. Планирование параллельной оптимизации | Intel® Developer Zone. software.intel.com. Дата обращения: 6 января 2016. Архивировано 4 января 2016 года.