CFQ 스케줄러는 5.0 커널에서 제거되었으므로 Kubuntu 19.04에서는 선택할 수 없습니다. 제 경우에는 Windows 10을 게스트로 사용하여 가상 머신을 실행할 때 회전하는 하드 드라이브로 최고의 성능을 제공하기 때문에 CFQ가 필요합니다. SO, 다른 스케줄러로 인해 시스템을 사용할 수 없게 됩니다. 설치 시 Kubuntu 19.04는 기본적으로 2개의 엘리베이터 mq-deadline만 제공하며 제 경우에는 CFQ보다 훨씬 나쁜 성능을 제공하는 것은 없습니다.
sudo cat/sys/block/sda/queue/scheduler mq-deadline none
기본적으로 설치에 나타나지 않는 2개의 다른 스케줄러를 사용해 보아야 합니다. 이 스케줄러는 BFQ와 Kyber입니다.
다음으로 BFQ 및 Kyber 모듈을 활성화하는 방법을 설명하겠습니다.
1) 먼저 다음 명령을 사용하여 모듈이 시스템에 존재하는지 확인하십시오.
sudo modprobe bfq sudo modprobe kyber-iosched
오류가 없으면 다음 명령을 사용하여 모듈이 로드되었는지 확인할 수 있습니다.
sudo cat/sys/block/sda/queue/scheduler
반환해야 하는 것
mq-deadline [bfq] kyber none
2) 시스템 시작과 함께 다음 모듈을 로드합니다.
sudo -i echo kyber-iosched > /etc/modules-load.d/kyber-oisched.conf echo bfq > /etc/modules-load.d/bfq.conf
3) 다음 단계는 사용할 스케줄러를 시스템에 알려주는 것입니다. 파일이 없으면 파일이 생성됩니다.
/etc/udev/rules.d/60-scheduler.rules
다음 줄로
# set cfq scheduler
ACTION=="add|change",KERNEL=="sd[a-z]",ATTR{queue/rotational}=="1",ATTR{queue/scheduler}="bfq"
ACTION=="add|change",KERNEL=="sr[0-9]",ATTR{queue/rotational}=="1",ATTR{queue/scheduler}="bfq"
BFQ 대신 kyber를 사용해보고 싶다면 "bfq"라고 적힌 줄의 마지막 단어를 "kyber"로 바꾸세요.
4) 시스템이 변경 사항을 인식하도록 만듭니다.
sudo udevadm 제어 --reload; sudo udevadm 트리거
변경 사항은 다음을 통해 확인됩니다.
sudo cat/sys/block/sda/queue/scheduler
mq-deadline kyber [bfq] none
완성된.
출처:
https://community.chakralinux.org/t/how-to-enable-the-bfq-io-scheduler-on-kernel-4-12/6418
https://unix.stackexchange.com/questions/375600/how-to-enable-and-use-the-bfq-scheduler#376136
답변1
커널 버전에 따라 CFQ가 사라질 수 있습니다. 커널 5.0부터 제거되었습니다. 이것이관련 커밋 그룹.
답변2
Ubuntu 19.04는 5.0 커널을 사용하므로 CFQ 및 Deadline을 더 이상 사용할 수 없습니다.
심지어 HDD에서도 대부분의 워크로드의 경우 mq-deadline 스케줄러를 사용하는 것은 기존 스케줄러를 사용하는 것만큼 효율적입니다. 다른 간섭 없이 순차 디스크 읽기/쓰기만 있는 워크로드의 경우에만 기존 스케줄러가 더 빠릅니다.
답변3
일반 회전식 하드 디스크가 있는 레거시 노트북에서 BFQ는 다른 작업이 백그라운드에서 디스크에 액세스하는 동안 반응하는 시스템을 갖추는 데 필수적입니다. 이전에는 Ubuntu 일반 커널에서 cfq를 사용했습니다.
$ zgrep IOSCHED /boot/config-*-generic
...
/boot/config-4.13.0-36-generic:CONFIG_DEFAULT_IOSCHED="cfq"
업그레이드 후 기본 Ubuntu 커널에서 CFQ가 제거되었으며(위 참조) 다음 기본값을 찾았습니다.
$ cat /sys/block/sda/queue/scheduler
[mq-deadline] none
백그라운드 디스크 활동이 있을 때 극심한 지연으로 인해 허용되지 않습니다. SDD/NVMe 대용량 스토리지를 갖춘 최신 하드웨어에서는 이것이 문제가 훨씬 덜하다고 생각합니다.
OP가 말했듯이 bfq로 전환하면 지연 문제가 해결됩니다.
마르코 감베로니