MLS-C01 Practice Question: Machine Learning Implementation and Operations
A company is using Amazon SageMaker to train a deep learning model. The training job uses a script that reads data from Amazon S3 using the SageMaker SDK's `s3_input` method. The training job runs on a single ml.p3.2xlarge instance. The data scientist notices that the GPU utilization is very low during training, often below 20%. The training dataset is large, approximately 50 GB, stored as TFRecord files in S3. What is the MOST likely cause of low GPU utilization?
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
The data loading pipeline is not optimized, causing the GPU to wait for data.
Low GPU utilization typically indicates that the GPU is waiting for data, which is a classic symptom of a data loading bottleneck. With a large 50 GB TFRecord dataset and a single ml.p3.2xlarge instance, the default SageMaker SDK's s3_input method may not be optimized for high throughput. To fully utilize the GPU, techniques such as using Pipe mode, prefetching, parallel data extraction, and using a data loader like TensorFlow's tf.data API with interleave and prefetch are recommended. Option B correctly identifies this bottleneck. Option A is incorrect because a CPU-only version of TensorFlow would not run on a GPU at all. Option C is incorrect because a batch size that is too large causes out-of-memory errors, not low utilization. Option D is incorrect because ml.p3.2xlarge has 8 GB of GPU memory, which is suitable for many models; low memory would cause failures rather than low utilization.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
The training script is using a CPU-only version of TensorFlow.
Why it's wrong here
Wrong: GPU utilization is low, not zero; the GPU is being used but not fully.
- ✓
The data loading pipeline is not optimized, causing the GPU to wait for data.
Why this is correct
Correct: Inefficient data loading leads to GPU starvation.
- ✗
The batch size is too large, causing the GPU to run out of memory.
Why it's wrong here
Wrong: Out-of-memory would cause errors, not low utilization.
- ✗
The instance type does not have enough GPU memory for the model.
Why it's wrong here
Wrong: If memory were insufficient, training would fail or swap.
Quick reference
AWS S3 Storage Class Comparison
| Storage Class | Min Duration | Retrieval | Use Case |
|---|---|---|---|
| S3 Standard | None | Immediate | Frequently accessed data |
| S3 Standard-IA | 30 days | Immediate | Infrequent access, rapid retrieval |
| S3 One Zone-IA | 30 days | Immediate | Non-critical infrequent data |
| S3 Intelligent-Tiering | None | Immediate–hours | Unknown or changing access patterns |
| S3 Glacier Instant | 90 days | Milliseconds | Archive with instant retrieval |
| S3 Glacier Flexible | 90 days | Minutes–hours | Archive, flexible retrieval |
| S3 Glacier Deep Archive | 180 days | Hours | Long-term compliance archive |
Go deeper
Related to this question
About these practice questions
This MLS-C01 question is part of Courseiva's 1,672-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This MLS-C01 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the MLS-C01 exam.