Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run ScanHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
FREEDOM251

Freedom251 › Blog › GPU training

How to Troubleshoot GPU Training Bottlenecks Caused by Network or Storage I/O

By Freedom251 Team · · 11 min read

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Find the wait before changing hardware or tuning workers. Capture a framework-aware trace, line up GPU kernels with data reads, host-to-device copies, remote-storage activity and distributed collectives, then change one stage and measure end-to-end step time. Low GPU utilization is a clue, not proof that storage or networking is the cause.

Start by locating the wait in the training step

A training step usually crosses several independent paths: a sample is read from local or remote storage, decoded and transformed on the CPU, copied into host memory, transferred to GPU memory, and consumed by model kernels. In multi-GPU jobs, ranks also exchange tensors through collective communication. A stall in any one path can leave a GPU idle, but the remedy depends on which path is actually delaying the next step.

As an Amazon Associate I earn from qualifying purchases.

Use a representative profiler interval rather than a single batch. Warm up the job first so startup, cache population and lazy initialization do not dominate the trace. Record enough consecutive steps to show normal variation, including a period in which the low utilization or slow throughput is visible.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What a useful trace should show

  • GPU kernel execution and idle gaps for every device.
  • CPU-side input work, including dataset reads, decoding, transforms and worker scheduling.
  • Host-to-device transfer activity and its relationship to the next GPU kernel.
  • Storage and network events, such as object-store transfers, filesystem reads or GPUDirect Storage cuFile calls.
  • Distributed communication intervals and rank progress when the job uses more than one GPU.

NVIDIA Nsight Systems can correlate GPU and CPU timelines and documents traces for S3 activity and GPUDirect Storage cuFile calls. An equivalent framework-aware profiler is suitable if it exposes the same relationships. The goal is not a prettier utilization graph; it is a timeline that answers, “What is the next operation waiting for?”

#1 Best Overall
Elebase USB to USB C Adapter for iPhone 18 Pro Max,USBC Car Charger Adapter | 4Pack Type C Female to A Male Cable Converter for Apple Duo 17 16 15 14 Plus,iWatch Watch 12 11 10,iPad 9 8 Air,Airpods 5 4
  • Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
  • Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
  • Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
  • Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
  • 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.

Understand the paths that can be mistaken for one another

Input reading and preprocessing

A worker may be waiting on a filesystem, object store or network share, or it may be busy parsing, decompressing and augmenting data. In both cases the GPU can show an idle gap before the next batch is ready. Increasing worker count helps only when workers are the limiting resource; it cannot fix a slow source, CPU saturation or a blocked shared-memory transfer.

Host-to-device transfer

The conventional route is storage to host memory followed by a host-to-device copy. NVIDIA describes this two-stage movement in its data-path guidance. Consequently, a fast storage device does not automatically make the complete input path fast: CPU copies, pinned-memory behavior and transfer scheduling can still delay the kernel launch.

Remote or object storage

Object and network storage add request latency, variable throughput and possible contention at the source or network interface. A trace can show whether transfers overlap computation or whether a rank waits for a remote read before it can produce the next batch. Repeat reads may be served by a cache, so measure both cold and warm behavior when the workload has a meaningful cache.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Inter-GPU distributed communication

Collective operations can look like storage stalls when one rank reaches a synchronization point late. For CUDA multi-GPU training, PyTorch recommends the NCCL backend. If NCCL chooses the wrong network interface, PyTorch documents NCCL_SOCKET_IFNAME as an override. Check rank timelines and network counters before blaming the dataset path.

Step 1: Establish whether I/O is on the critical path

The central test is simple: does the I/O delay the operation that determines when the training step finishes? NVIDIA’s GPUDirect Storage Design Guide states, “For IO to be a bottleneck, it must be on the critical path.” If computation takes substantially longer than I/O, or asynchronous I/O completely overlaps computation, faster storage may produce no measurable step-time improvement.

Rank #2
Anker USB-C Hub, 5-in-1 USB Hub for Laptops, 4K HDMI Multiport Adapter | USB C Dongle with 90W Max Power Delivery, 3×5Gbps USB A Data Ports, for MacBook, Dell, and More (Charger Not Included)
  • 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
  • 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
  • Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
  • 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
  • What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.

Read the timeline in dependency order

  1. Find the end of a completed training step and the first kernel of the next one.
  2. Identify the interval in which the next batch is being prepared.
  3. Check whether a read, decode, copy or collective occupies that interval, rather than merely occurring somewhere in parallel.
  4. Compare the same dependency across several steps and ranks.

An isolated read that runs while the GPU is computing is activity, not necessarily a bottleneck. Conversely, a short but serialized read can matter if it sits immediately before a long chain of kernels.

Use step time as the deciding metric

Record end-to-end step time, samples or tokens processed per second, and the distribution of step times. Also record GPU busy time, input-worker time, transfer time and communication time. A change is useful only if it reduces the end-to-end metric without changing the model, batch, precision or workload in a way that invalidates the comparison.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Step 2: Run a controlled input-path experiment

Separate data delivery from model compute by feeding already available batches or synthetic batches while keeping the relevant model and batch settings constant. This is a diagnostic experiment, not proof that one particular component is responsible.

  1. Warm up the normal run and capture a representative interval.
  2. Run the same training configuration with batches supplied from an immediately available source, such as preloaded or synthetic data.
  3. Keep batch size, sequence length, precision, gradient accumulation, number of ranks and optimizer settings unchanged.
  4. Compare end-to-end step time and the GPU idle gaps.
  5. If the controlled run is faster, return to the normal path and divide it into dataset reads, transforms, worker hand-off and host-to-device transfer.

A faster synthetic run establishes that the input path participates in the delay; it does not identify whether storage, CPU preprocessing, worker scheduling or copying is responsible. If both runs are similar, investigate model kernels, synchronization, memory pressure or distributed communication before changing storage.

Step 3: Inspect PyTorch DataLoader behavior

In PyTorch, review how workers produce and share batches instead of assuming a universal worker count. The DataLoader tutorial discusses multiprocessing tensor-sharing strategies, file-descriptor limits and /dev/shm requirements. These resources can throttle delivery even when the underlying disk or network is fast.

Rank #3
Sale
Anker USB C Hub, 7in1 Multi-Port USB Adapter, 4K@60Hz USBC to HDMI Splitter | 85W Max PD, 2 USB 3.0 & 1 USBC Data Ports, SD/TF Card Reader, for Laptops/Mac and Other Type C Devices (Charger Not Included)
  • Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
  • Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
  • Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
  • Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
  • What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.

Change one worker setting at a time

  1. Measure the baseline with the current worker count and sharing strategy.
  2. Increase or decrease the worker count incrementally while watching CPU utilization, queue depth, step time and memory use.
  3. Check for worker restarts, blocked queues, file-descriptor exhaustion and shared-memory errors.
  4. Test the documented tensor-sharing strategy that matches the host’s resource limits.
  5. Repeat the representative trace after each change.

More workers can increase contention for CPU cores, memory bandwidth, file descriptors or the source filesystem. Fewer workers can expose preprocessing cost that was previously hidden. The documentation does not establish one worker count that is correct for every dataset or host.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recognize resource-limit symptoms

  • Workers stop producing batches while CPU utilization is unexpectedly low: inspect queue coordination and shared-memory behavior.
  • Worker processes fail or hang when batches are large: inspect /dev/shm capacity and multiprocessing sharing configuration.
  • Reads are fast in a single-worker test but slow with many workers: inspect source contention, file-descriptor limits and CPU oversubscription.
  • GPU copies wait for batches even though workers are active: separate preprocessing time from host-to-device transfer time in the trace.

Step 4: Separate remote storage from distributed networking

A remote read and an NCCL collective can use related network infrastructure but are different causes. Measure them independently.

For object or network storage

  • Inspect request latency and throughput at the client and source.
  • Correlate transfer intervals with the moment a batch becomes available.
  • Compare cold-cache and warm-cache runs when repeat reads are expected.
  • Look for source-side throttling, connection limits or contention from other jobs.

Nsight Systems’ documented S3 activity tracing can help place object-store transfers on the same timeline as GPU work. A network counter showing traffic is not enough; the transfer must delay the dependent step.

For NCCL communication

  1. Confirm that the job uses the NCCL backend recommended by PyTorch for CUDA multi-GPU training.
  2. Compare progress across ranks. A late rank can make other GPUs wait at a collective.
  3. Check which network interface NCCL selected and whether it is the intended path for the cluster topology.
  4. If interface selection is wrong, set NCCL_SOCKET_IFNAME to the appropriate interface as documented by PyTorch, then rerun the same workload.
  5. Compare collective duration and end-to-end step time, not only aggregate network bandwidth.

Do not switch collective backends merely because storage reads are slow. Likewise, do not move a dataset to faster storage until rank timelines show that communication is not the stage holding the step.

Step 5: Compare the existing path with a local cache

A controlled local-cache test is often the clearest way to evaluate remote-storage impact. Copy the same working set to local NVMe storage where feasible, then run the identical job against that path. Keep file format, shuffling, worker configuration and batch settings unchanged.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Sale
UGREEN USB to USB C Adapter Combo 4-Pack, 10Gbps USB C Converter Space Gray | Data transfer & Fast charging for MacBook, iPhone 17/16/15, iPad, Samsung Galaxy, Apple Watch
  • Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
  • Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
  • Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
  • Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
  • Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft

Measure the comparison correctly

  • Use the same number of steps and the same data order when practical.
  • Record whether each run is cold or warm; do not compare a cold remote run with a warm local run without labeling the difference.
  • Measure read latency, sustained throughput, cache-hit behavior and end-to-end step time.
  • Watch CPU preprocessing and host-to-device copies so a faster read does not simply move the bottleneck downstream.

NVIDIA guidance emphasizes that storage requirements depend on workload and access pattern. Local NVMe and caching are options to test against a measured delay, not universal fixes. A local path can also expose a new limit, such as CPU decode time or PCIe transfer contention.

Interpret a negative result

If local NVMe produces little or no step-time improvement, the remote path may already be overlapped, the workload may be CPU-bound, or distributed communication may dominate. Keep the trace: it documents why additional storage spending is unlikely to help this configuration.

Step 6: Evaluate GPUDirect Storage only when the path qualifies

GPUDirect Storage (GDS) can change the movement path between supported storage and GPU memory, but eligibility and workload shape matter. NVIDIA’s design guidance says the I/O must be significant and on the critical path. It also notes that workloads requiring CPU parsing or processing before or after transfer may not benefit, because the data still has to pass through CPU-side work.

Check prerequisites before benchmarking

  • The application must use a supported API and access pattern.
  • The GPU, filesystem, storage device and platform must support the required GDS path.
  • The installation and cuFile configuration must be valid.
  • The workload must expose enough serialized I/O for a shorter transfer path to affect step time.

Use a profiler trace to verify that cuFile operations occur where expected. A successful API call alone does not demonstrate a training benefit. Compare the same end-to-end workload with and without GDS, and include CPU preprocessing and synchronization in the measurement.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How to choose among practical remedies

Remedy to test Best evidence for testing it Important constraints Success measure
DataLoader worker or sharing-strategy change Worker queues, preprocessing or shared-memory intervals delay batch availability CPU cores, file descriptors and /dev/shm can become limiting resources Lower input wait and shorter end-to-end steps
Local cache or local NVMe Remote reads sit on the critical path and warm-cache behavior is relevant Storage requirements depend on access pattern; CPU work and copies may remain Improved read latency or throughput accompanied by lower step time
NCCL interface correction Ranks stall in collectives and NCCL selected an unsuitable interface Applies to distributed communication, not dataset-read latency Shorter collective intervals and improved rank synchronization
GPUDirect Storage Supported cuFile operations are significant, serialized and critical Application, GPU, filesystem, platform and processing path must be eligible Lower transfer contribution to end-to-end step time
Remote-storage or object-store tuning Trace shows request latency or source throughput delaying batches Cache hits, file sizes, source limits and network topology affect results Fewer or shorter input stalls at the same workload settings
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Use symptoms to choose the next measurement

GPU utilization is low, but input events overlap compute

Do not label storage the bottleneck from utilization alone. Verify kernel launch gaps, model synchronization and communication. If reads and copies finish before the next dependency, storage is active but not limiting.

Best Value
Anker USB C Hub, 5-in-1 USBC to HDMI Splitter with 4K Display | 85W Max PD, 1 Powered USB-C 5Gbps & 2 Powered USB-A 3.0 5Gbps Data Ports, for MacBook Pro, MacBook Air, Dell and More (Black)
  • 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
  • Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
  • Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
  • HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
  • What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.

All GPUs pause together before a new batch

Inspect the input queue, worker timelines and the source read for the rank that supplies the delayed batch. A shared remote path or synchronized data pipeline can make one input delay visible on every device.

One rank is late at every collective

Compare per-rank progress and NCCL network activity. Check interface selection and topology before changing dataset storage. A single slow rank can hold otherwise healthy GPUs at a collective boundary.

Reads are fast, but host-to-device copies are long

The storage device is not the complete path. Examine host buffering, pinned-memory behavior, copy concurrency and whether CPU preprocessing finishes before the transfer. The conventional storage-to-host-to-GPU route can expose a copy bottleneck after storage has been improved.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Throughput improves only on repeated runs

Label cache state explicitly. A warm cache may hide remote latency that will return after eviction, restart or a new data shard. Evaluate the cache-hit pattern that matches production rather than treating the warm result as a universal guarantee.

Numbers that need careful qualification

NVIDIA reported 13.3 GB/s of local NVMe I/O bandwidth in a 2019 experiment and about a 10% performance improvement relative to the stated 12.0 GB/s CPU-to-GPU memory transfer rate in that experiment. Those are historical, experiment-specific observations, not a current expected throughput or a general training-speed promise.

NVIDIA’s SuperPOD material describes a configuration-specific requirement of 4 GBps per GPU for its stated workloads. That figure is not a universal storage target. Your required throughput depends on sample size, access pattern, parallelism, preprocessing, cache behavior and how much I/O overlaps computation.

A repeatable experiment protocol

  1. Define the workload: model version, batch settings, number of GPUs, data split, precision and step-count window.
  2. Capture a warmed, representative trace that includes GPU, CPU, transfer, storage and communication timelines.
  3. Mark the dependency that delays the next training step and record its duration.
  4. Run one controlled variant, such as synthetic batches, a local cache, a worker-count change or an interface correction.
  5. Keep every unrelated setting fixed and record cache state and rank configuration.
  6. Compare end-to-end step-time distribution, not only peak GPU utilization or a device-level bandwidth counter.
  7. Keep the change only if it improves the production-relevant metric and does not create a new downstream stall.

After each experiment, restore the baseline before testing the next variable. This prevents two simultaneous changes from producing an improvement that cannot be attributed or a regression whose cause is unclear.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Common mistakes to avoid

  • Tuning to a utilization target: there is no universal GPU-utilization percentage that proves an I/O problem is fixed.
  • Buying faster storage first: storage matters only when its delay is on the critical path.
  • Counting bandwidth without latency: small-file or request-heavy workloads can be limited by latency even when aggregate bandwidth looks high.
  • Ignoring CPU work: parsing, decompression and augmentation can dominate after reads are accelerated.
  • Changing many variables at once: worker count, cache location, file format and communication settings must be tested separately.
  • Assuming GDS bypasses every bottleneck: CPU-required processing and unsupported platform components can prevent a useful end-to-end gain.
  • Confusing storage traffic with collectives: rank progress and NCCL interface selection distinguish the two paths.

Bottom line

Treat GPU underutilization as an invitation to trace the pipeline, not as a diagnosis. Prove that reads, preprocessing, copies, remote transfers or collectives delay the critical path; isolate the stage with a controlled run; then test one remedy and judge it by end-to-end step time. DataLoader limits, a local cache, corrected NCCL interface selection and GPUDirect Storage can each be appropriate, but only when the measured workload and platform make that stage the reason training is waiting.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

GPU trainingGPUDirect StorageI/O bottlenecksNCCLnetwork storageNVIDIA Nsight Systemsperformance troubleshootingPyTorch DataLoader

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Crashes, No Sound, or Screen Glitches?Free driver scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.