18장. 디스크 스케줄러 설정
디스크 스케줄러는 스토리지 장치에 제출된 I/O 요청을 주문합니다.
여러 가지 방법으로 스케줄러를 구성할 수 있습니다.
Red Hat Enterprise Linux 8에서 블록 장치는 다중 대기열 스케줄링만 지원합니다. 이를 통해 솔리드 스테이트 드라이브(SSD) 및 멀티 코어 시스템으로 블록 계층 성능을 확장할 수 있습니다.
Red Hat Enterprise Linux 7 및 이전 버전에서 사용할 수 있는 기존의 단일 대기열 스케줄러가 제거되었습니다.
18.1. 사용 가능한 디스크 스케줄러 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Enterprise Linux 8에서는 다음과 같은 멀티 큐 디스크 스케줄러가 지원됩니다.
none- FIFO(선입선출) 스케줄링 알고리즘을 구현합니다. 간단한 마지막 캐시를 통해 일반 블록 계층의 요청을 병합합니다.
mq-deadline요청이 스케줄러에 도달하는 시점의 요청에 대해 보장된 대기 시간을 제공합니다.
mq-deadline스케줄러는 대기 중인 I/O 요청을 읽기 또는 쓰기 배치로 정렬한 다음, 논리 블록 주소 지정(LBA) 순서를 늘리도록 실행하도록 예약합니다. 애플리케이션이 읽기 I/O 작업에서 차단될 가능성이 높기 때문에 기본적으로 읽기 배치는 쓰기 배치보다 우선합니다.mq-deadline이 배치를 처리한 후 쓰기 작업이 프로세서 시간이 지난 시간을 확인하고 다음 읽기 또는 쓰기 배치를 적절하게 예약합니다.이 스케줄러는 대부분의 사용 사례에 적합하지만 특히 쓰기 작업이 주로 비동기식으로 사용됩니다.
bfq데스크탑 시스템 및 대화형 작업을 대상으로 합니다.
bfq스케줄러는 단일 애플리케이션이 모든 대역폭을 사용하지 않도록 합니다. 결과적으로 스토리지 장치는 항상 유휴 상태인 것처럼 반응합니다. 기본 구성에서bfq는 최대 처리량을 달성하는 대신 가장 낮은 대기 시간을 전달하는 데 중점을 둡니다.BFQ는cfq코드를 기반으로 합니다. 고정 시간 슬라이스의 각 프로세스에 대해 디스크를 부여하지 않지만 섹터 수에서 측정된 예산을 프로세스에 할당합니다.이 스케줄러는 대용량 파일을 복사하는 동안 적합하며 이 경우 시스템이 응답하지 않습니다.
kyber스케줄러는 블록 I/O 계층에 제출된 모든 I/O 요청 대기 시간을 계산하여 대기 시간 목표를 달성하도록 자체적으로 조정합니다. 캐시 누락 및 동기 쓰기 요청의 경우 읽기, 에 대한 대상 대기 시간을 구성할 수 있습니다.
이 스케줄러는 NVMe, SSD 또는 기타 짧은 대기 시간이 짧은 장치 등 빠른 장치에 적합합니다.