知識ベース

ボトルネック(ソフトウェア)

ソフトウェアエンジニアリングでは、 ボトルの首が全体の水の流れを遅くするなど、アプリケーションまたはコンピューターシステムの容量が単一のコンポーネントによって厳しく制限されると、 ボトルネックが発生します。ボトルネックは、トランザクションパスのすべての部分のスループットが最も低くなります。

そのため、システム設計者はボトルネックを回避し、既存のボトルネックを特定して調整するための直接的な努力を試みます。考えられるエンジニアリングボトルネックの例には、プロセッサ、通信リンク、ディスクIOなどがあります。作業が十分に速いペースで到着すると、システムまたはアプリケーションがボトルネックになります。

ボトルネック(「ホットスポット」と呼ばれることもあります-最も頻繁に実行されるコードのセクション-実行回数が最も多いセクション)は、パフォーマンス分析と呼ばれます。通常、パフォーマンスアナライザーまたはプロファイラーと呼ばれる専用のツールを使用して削減できます。目的は、コードの特定のセクションをできるだけ速く実行して、全体的なアルゴリズムの効率を向上させることです。