• ベストアンサー

マルチプロセッサに関する質問です。

疎結合マルチプロセッサの環境では、 同じジョブの中の別プロセスが別のCPUを割り当てられ得るかも知れない、 と私には思われましたので、確認の為に伺います。 ★たとえ同じプロセスIDのスレッドが別のCPUを割り当てられましても、 演算結果が齟齬を来たさない様に、 どういう手段で進捗が管理されているのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • itou2618
  • ベストアンサー率26% (319/1209)
回答No.1

ジョブはOSの管理下で実行されます。 疎結合マルチプロセッサだと、CPUごとに独立してOSがあります。 ですから、疎結合マルチプロセッサの環境で、同じジョブの別プロセスが別のCPUに割り当てられることはありません。

SakuraiMisato
質問者

補足

有り難う御座います。 根本的な誤解は全体へと影響を及ぼし得ますので、 此の質問への回答は凄く助かりました。 因みに、下記のページでも、 ヒントだけでも構いませんから、 御教授を賜れませんでしょうか? http://okwave.jp/qa/q7748960.html 試験日直前で酷く焦っておりますので、 助けて頂けますと、幸甚に存じます。

関連するQ&A

  • OSによる制御に関する質問です。

    ジョブ管理の中のイニシエーターがタスク管理の部門へと業務を引き渡す過程の途上で、プロセスIDの割り当てもが実施されるのでしょうか? ジョブをタスクに区分する段階で、 もし各タスクにプロセスIDが割り当てられていませんでしたら、 其の場合には、タイムスライスの後での紐付けが難しくなるのではないか、 という酷く拙い疑問が沸き起こって参りましたから、 畏れ入りますが、教えて下さいませ。

  • 切羽詰まったど素人からの質問です。

    『密結合マルチプロセッサー』環境の下では、 単一のキャッシュメモリーもが(主記憶装置と同じく、) 複数のCPUによって共有されているのでしょうか? それとも、其の場合には、 複数のキャッシュメモリーが利用されているのでしょうか?

  • 酷く焦っておりますから、教えて下さいませ。

    ルーター・インテリジェントスイッチの中でも、 スレッドへとCPUを効率的に割り当てる為に、 OSが其のスケジュールを管理していて、 CPUが演算結果をキャッシュメモリに上書きした後に、 当該スレッドがシステムコールを実施しているのでしょうか?

  • 最近のcpuのコア数、スレッド数について

    osは時分割でcpuを割り当てることでマルチプロセスを 実現しているんだと思います。windowsではマルチプロ セスではなくマルチスレッド?どちらもできる?よく わからないですが、そこでいうスレッドと、最近のcpu の○コア○スレッドという際のスレッドは全然別の話です よね?アプリのスレッドがたった数個しか実行できない なんてあり得ないですし。

  • Javaで実環境でのプロファイリング

    Javaでかなり多機能なサーバアプリケーションを作っているのですが、 普段はCPU負荷1%程度なのに特定の条件下で一時的に負荷が100%になってしまいます。 その原因を探るのに開発環境であれこれやってみても再現せず、 実環境(ユーザーに使ってもらっているサーバー)でその問題が発生した時にスレッドダンプや全スレッドのスタックトレースを取りたいと思ったのですが、 私の認識では、スレッドダンプを取るとプロセスが死んでしまい、Javaでは他スレッドのスタックトレースが取れず、プロファイラは実環境で使えるほど高性能ではないと思っています。 プロファイラもCPU負荷が高くなったときだけ働くようにするなどピンポイントに動作させれたらいいのですがそういうものは見つかりませんでした。 なにか良い方法は無いでしょうか?

    • ベストアンサー
    • Java
  • Linux KVMゲストOSのプロセスはホスト上で

    LinuxでKVMを使ってゲストOS環境を用意し、そこで各種プロセス/スレッドを起動した場合、それらはホストOS上でどう見えますでしょうか? ・ホストOS上にも同じようにプロセス/スレッドが作成される。ゲストからはアクセス可能だがホストからは存在を認識できるだけで、特権ユーザーでなければkillできない。 ・ホストOS上のKVMプロセスが利用するリソース(CPU、メモリ、etc.)が増えるだけ。ホス トからはゲストが何をやってるか全くわからない。(VMWare Playerと同じような感じ) どちらになるでしょうか? クラウド化するにあたっての実験をこれから計画するにあたって、事前にプロセス/スレッドの振舞いを知っておく必要があり、ご質問いたします。

  • 試験日間近での悪足掻きなのかも知れませんが、…。

    たとえ同じタスクをプロセス・スレッドへと分割して、 非同期でCPU利用の権利を提供していましょうとも、 もし同じタスクに属しているプロセス同士の繋がりが明らかになりませんでしたら、 其の場合には、当該プログラムが正常に機能し難くなるのだろう、 と私には思われますから、畏れ入りますが、教えて下さい。 ★同一タスクの各プロセス・スレッドがCPUでの演算結果を連携させるべく、 当該タスクの同一性を証明する為に、 "メッセージキュー( http://ja.wikipedia.org/wiki/%E3%83%A1%E3%83%83%E3%82%BB%E3%83%BC%E3%82%B8%E3%82%AD%E3%83%A5%E3%83%BC )"に"PID( http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E8%AD%98%E5%88%A5%E5%AD%90 )"が盛り込まれているのでしょうか?

  • Oracleで今接続しているセッションをSQLで知りたい。

    こんにちは Oracleで自分がどのセッションIDで接続しているかを調べる方法を教えてください。 条件:同一端末より複数プロセス(同一EXE)※から別セッションで接続しています。 ※複数スレッドで別セッションで処理が並列で行われる。

  • 並列処理についてですが、

    並列処理についてですが、 SCOREという並列環境を構築するソフトで、4つのPC(CPU:Quad Core)を、並列化させ、 ある逐次プログラム(C言語、ラプラス方程式を差分法で解くプログラムですがプログラム内容はあまり関係ないので、あるプログラムとさせていただきます)を並列処理させたところ、 1つのPCで、4つのプロセッサを使用し、合計4ノードで並列処理を行った場合と、・・・(1) 4つのPCで各PC1台につき1つのプロセッサずつ、合計4ノードで並列処理を行った場合では、・・・(2) 同じ4ノードであるにかかわらず、 (2)がノード数に比例的に演算性能が良くなることに対して、 (1)の場合、ノード数が増えても関数log(x)(雰囲気です)をグラフにしたような形で、演算性能がうまく良くなりません このような質問を以前したところ、 ・スレッド切り替えのオーバーヘッドが影響しているのではないか ・実行環境が違うことと、ひとつのプロセスですべてのコアを占有する thread はコアを2個使えば2倍、3個使えば3倍それぞれ速くはならない。一方、PCを組み合わせて使う場合、それは完全に独立しており、データ並列のために分割されて計算量が縮小された分、PC組み合わせ数にほぼ比例して速くなる。 という回答をいただくことができました。 なんとなくで意味は分かるのですが、何卒PC初心者なもので、あまり理解することができません。 ここからが質問です。 ・「スレッド切り替え」とは一体どういったものなんでしょうか ・いただいた回答で、「ひとつのプロセスですべてのコアを占有するスレッド」とはどういうことでしょうか このことについて教えていただきたいです。スレッドとは、など部分部分での単語は調べてみましたが、 どういったように動いているのかが分かっていないせいか、上記質問のようなことが分かりません。 回答をせっかくいただいたのに自分の語彙力のせいで度重なる質問をさせていただくことを申し訳なく思いますが、みなさん回答の方よろしくおねがいします。

  • windows serverの内部構造について

    windows server の内部構造について良い資料がないので教えて下さい。 知りたい内容は、windows serverにインストールされているアプリがどう振る舞うのかです。 ・アプリ起動・終了時の振る舞い(プロセス管理やスレッドの管理) ・GUIからのイベント発生時の振る舞い(インターフェース) ・スレッド生成時の振る舞い(メモリの取得や解放) ・例外時の振る舞い etc また、windows serve 2008 または、2003 で異なる動作をするなら、それぞれで良い資料はありませんでしょうか? また、CPUがデュアル、または、シングルで異なる動作をするなら、それも分かるとありがたいです。

専門家に質問してみよう