
linuxマルチコアCPU環境においてコアの使われ方について
マルチコアCPUがLinxu環境において(その他Linuxでないプラットフォームにおいても)、
実際に搭載されているCPUのコア数が正常にOSに認識されているというだけではなく、
各プロセスの処理に対して複数のコアが適宜効果的に利用されているのかどうか??
ということが知りたく、添付画像に私の疑問点をまとめてみました。
■ポイント
++++++++++++++++++++++++++++++++++++++++++++++++
投稿した画像の色がついている4つの矢印は1つ1つそれぞれがDB接続クライアントがmysqlに投げているSQL文(クエリ)をイメージしています。
Mysqlを起動させているlinux kernelは、このクエリを受け取り自身が管理しているCPUがマルチコアであった場合、どのようなロジックで複数のコアの中から4つのクエリを処理させるCPUコアを選択しているのでしょうか?
例)kernelが未使用のCPUコアを都度選んで1クエリの処理を担当するよう制御している
⇒コアによって処理する数は異なる
例)kernelが4つのクエリに対して4つのCPUコアをラウンドロビン分散させて処理させている。
⇒コアが処理する数は均等になる
++++++++++++++++++++++++++++++++++++++++++++++++
どなたか、私の疑問についてご存知でしたらご教授いただけますでしょうか。
よろしくお願します。

No.1ベストアンサー
- 回答日時:
カーネルバージョンによってスケジューリングが異なりますが、どのバージョンでも、無用なオーバーヘッド低減のために、プロセス単位でCPU時間を割り当てていたと思います。
Murasan759 さん
ご回答ありがとうございます。
回答いただいた内容をもとに、
「kernel2.6 スケジューラ」というkeywordでgoogle検索したところ、
このページに行き着き、
http://d.hatena.ne.jp/takaochan/20071206/1196951 …
さらに、「O(1)スケジューラ」という
keywordでgoogle検索したところ、
このページにたどり着きました。
http://www.itmedia.co.jp/enterprise/articles/040 …
さらに、さらに、itmediaの記事の中で「CPUごとのRUNキュー」
というセクションがありましたので、
「RUNキュー」でgoogle検索したところ、
以下のページにたどりつきました。
http://www.nces.is.nagoya-u.ac.jp/NEXCESS/blog/i …
これで知りたいことの大体は理解できました。
ただ、実際のところ、このロジック通りに、
たとえば4コアある環境で、
「マルチプロセッサシステムに対応したLinuxでは,CPUごとにこのRUNキューを持ちます.そして, RUNキュー間で負荷状態に偏りが出たときは、RUNキュー間で実行待ちプロセスのマイグレートを行い,バランスを取ります.→ロードバランス」
このようにコアのロードバランスがうまくされているのか?
について深追いしたいとなった場合、やはり、実環境で調べてみるしかないのでしょうか??
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CPU・メモリ・マザーボード PコアとEコアの使い分け 3 2023/07/30 22:09
- CPU・メモリ・マザーボード cpu 4 2023/02/17 19:54
- iPhone(アイフォーン) スマホの節電モードについて cpu高速処理コアと効率コア節電モードオンにすると効率コアだけ使われるん 1 2023/08/05 22:51
- CPU・メモリ・マザーボード Chromeブック 1 2022/08/13 15:38
- BTOパソコン Apple 社の iPhone 14 で使用される A15 Bionic / A16 Bionic 1 2022/09/28 16:42
- ノートパソコン 10コアCPU、32コアGPU、16コアNeural Engine搭載Apple M1 Max 32 2 2022/12/01 15:37
- CPU・メモリ・マザーボード LGA1151ソケットにPentium Gold G5400(3.7Ghz]が載せてあるのですが、 8 2022/10/11 18:12
- その他(コンピューター・テクノロジー) CPUのコア数が4なら4つのソフトまで同時に動かす事が出来るということなのでしょうか?6なら6つまで 4 2023/07/22 13:09
- BTOパソコン PCの選び方 6 2022/09/11 00:16
- CPU・メモリ・マザーボード CSGOの最低FPSを上げたいのですが 1 2022/09/10 17:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
LinuxでWine使うとどのくらいWi...
-
Core 2 Duo の古いパソコンに最...
-
ubuntu(linux)のシャットダウン...
-
bashでシングルクォート内の変...
-
Linux のシェルスクリプトの強...
-
2TBのUSBメモリを2000円ほどで...
-
CentOSが起動時にフリーズ
-
ubuntu 24 へのCanon 複合機ス...
-
私のパソコンでVirtualBoxは使...
-
[Linux Mint] インストールした...
-
windowsxpと同じくらい軽いLinu...
-
ssh接続しようとしたらエラーメ...
-
VirtualBox ゲストOSにPC内蔵HD...
-
apacheでリバースプロキシを設...
-
ユーザ名usr1でcentos(192.168....
-
ubuntu 22日本語Remixのisoイメ...
-
zorin OS
-
至急です。kubuntu24.04ltsをUS...
-
ubuntuのシャットダウンが進ま...
-
mxlinux 起動時エラーについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
LinuxでWine使うとどのくらいWi...
-
Core 2 Duo の古いパソコンに最...
-
Linux のシェルスクリプトの強...
-
ubuntu(linux)のシャットダウン...
-
bashでシングルクォート内の変...
-
ubuntuで デイスク/deb/loopと...
-
apacheでリバースプロキシを設...
-
CentOSが起動時にフリーズ
-
ubuntuのシャットダウンが進ま...
-
ubuntu が起動しない。
-
Windowsのローカルディレクトリ...
-
Ububtuでファイル共有できない...
-
Ubuntu on Xorgのログインについて
-
ログにserver reached MaxReque...
-
「/var/log」内のログの削除の...
-
ubuntu 24 へのCanon 複合機ス...
-
ssl_request_logの必要性について
-
私のパソコンでVirtualBoxは使...
-
WineのRufusでデバイスを検知す...
-
LinuxのノートパソコンでDVDコ...
おすすめ情報