Não existe carga por CPU.
A média de carga é definida como o número de processos aguardando recursos do sistema. Isso não é necessariamente CPU. Além disso, como um processo pode estar aguardando o tempo da CPU e não está sendo executado ativamente em uma CPU, não é possível atribuí-lo a uma CPU específica, pois o processo pode acabar sendo executado em qualquer CPU (a menos que seja fixado).
No entanto, você pode obter% de utilização por CPU. Use /proc/stat
e use o campo 4 de cada CPU para determinar o quão ociosa é essa CPU (veja man 5 proc
e a seção /proc/stat
).
Basicamente leia o valor, durma 1 segundo, leia o valor novamente, divida a diferença por USER_HZ.