マルチスレッドプログラミング相談室 その8at TECHマルチスレッドプログラミング相談室 その8 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト910:デフォルトの名無しさん 12/03/26 15:59:30.82 メインプロセスと同じ物理コア内のHyperThreading論理コアで実行されている サブプロセスが、メインプロセスの動作を邪魔しないようにするためのAPI関数は ありませんか? 例えば、SetProcessAffinityMaskを同じ値にした2つのプロセスは SetPriorityClassでサブの優先度を下げれば、メインプロセスが 動いているときはサブプロセスはほとんど動作しなくなります。 しかし、SetProcessAffinityMaskを、メインプロセスで1、サブプロセスで2に した場合、サブプロセスの優先度が低いにもかかわらず、メインプロセスと CPUリソースを均等に割り振っているようです。 これを防ぐための、SetProcessPriorityに変わるようなAPI関数はありませんか? 911:910 12/03/26 16:18:58.25 superπを2つのフォルダにコピーして1つをメイン、もう1つをサブとする。 メインのPriorityClassをNORMAL、AffinityMaskを1に固定。 サブのPriorityClassとAffinityMaskを変化させたときの、2つのsuperπの 838万桁計算時間を比較。 記号 P サブのPriorityClass, A: サブのAffinityMask: メインの時間/サブの時間 A P NORMAL, A 1: 5:19/5:22 B P BELOW, A 1: 2:57/5:38 C P NORMAL, A 2: 3:31/3:30 D P BELOW, A 2: 3:30/3:30 E P NORMAL, A 4: 2:53/2:47 F P BELOW, A 4: 2:52/2:47 Dのパターンでのタイムを見ると、サブの優先度がメインより低いにもかかわらず Cのパターンと同じになっています。 この状況でメインのタイムはFと同等で、サブのタイムはBよりは短くなるような、 SetPriorityClassのような関数はありませんか? 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch