회수할 수 없는 AI 전송 버퍼로 인해 커널이 회수할 수 있는 메모리(파일 시스템 캐시 포함)에 대한 압박이 커지므로, 호스트 메모리를 고정해 사용하는 동안 ZFS ARC가 줄어듭니다.
GPU 런타임은 장치가 데이터를 전송하는 동안 해당 페이지가 이동하거나 스왑되지 않도록 호스트 페이지를 고정합니다. 이 방식은 DMA 예측 가능성을 높이지만, 사용 가능한 RAM이 줄어들 때 고정된 할당은 회수하기 어려운 대상입니다. Linux는 회수 및 축소기(shrinker)를 호출하고, ZFS는 캐시된 블록을 제거하거나 ARC 목표값을 낮춰 회수할 수 없는 할당에 더 많은 메모리를 남깁니다.
고정된 페이지는 커널이 회수할 수 있는 메모리를 바꿉니다
일반 익명 페이지는 스왑할 수 있고, 변경되지 않은 파일 캐시 페이지는 폐기할 수 있습니다. 장기간 고정된 페이지는 장치나 드라이버가 물리적 매핑에 의존하기 때문에 상주 상태로 유지되며, 새 할당을 충족하는 데 사용할 수 있는 유연한 메모리 풀이 줄어듭니다.
Linux의 장기간 페이지 고정 문서는 장기간 페이지 고정과 일반 참조를 구분하고, DMA 사용자가 페이지를 적절히 표시해야 하는 이유를 설명합니다. 이 메커니즘으로 인해 고정된 메모리는 커널이 쉽게 이동하거나 회수할 수 있는 프로세스 할당과 본질적으로 달라집니다.
AI 프레임워크는 더 빠른 호스트-장치 복사, 데이터 로더 큐, 오프로딩을 위해 고정된 스테이징 버퍼를 사용합니다. 여러 작업자나 지나치게 큰 프리페치 큐로 인해 겉으로 보이는 하나의 배치가 암시하는 것보다 훨씬 많은 호스트 메모리가 고정된 상태로 유지될 수 있습니다. 이 차이는 이후의 실제 가정 환경 테스트에서도 확인할 수 있습니다.
ARC는 설계상 대규모 회수 가능 메모리 사용자입니다
적응형 교체 캐시(ARC)는 저장 장치 읽기를 줄이기 위해 최근에 사용되었거나 자주 사용된 ZFS 블록을 유지합니다. Linux에서는 메모리 압박 처리에 참여하며, 시스템이 다른 곳에서 페이지를 필요로 할 때 상주 크기를 줄일 수 있습니다. 자동화가 이어지기 전에 중간 결과를 확인할 수 있어야 합니다.
OpenZFS의 ARC 크기 및 회수 문서는 ARC 크기 제어와 회수 관련 조정 가능 매개변수를 설명합니다. 설정된 최대값은 상한일 뿐, 메모리 압박 상황에서도 캐시된 데이터가 상주 상태로 유지된다는 보장은 아닙니다. 이 경계는 현실적인 운영 조건에서 별도로 측정해야 합니다.
고정된 버퍼가 늘어날 때 ARC 제거가 발생하는 것은 누수가 아니라 올바른 대응일 수 있습니다. 그 결과는 나중에 더 낮은 캐시 적중률, 더 많은 디스크 읽기, AI 작업이 끝난 뒤 캐시가 다시 채워질 때까지 느려진 파일 액세스로 나타납니다.
통합 메모리와 컨테이너 지표는 경쟁 관계를 숨길 수 있습니다
통합 GPU에서는 대시보드가 사용량을 다르게 표시하더라도 모델 텐서와 파일 시스템 캐시가 동일한 물리 RAM을 사용합니다. 외장 GPU에서는 호스트 스테이징 메모리가 VRAM과 분리되어 있지만, 서버에서는 여전히 ARC와 경쟁합니다.
Linux의 ARC 축소기 구현은 ARC 회수 동작을 커널 메모리 관리에 등록합니다. 소스 수준의 증거는 의도적인 캐시 축소와 애플리케이션이 ZFS에 블록 폐기를 직접 명령하는 상황을 구분하는 데 도움이 됩니다. 여러 원인이 제한된 컨텍스트를 두고 경쟁할 때 실제 결과가 나타납니다.
ARC가 줄어들 때마다 고정된 메모리가 원인이라고 가정하는 것이 실패의 경계입니다. 대규모 파일 스캔, 명시적인 ARC 제한, 메타데이터 압박, cgroup 회수, 가상 머신 증가 또는 정상적인 적응 동작도 동일한 그래프를 만들 수 있습니다. 고정 개수와 할당 시점을 확인하세요.
고정 바이트를 ARC 회수 및 캐시 미스와 연관 지어 확인하세요
고정된 AI 워크로드를 실행하면서 고정 또는 회수 불가능 메모리, MemAvailable, 회수 지연, ARC 크기와 목표값, ARC 적중률, ZFS 읽기, 고정 버퍼 풀 크기, 작업자 수, 배치 크기, VRAM, 요청 지연 시간을 기록하세요. AI를 사용하지 않는 스토리지 기준선도 포함하세요.
공유 호스트 메모리를 사용해 CPU, 메모리, 스토리지 증상을 구분하세요. 페이지 가능 전송, 더 작은 프리페치 깊이, 더 적은 작업자 수, 제한된 고정 풀을 사용해 반복하되, 실행마다 하나의 제어 항목만 변경하세요. 이 종속성은 최종 인터페이스에도 명시적으로 남아 있어야 합니다.
ARC 축소가 고정 메모리 증가와 함께 발생하고 더 작은 풀에서 완화된다면 고정을 원인으로 판단할 수 있습니다. 스토리지 미스가 다른 서비스에 피해를 준다면 풀의 상한을 설정하되, 가속기가 부족해지지 않도록 충분한 고정 메모리는 유지하세요. 적절한 균형은 동시 NAS 수요에 따라 달라집니다.
기술 및 AI 허브
더 읽어보기

SMB 파일 변경 사항은 왜 증분 인덱서에 몰아서 전달되나요?
SMB 쓰기 캐싱, 리스, CHANGE_NOTIFY, 버퍼 오버플로, 재연결 및 인덱서 배칭이 지속적인 편집을 어떻게 버스티한 수집 이벤트로 바꾸는지 확인해 보세요.

PDF를 재압축하면 OCR이 희미한 텍스트를 놓치는 이유는 무엇인가요?
PDF 재압축이 희미한 픽셀을 어떻게 변화시키는지, 뷰어가 손실을 숨길 수 있는 이유, 그리고 해상도, 대비, 코덱 및 OCR 전처리를 테스트하는 방법을 알아보세요.

홈 서버 팬 곡선에 따라 로컬 AI 지연 시간이 변동하는 이유는 무엇인가?
열, 팬 제어, 클록 제한, 센서 지연, 워크로드 타이밍이 주기적인 로컬 AI 지연을 어떻게 만들어 내는지, 그리고 그 관계를 입증하는 방법을 알아보세요.

