애플의 libibverbs가 GPUDirect RDMA 심볼을 숨김; macOS에서 제로 카피 메탈 버퍼 RDMA 작동

✍️ OpenClawRadar📅 게시일: May 6, 2026🔗 Source
애플의 libibverbs가 GPUDirect RDMA 심볼을 숨김; macOS에서 제로 카피 메탈 버퍼 RDMA 작동
Ad

TinyGPU 조사에 대한 후속 글에서 Apple의 RDMA 구현이 Metal GPU 버퍼와의 제로카피 메모리 공유를 지원하며, 숨겨진 심볼은 문서화되지 않은 이전에 알려지지 않은 GPUDirect RDMA 지원 가능성을 나타냅니다.

주요 발견 사항

개발자는 4노드 Mac 클러스터(3x M3 Ultra + M5 Max MacBook Pro, 약 1.5TB 통합 메모리, Thunderbolt 5)에서 다양한 메모리 유형으로 ibv_reg_mr()을 테스트했습니다. 결과:

  • malloc() — 실패 (예상치 못함; Linux에서는 작동)
  • posix_memalign() — 실패 (예상치 못함)
  • mmap(MAP_ANON) — 통과 (예상됨)
  • IOSurfaceGetBaseAddress() — 통과 (문서 없음)
  • MTLBuffer.contents (Metal 공유) — 통과 (문서 없음)

Apple의 RDMA는 물리적 백킹이 아닌 VM 매핑 유형을 검증합니다. 힙 할당은 실패하고, VM 매핑 메모리(mmap, IOSurface, Metal 버퍼)는 통과합니다. 이는 Linux와의 주요 차이점입니다.

제로카피 입증

64MB mmap 버퍼가 RDMA 메모리 영역, Metal GPU 버퍼, IOSurface로 삼중 등록되었습니다. 모든 등록이 동일한 lkey=0x101로 성공하여 GPU와 네트워크 간 제로카피 공유가 확인되었습니다.

Ad

숨겨진 GPUDirect RDMA 심볼

nm -a를 통한 Apple의 libibverbs.dylib 분석 결과, Linux에서 GPUDirect RDMA를 활성화하는 ibv_reg_dmabuf_mr을 포함한 문서화되지 않은 심볼이 발견되었습니다. 이는 Apple이 이미 커널 수준의 배관을 구현했지만 API가 공개적으로 노출되지 않았음을 시사합니다.

Blackwell eGPU 상태

Razer Core X V2의 RTX PRO 5000 Blackwell 72GB가 감지되었으며(PCIe 링크 업, x4 @ 16 GT/s, 80 Gb/s TB5), TinyGPU의 DriverKit 확장이 로드됩니다. 그러나 NVIDIA의 GSP 펌웨어는 RuntimeError: RPC call 4097 failed with result 101로 실패합니다. NOCAT 오류 디코딩 결과 FBFLCN UNRECOGNIZED_CLIENT가 표시됩니다. GPU의 메모리 패브릭이 TB5를 통한 PCIe 피어를 인식하지 못합니다. 이는 알려진 문제입니다(tinygrad#15843). AMD GPU는 정상 작동합니다. 개발자는 tinygrad 팀과 협력하여 TB5를 통한 GSP 펌웨어 초기화 문제를 해결하기를 요청합니다.

대상 독자

macOS GPU 컴퓨팅, RDMA 또는 eGPU 인프라를 작업하는 개발자, 특히 분산 추론이나 훈련을 위한 제로카피 데이터 경로에 관심이 있는 분들.

📖 전체 출처 읽기: r/LocalLLaMA

Ad

👀 See Also