- ベストアンサー
Linux コア振り分け
こんばんは、 始めまして、 Linuxを使ってサーバーを建てています。 LinuxもWindowsのようにアプリケーションに当てるCPUのコアを振り分けることは出来ませんか? もし出来るなら教えて下さい。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
特定コアに割り当てる手段があるのかどうかは知りません。 コア数を制限する方法自体はあります。 たとえば、ffmpegではそういうオプションがありますから ニコニコ動画やYouTubeのように、アップロードされた動画を エンコードしているサーバーでは、そういうオプションも使われているかもしれません。 ただ、Windowsのように、GUI上から 任意のプロセスに対して、コア割り当てを指定/制限するというツールは用意されていないようです。 ただし、ディストリビューションによってはあるのかもしれませんし 標準で組み込まれないツールで実現できるようになっている可能性も無いわけではありません。 技術自体はプロセッサーアフィニティーという用語があるようです。 http://www.ibm.com/developerworks/jp/linux/library/l-affinity/ Linuxでは、全体のパフォーマンスを重視する傾向が強く 個別に設定するツールが提供されていないのかもしれません。 カーネルのスレッド割り当てが効率的であれば、全体のパフォーマンスにおいては コア割り当てを、手動で行なう意味がありませんし… ただ、CPUコアごとに、個別のキャッシュを持っているCPUアーキテクチャーで かつ大量の処理を行なうシステムでは、個別に割り当てできるほうが… キャッシュヒットが期待できる分、有利になるという話はあるようですね。 ひるがえって、ffmepgで同時に大量の動画をエンコードするような場合には 使っているCPUのキャッシュ構成を確認すべし。ってことかもしれません。 実測で、どういう結果になるかはわかりませんが。