1
Dockerコンテナーで許可されているCPUの数をカウントする
私の具体的なシナリオは次のとおりです。特定のcpusetでdockerコンテナーを起動します。 docker run --cpuset-cpus="0-2" # ... そのコンテナ内で、エントリポイントとしてシェルスクリプトを実行makeします。シェルスクリプトは、ある時点で実行されます。かなりの数の仕事(-j)がどうなるかを考えたいと思います。もちろん、割り当てられたCPUの数を環境に渡すこともできますが、自動的に検出する方法の方がはるかに望ましいでしょう。 現在のプロセスのを使用しtaskset -c -p $$たりcat /proc/self/status | grep Cpus_allowed_list取得したりできることCpus_allowedは知っていますが、許可されているCPUの実際の数を取得する方法はわかりません。これらのコマンドの出力を解析したり、Cpus_allowedマスクをいじったりすることは避けたいのですが、オプションがない場合はそれを行います。