macOS: nice/renice가 작동하지 않습니다. CPU 시간에 실제 영향이 없나요?

macOS: nice/renice가 작동하지 않습니다. CPU 시간에 실제 영향이 없나요?

NI다음을 통해 "좋은" 값(" ") 을 볼 수 있지만 ps프로세스에서 사용하는 실제 CPU 시간에는 영향을 미치지 않는 것 같습니다.

  PID  %CPU PRI NI COMM
57081  77.6  12 10 cpu-chew
57080  77.1  12  0 cpu-chew
57085  76.9  12 15 cpu-chew
57082  76.9  12 13 cpu-chew
57083  76.7  12  0 cpu-chew
57031   0.0  31  0 -tcsh

한 프로세스가 다른 프로세스보다 더 많은 CPU를 확보하도록 하는 방법을 아는 사람이 있습니까?

== 추가 정보, fwiw:

맥OS 10.12.6

음수 값으로 (재)니스를 시도하거나 프로세스 수가 32개를 초과하는 경우(단지 "하이퍼스레딩" 등을 최대화하기 위해) 동일한 동작이 발생합니다.

cpu-chew제곱근과 증분만 수행하는 짧은 C 프로그램입니다(아래 참조).

"ps"를 여러 번 실행하면 값이 다른(1-ish에서 14-ish까지) 약간 다른 순서로 프로세스가 제공되지만 PRI모든 CPU-chew 복사본은 거의 동일한 PRIority를 ​​갖습니다. PRI마지막 전환 이후의 시간을 계산하기 위해 일종의 연령 메커니즘이 통합되어 있다고 생각합니다 . )

nice다음은 및 의 다양한 조합을 통해 작업을 시작한 방법에 대한 전체 기록입니다 renice.

tropic: cpu-chew &
tropic: /usr/bin/nice cpu-chew &
tropic: /usr/bin/nice -n 13 cpu-chew &
tropic: cpu-chew &
tropic: cpu-chew &
tropic: ps -rc -o pid,pcpu,pri,nice,comm

  PID  %CPU PRI NI COMM
57085  78.2   1  0 cpu-chew
57083  78.0   2  0 cpu-chew
57081  77.4   3 10 cpu-chew
57080  77.2   2  0 cpu-chew
57082  76.7   2 13 cpu-chew
57031   0.0  31  0 -tcsh

tropic: /usr/bin/renice -n 15 57085
tropic: ps -rc -o pid,pcpu,pri,nice,comm

  PID  %CPU PRI NI COMM
57081  77.6  12 10 cpu-chew
57080  77.1  12  0 cpu-chew
57085  76.9  12 15 cpu-chew
57082  76.9  12 13 cpu-chew
57083  76.7  12  0 cpu-chew
57031   0.0  31  0 -tcsh

그리고 좀 더 접선적인 것:

tropic: cat cpu-chew.c

#include <math.h>

int main() {
    double i=2;
    while (i != sqrt(i)) 
        ++i;
    }

달리는 limit모습은 이상하지 않았습니다.

관련 정보