プロセス (親)を使用してコアに固定するsched_setaffinity
と、分岐したプロセスがアフィニティを継承し、同じコアに固定されることを理解しています。しかし、それらを永遠に同じコアに固定したくはありません。理想的には、私が望むのは、それらが同じCPUに一緒にとどまることです。つまり、親が OS スケジューラによって移行される場合、子は親に従い、親と同じ CPU に移行される必要があります。
考えられる方法の 1 つはshared variable
、親が現在の CPU を定期的に更新するようにすることです。その後、子はこの変数を定期的に検索しsched_setaffinity
、親と同じ CPU に移行できます。ただし、これは少しハックに見え、別の CPU で実行される期間が含まれる場合があります。これを達成するためのより良い方法はありますか?