Describe model-to-GPU execution pipeline

Read the full interview experience this question came from →

Quick Overview

Describe model-to-GPU execution pipeline evaluates ML product requirements, data/labeling, modeling, serving architecture, evaluation, monitoring, and trade-offs in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

Describe model-to-GPU execution pipeline

Company: NVIDIA

Role: Software Engineer

Category: ML System Design

Difficulty: medium

Interview Round: Technical Screen

Walk through the stages from defining a model to executing it on a GPU: the frontend representation, exporting to an intermediate graph (such as ONNX or a similar IR), compiling to device code, and runtime execution. Describe common compiler optimization techniques (for example, kernel fusion, quantization, and operator specialization), discuss their trade-offs, and contrast considerations for data-center versus edge hardware targets.

Overview: Describe model-to-GPU execution pipeline evaluates ML product requirements, data/labeling, modeling, serving architecture, evaluation, monitoring, and trade-offs in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

Read the full NVIDIA Software Engineer interview experience this question came from

NVIDIA logo
NVIDIA
Jul 31, 2025
mediumSoftware EngineerTechnical ScreenML System Design
9
0

Describe model-to-GPU execution pipeline

From Model Definition to GPU Execution: Pipeline and Optimizations

You are asked to explain the end-to-end path a machine learning model takes from authoring to high-performance inference on a GPU.

Task

Walk through the stages below and describe what happens at each step:

  1. Frontend representation
    • How a model is defined in a high-level framework (e.g., dynamic vs. static graphs, tracing vs. scripting).
  2. Export to an intermediate representation (IR)
    • Exporting to ONNX or a similar IR; making shapes/layouts explicit; simplifying the graph.
  3. Compilation to device code
    • Lowering from IR to kernel calls or device code; scheduling; autotuning; static vs. dynamic shapes.
  4. Runtime execution
    • Memory management, kernel launch, streams, batching, and handling dynamic inputs.

Then, discuss common compiler/runtime optimization techniques and their trade-offs, including:

  • Kernel/operator fusion
  • Quantization (e.g., INT8, FP16/FP8)
  • Operator specialization and autotuning
  • Layout and precision selection
  • Memory planning and graph partitioning

Finally, contrast considerations for data-center versus edge hardware targets:

  • Throughput vs. latency priorities
  • Batch size, power/thermal limits, memory budgets
  • JIT vs. AOT, startup time, binary size, determinism

Assume a modern GPU software stack with an IR (e.g., ONNX/MLIR/Relay/XLA), a compiler/runtime (e.g., ONNX Runtime, vendor-specific runtimes), and access to common math libraries (e.g., BLAS/DNN). Keep your explanation structured and concise.

Clarifying Questions to Ask Guidance

  • Clarify users, core use cases, read/write patterns, scale, latency, availability, and data retention.
  • State explicit assumptions before making sizing or architecture decisions.
  • Prioritize the functional path first, then address reliability, security, observability, and rollout.

What a Strong Answer Covers Guidance

  • A scoped requirements summary with concrete non-goals and success metrics.
  • ML-specific data, model, evaluation, serving, and monitoring choices.
  • Reasoned trade-offs among simple and scalable designs, including bottlenecks and failure modes.
  • A validation, monitoring, migration, and launch plan appropriate for the risk level.

Follow-up Questions Guidance

  • What breaks first at 10x traffic or data volume?
  • How would you degrade gracefully during dependency failures?
  • What metrics and alerts would prove the design is healthy after launch?