ionice -c2 -n7 <PID>
I/O 집약적인 프로세스(VirtualBox VM)에서 실행하고 결과를 확인하면 ionice -p <PID>
예상한 결과가 표시됩니다 best-effort: prio 7
.
하지만 이를 통해 전체 프로세스에 대한 전체 디스크 I/O를 모니터링하면 해당 프로세스 에 대한 값이 iotop
컬럼에 표시되는데 , 이는 의미가 있다고 생각합니다.PRIO
be/4
두번째동부 시간 -이자형노력과 수준(우선순위) 4, 이는 평균 우선순위이며 예상되지 않습니다.
ionice와 iotop 디스플레이 사이에 차이가 있는 이유에 대해 누군가 논평할 수 있습니까? 를 사용하는 것 외에 특정 프로세스의 실제 I/O 우선순위를 확인하는 다른 방법이 있습니까 ionice -p
?
내가 이해하는 한, /proc/<pid>/io
우선 순위가 아닌 읽고 쓴 바이트/문자만 표시됩니다.iotop 없이 I/O를 수행하는 프로세스 이해
반품프로세스의 IO 우선순위를 확인하는 방법은 무엇입니까?목록만ionice -p
완전성을 위해 이는 iotop 0.3.2가 포함된 RHEL 6.7에 있으며 스케줄러는 기본 CFQ입니다.
답변1
답의 일부를 찾은 것 같습니다. 기본적으로 iotop
모든 프로세스와 스레드가 표시됩니다. 저는 일반적으로 이것을 실행하며 iotop -o
I/O를 수행하는 스레드와 프로세스만 표시합니다. 표시된 VirtualBox 프로세스는 실제로 스레드이며 PID를 사용하여 be/4
실행하면 예상되는 내용 이 올바르게 표시됩니다 .iotop -p <pid>
ionice
be/7
프로세스의 한 스레드가 다른 I/O 클래스/우선순위를 갖는 이유를 이해하는 것은 여전히 흥미로울 것입니다. 그러나 내 ionice에는 -P
프로세스 그룹의 I/O 클래스/우선순위를 변경할 수 있는 옵션이 없습니다. 누구든지 해결 방법/솔루션을 알고 있다면 좋을 것입니다.