Primeiro de tudo, sim - se você tem um sistema multi-core, você pode ter múltiplos processos em 100% (a lista de processos mostra a utilização de um único núcleo teórico) ou para processos multithreaded você pode ter um único processo acima de 100 %. O uso geral da CPU pode ser de 25%, 50%, etc. - porque o padrão principal é que os primeiros números de CPU sejam um agregado de todas as CPUs no sistema. Você obterá uma visualização melhor se pressionar 1
com a execução máxima - ela dividirá cada CPU.
Com isso dito, os conjuntos us (er), sy (stem), ni (ce) e id (le) também são relevantes. O programa R não parece estar martelando a CPU no loop e, portanto, a CPU está principalmente no bucket Idle. Eu não estou super familiarizado com R - você pode querer adicionar algum debug para ver o que está esperando, se você pode otimizá-lo para melhor utilizar o CPU (supondo que você está apontando para ele ser ligado ao CPU). Da mesma forma, você poderia ter um processo martelando o disco e ter um baixo percentual de usuário, mas um valor alto de Wa (it) enquanto espera para enviar dados de página para / do disco.
Se R estivesse dando voltas no ciclo fazendo cálculos / classificações ou similares constantemente, isso mudaria o uso geral da CPU para o bucket User (ou, se você for legal, o processo mudaria para o bom bucket). O bucket do sistema pode ver um uptick se você estiver fazendo grandes varreduras e classificações na memória (embora não seja necessariamente atribuído a um processo na lista). No momento, porém, parece que seu sistema está bem carregado carregando o loop atual.