4.5 Storage performance

NCP-AIO · Troubleshooting and Optimization (23% of the exam) · Official objective: “Troubleshoot storage performance”

GDS compatibility mode, IOMMU, PCIe topology and benchmarking.

Key points

  1. cuFile is the GDS API. Compatibility mode works without the direct path but is slower.

    What NVIDIA says (1)

    “In the /etc/cufile.json file, verify that allow_compat_mode is set to true . gdscheck -p displays whether the allow_compat_mode property is set to true .”

    — GPUDirect Storage Troubleshooting Guide

  2. IOMMU (input-output memory management unit) translates device addresses. Here it forces a slower path.

    What NVIDIA says (2)

    “When the IOMMU setting is enabled, PCIe traffic will be routed through the CPU root ports.”

    — GPUDirect Storage Best Practices Guide

    “Before you install GDS, you must disable IOMMU.”

    — GPUDirect Storage Best Practices Guide

  3. Fewer hops between GPU and NIC means higher throughput for GDS.

    What NVIDIA says (1)

    “The optimal path between a GPU and NIC will be one PCIe switch path designated as PIX. The least optimal path is designated as SYS”

    — GPUDirect Storage Configuration and Benchmarking Guide

  4. Benchmark with several thread counts. The number of I/O threads strongly affects results.

    What NVIDIA says (1)

    “the number of processes/threads generating IO is critical to determining maximum performance. The gdsio tool provides for specifying random reads or random writes”

    — GPUDirect Storage Configuration and Benchmarking Guide

Key terms

Try it

Sample question

How do you check whether GDS is running in compatibility mode, where cuFile falls back to POSIX reads and writes?

Show the answer

Answer: Check allow_compat_mode in /etc/cufile.json; gdscheck -p shows it

cuFile is the GDS API. Compatibility mode works without the direct path but is slower.

What NVIDIA says (1)

“In the /etc/cufile.json file, verify that allow_compat_mode is set to true . gdscheck -p displays whether the allow_compat_mode property is set to true .”

— GPUDirect Storage Troubleshooting Guide

Practice 4.5 (4 questions) Full Troubleshooting and Optimization guide

← 4.4 Troubleshooting Magnum IO · 4.6 Troubleshooting NGC container deployment →