より公平なアルゴリズム
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/09/29 20:54 UTC 版)
「Completely Fair Scheduler」の記事における「より公平なアルゴリズム」の解説
技術的には "Completely Fair Scheduler"(完全に公平なスケジューラ)という名称は正しくない。CFSが保証できるのは、「不公平」レベルが O ( n ) {\displaystyle O(n)} 未満であることだけである( n {\displaystyle n} はプロセス数)。「不公平」レベルがもっと低い(例えば O ( log n ) {\displaystyle O(\log n)} )、より複雑なアルゴリズムも存在する。 2010年11月、デスクトップやワークステーション向けのより「公平」なスケジューラとして 2.6.38 カーネルのCFS用パッチが受理された。これはリーナス・トーバルズの示唆に基づいてマイク・ガルブレイスが開発したもので、多くのシステムでマルチタスク性能を「劇的に」向上させると期待されている 。基本的アルゴリズムの実装はマイク・ガルブレイス自身のLKML(英語版)へのポストで説明されている。 それによって解決される最大の課題は、マルチコアやマルチCPU (SMP) のシステムで、多数のスレッドで構成されるタスクが存在したときにユーザーとの対話における応答時間が長くなるという問題である。簡単に説明すれば、Linuxカーネルのコンパイルや動画のエンコーディングなどといったプロセスを実行している状態でも、動画の表示し、電子メールを読むなどといった一般的なデスクトップ的活動で応答に違和感がないようにする。ただし、これには異論もある。 このパッチではttyタスクグループのみを公平クラスのタスクとし、拡張の余地を残している。このパッチでの基本的実装だけでも、応答性能が低いと考えてLinuxをデスクトップ用途で使うことをためらっていたユーザーへの解決策を与えているという。リーナス・トーバルズはそれについて次のように述べている。 だから私はこれが確実に「本当の改良」パッチだと思っている。グッジョブ。グループスケジューリングは「特定のサーバ負荷に役立つ」ものから「キラー機能」となった。
※この「より公平なアルゴリズム」の解説は、「Completely Fair Scheduler」の解説の一部です。
「より公平なアルゴリズム」を含む「Completely Fair Scheduler」の記事については、「Completely Fair Scheduler」の概要を参照ください。
- より公平なアルゴリズムのページへのリンク