solvers.TransformationModel

solvers.TransformationModel()

Quantifies the CPU preprocessing bottleneck (Wall 9: Transformation).

This model simulates the ‘Transformation Wall’ — the gap between CPU-bound data preprocessing (JPEG decode, tokenization, augmentation) and accelerator step time. When preprocessing cannot keep up, the accelerator starves and utilization drops.

Literature Source: 1. Mohan et al. (2022), “Analyzing and Mitigating Data Bottlenecks in Deep Learning Training.” 2. Murray et al. (2021), “tf.data: A Machine Learning Data Processing Framework.” (Pipeline stall analysis.) 3. NVIDIA DALI Documentation (2024). (GPU-accelerated preprocessing.)

Methods

Name Description
solve Solves for CPU preprocessing bottleneck.

solve

solvers.TransformationModel.solve(
    batch_size,
    sample_size_bytes,
    cpu_throughput,
    accelerator_step_time,
)

Solves for CPU preprocessing bottleneck.

Parameters

Name Type Description Default
batch_size int Number of samples per batch. required
sample_size_bytes Quantity Size of one sample in bytes (e.g., Q_(“500 KB”)). required
cpu_throughput Quantity CPU preprocessing throughput (e.g., Q_(“2 GB/s”)). required
accelerator_step_time Quantity Time for one accelerator training step (e.g., Q_(“50 ms”)). required

Returns

Name Type Description
Dict[str, Any] Transform time, bottleneck status, and accelerator utilization.
Back to top