Blu-ray 레코더는 UDF에 대한 높은 I/O 대기 상태를 가지고 있습니다. 최적화가 가능합니까?

Blu-ray 레코더는 UDF에 대한 높은 I/O 대기 상태를 가지고 있습니다. 최적화가 가능합니까?

최근 홈 네트워크의 규모를 축소했는데 가장 큰 변화 중 하나는 백업을 위해 BD-RE 드라이브로 전환한 것입니다. 수년간의 사진과 홈 비디오는 약 25GB를 소비하고 [중요] 문서는 10GB 미만이므로 이는 좋은 접근 방법인 것 같습니다.

모든 것이 완벽했고 유일한 걱정은 비용이었습니다. UDF 형식의 디스크와 rsync파일 시스템에서 선택한 경로를 드라이브에 동기화하기 위해 야간에 실행되는 스크립트가 있습니다.

동기화하는 동안 내 CPU는 약 25%의 대기 시간을 표시합니다. 그렇게 나쁘지는 않겠지만 오랫동안 이 수준에 머물게 될 것이고, 그 과정에서 모든 것이 느려질 것입니다. 심지어 로드 평균이 15.9+(Core 2 Quad에서)까지 치솟는 것을 관찰했습니다. 이 기간 동안의 "실제" CPU 사용률은 약 6%(모든 VM 결합)에 불과하므로 이는 엄밀히 말하면 I/O 병목 현상입니다.

특히 Blu-ray 레코더(Linux에서)에 대한 문서는 다른 콘텐츠에 비해 드물고 심층 분석을 보장할 만큼 높은 I/O 병목 현상을 겪은 적이 없습니다. 2배속(~9MB/s)으로 구운 드라이브를 고려하면 약 1시간 안에 완료되어야 하지만 실제로는 여러 시간 동안 실행되었습니다.

대기 상태를 줄이기 위해 이를 최적화할 수 있는 방법이 있습니까? 커널 드라이버/하드웨어/에 의해서만 제한됩니까? ? ? 이것은 내가 모르는 UDF 사용의 불쾌한 부작용입니까? 이는 NFS를 사용하여 3개의 VM(2개의 Windows 및 1개의 MythTV)을 실행하는 것과 이 프로세스와 관련이 있습니까? 문제가 퍼즐의 어느 부분에 있는지 확인할 수 있는 방법이 있나요?

마지막 질문에 대해 사과드립니다. 어떤 도움이라도 대단히 감사하겠습니다.

편집하다:psusi의 답변을 받은 후 장치별로 I/O 우선 순위를 지정할 수 있는 방법이 있다는 생각이 들었습니다. "XXX PCI 카드에 대해 1MB/s 보장" 또는 "XXX 블록 장치를 20MB/s로 제한"과 같은 것이 있습니까? ? ?

답변1

대기 시간은 정상입니다. 대기 중이란 CPU가 사용 중이 아니라는 것을 의미하지만, 프로그램(rsync)이 디스크 IO(느린 블루레이에 쓰기)를 기다리지 않는 경우 사용 중일 수 있습니다. 4개의 CPU가 있고 rsync가 디스크에서 대기하지 않는 경우 그 중 하나만 사용할 수 있기 때문에 25%입니다(1/4 = 25%).

전체적으로 낮은 처리량은 rsync가 먼저 디스크에서 파일을 읽고, 체크섬을 계산하고, 하드 드라이브에서 파일을 읽고, 비교하고, 변경된 내용을 찾은 다음 변경된 부분을 작성해야 하기 때문입니다. 독서에 소비하는 모든 시간은 속도를 늦춥니다.

rsync실제로 목적은 읽기/쓰기 마운트된 udf 디스크가 아니라 느린 네트워크를 통해 두 개의 빠른 하드 드라이브 간에 데이터를 이동하는 것입니다. .tar

관련 정보