Files
cs249r_book/mlsysim/docs/api/solvers.TransformationModel.qmd
2026-05-31 15:05:17 -04:00

54 lines
2.1 KiB
Plaintext

# solvers.TransformationModel { #mlsysim.solvers.TransformationModel }
```python
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](#mlsysim.solvers.TransformationModel.solve) | Solves for CPU preprocessing bottleneck. |
### solve { #mlsysim.solvers.TransformationModel.solve }
```python
solvers.TransformationModel.solve(
batch_size,
sample_size_bytes,
cpu_throughput,
accelerator_step_time,
)
```
Solves for CPU preprocessing bottleneck.
#### Parameters {.doc-section .doc-section-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 {.doc-section .doc-section-returns}
| Name | Type | Description |
|--------|------------------|-----------------------------------------------------------------|
| | Dict\[str, Any\] | Transform time, bottleneck status, and accelerator utilization. |