コア数と高いnice値でプロセスを実行する能力との間にはどのような関係がありますか?

コア数と高いnice値でプロセスを実行する能力との間にはどのような関係がありますか?

8つの高い優先順位(nice = -20)OSスレッド(私が持っているコアの数)でCPUを「フラッディング」すると、明らかな理由でタスクは「一時停止」されますが、それでも使用できます。

「高い優先順位スレッド」とは、同じ高優先順位プロセスによって生成されたスレッドを意味します。

ただし、64のスレッドがあると、コンピュータが完全に利用できなくなります。最大優先順位スレッドとコア間の展開の関係は何ですか?与えられた良い値を達成するためにCPUを完全にフラッディングするには、どのくらいのスレッドを作成する必要があるかを大まかに計算できますか?

答え1

少なくとも直接的にはそのような関係はありません。

nice優先順位。親密度が0のNスレッド、親密度が10のNスレッド、親密度が-10のNスレッドがあっても、予約結果は同じです。

システムが応答状態を維持するかどうかは、ユーザー入力などの遅い操作に注意を払う必要がある時間によって異なります。 1000のプロセスがあり、それぞれがネットワークパケットまたはデータがストレージから転送されるのを待っている場合、人間のユーザーであるシステムのパフォーマンスにほとんど影響しません。存在しますが、起こるべきファンキーな仕事のために時間を計画するのに時間を奪われません。対話するプロセスが同じであるか、サブプロセスであるか、親プロセスであるかに関係なく、重要なのは、同じリソースを競い合うかどうかです。

So Friendlyは、実際にCPUコアよりも準備するタスクが多い場合に次に実行する人を定義するツールです。操作する準備ができているジョブの数とPRIO_RR()がある可能性があるジョブと競合するかどうかは、準備ができたときにアクティブ化が保証される1秒あたりの回数とは異なる質問です。

関連情報