- PR -

マルチプロセッサ対応にしたい・・・

1
投稿者投稿内容
お〜いお茶
会議室デビュー日: 2004/10/04
投稿数: 1
投稿日時: 2004-10-04 18:16
VC++でプログラミングし、それをマルチプロセッサのマシンで動かすと
CPUの使用率が25%までしかあがりません。
100%フルで動かしたいのですがどうすれば良いかご存知の方はいませんか?
Visual C++の設定なのでしょうか?
プログラムの組み方なのでしょうか?
ちなみに「午後のこ〜だ」などマルチプロセッサ対応のアプリを動かすと
ちゃんとCPU100%使用します。
このようにしたいのです・・・。
よろしくお願いします。
甕星
ぬし
会議室デビュー日: 2003/03/07
投稿数: 1185
お住まい・勤務地: 湖の見える丘の上
投稿日時: 2004-10-04 20:29
引用:

お〜いお茶さんの書き込み (2004-10-04 18:16) より:
VC++でプログラミングし、それをマルチプロセッサのマシンで動かすと
CPUの使用率が25%までしかあがりません。
100%フルで動かしたいのですがどうすれば良いかご存知の方はいませんか?
Visual C++の設定なのでしょうか?
プログラムの組み方なのでしょうか?


プログラムの組み方の問題。ひとつのスレッドが同時に二つのCPUで実行されることは無い。したがって2以上のCPUを持つPCで100%処理能力を使い切りたければ、最低限CPUの数よりも多いスレッドに並列して処理を行う必要がある。
もちろん闇雲にスレッドを増やせばよい言うものでもない。Aスレッドの処理結果をBスレッドが待っていては実行効率が落ちる。Aスレッドが参照するメモリ領域を、Bスレッドが書き換えたりすると、メモリキャッシュヒット率が下がってパフォーマンスが落ちる。それぞれのスレッドはお互いにできるだけ干渉しないのが望ましい。
1

スキルアップ/キャリアアップ(JOB@IT)