Nice/renice는 어떻게 작동해야 하나요? 제가 잘못 이해한 걸까요?

Nice/renice는 어떻게 작동해야 하나요? 제가 잘못 이해한 걸까요?

저는 12코어 Macbook Pro에서 매우 CPU 집약적인(메모리나 I/O 집약적이지 않은) 두 가지 작업을 실행하고 있습니다. 이로 인해 컴퓨터를 다른 작업에 사용할 수 없게 됩니다. 그래서 해당 프로세스를 20으로 재할당하고 Firefox를 -1(다른 모든 프로세스는 0 이하)로 설정했지만 Firefox는 여전히 매우 느립니다. Firefox가 실행 중인 모든 프로세스 중 가장 낮은 Nice 값을 가지면 필요한 모든 CPU 시간을 확보해야 하지 않나요?

답변1

나이스 번호를 바꾸신 방향으로 봐서는 이해가 잘 되실 것 같습니다.

그러나 nice는 대기 시간 문제를 해결하지 못하며 문제를 일으킬 수 있는 인식할 수 없는 다른 병목 현상(예: 과도한 작업 부하가 발생하지 않는 것 같더라도 디스크 I/O)이 있을 수 있습니다.

일부 Unix는 CPU 사용량보다 낮은 대기 시간을 우선시하고 작업에 더 적은 CPU를 제공할 수 있지만 우선 순위가 높은 버스트를 제공하는 대화형 스케줄링 알고리즘을 지원합니다. 일부는 이를 "실시간" 우선순위 지정이라고 부릅니다. MacOS가 이 기능을 지원하는지 모르겠고 MacOS GUI에서 이를 조정할 수 있는 방법도 본 적이 없습니다.

관련 정보