<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Gpu on François Duthilleul</title><link>https://testdev.ovh/tags/gpu/</link><description>Recent content in Gpu on François Duthilleul</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>© 2026 François Duthilleul</copyright><atom:link href="https://testdev.ovh/tags/gpu/index.xml" rel="self" type="application/rss+xml"/><item><title>Confidential GPU</title><link>https://testdev.ovh/security/confidential-gpu/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/security/confidential-gpu/</guid><description>&lt;p&gt;A &lt;strong&gt;Confidential GPU&lt;/strong&gt; is a GPU whose memory, computation state, and data transfers are hardware-encrypted and isolated from the host system — extending the Trusted Execution Environment (TEE) boundary that technologies like TDX and SEV-SNP provide at the CPU level to encompass the GPU accelerator as well. Without that extension, a GPU sits outside the CPU TEE: it cannot read TEE memory, and any data offloaded to it would leave the confidential boundary. The primary implementation today is &lt;strong&gt;NVIDIA Confidential Computing&lt;/strong&gt;, introduced on &lt;strong&gt;Hopper&lt;/strong&gt; (H100), continued on &lt;strong&gt;Blackwell&lt;/strong&gt;, and planned for &lt;strong&gt;Rubin&lt;/strong&gt; as the third generation. In Confidential Computing mode, the GPU encrypts data resident in High Bandwidth Memory (HBM) under keys managed by its on-die security processor, and three hardware properties close the trust gap to the CPU TEE: an &lt;strong&gt;on-die Root of Trust&lt;/strong&gt; that verifies GPU firmware authenticity before the OS can talk to the device; &lt;strong&gt;device attestation&lt;/strong&gt; via the &lt;strong&gt;NVIDIA Remote Attestation Service (NRAS)&lt;/strong&gt;, which produces signed evidence that the GPU is genuine NVIDIA hardware in Confidential Computing mode with unmodified firmware (analogous to Intel DCAP or AMD KDS for CPU TEEs); and &lt;strong&gt;encrypted PCIe transfers&lt;/strong&gt; between the CPU TEE and GPU TEE at line rate using a hardware &lt;strong&gt;AES-256-GCM&lt;/strong&gt; implementation, so a host administrator, hypervisor, or co-tenant with DMA access to the bus sees only ciphertext. GPU attestation is verified alongside CPU attestation before secrets (model decryption keys, dataset credentials) are released to the combined CPU+GPU TEE. The technology requires no application code changes — existing TensorFlow, PyTorch, and CUDA workloads run unmodified inside the confidential boundary. The primary threat model is the same as CPU-level confidential computing (protecting data-in-use from the infrastructure operator) but applied to AI workloads: model intellectual property theft, training data exfiltration, and inference input/output interception during GPU computation.&lt;/p&gt;</description></item><item><title>CUDA (Compute Unified Device Architecture)</title><link>https://testdev.ovh/ai/cuda/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/cuda/</guid><description>&lt;p&gt;&lt;strong&gt;CUDA (Compute Unified Device Architecture)&lt;/strong&gt; is NVIDIA&amp;rsquo;s software platform for general-purpose computing on GPUs. Its objective is to give developers a familiar C/C++ (and Fortran, Python bindings) programming model with explicit control over &lt;strong&gt;kernels&lt;/strong&gt; (functions that run on the device), &lt;strong&gt;streams&lt;/strong&gt; (ordered queues of work), and &lt;strong&gt;memory spaces&lt;/strong&gt; (host, device, unified). CUDA sits above the GPU driver and below frameworks such as cuDNN, NCCL, and higher-level ML stacks; it is the layer that makes it practical to implement custom operators, HPC solvers, and inference engines that are not covered by a closed library. For AI, virtually every major training and inference stack ultimately depends on CUDA (or a CUDA-compatible runtime) on NVIDIA hardware.&lt;/p&gt;</description></item><item><title>cuDNN (CUDA Deep Neural Network library)</title><link>https://testdev.ovh/ai/cudnn/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/cudnn/</guid><description>&lt;p&gt;&lt;strong&gt;cuDNN (CUDA Deep Neural Network library)&lt;/strong&gt; is NVIDIA’s library of highly optimized &lt;strong&gt;GPU kernels&lt;/strong&gt; for operations that dominate deep learning: convolutions, matrix multiplies used in attention, pooling, normalization (batch/layer), activations, and recurrent cells. Its objective is to deliver near-peak performance on &lt;strong&gt;CUDA&lt;/strong&gt;-capable GPUs without every framework author hand-writing assembly-tuned kernels. &lt;strong&gt;PyTorch&lt;/strong&gt;, TensorFlow, and many &lt;strong&gt;inference&lt;/strong&gt; engines call cuDNN (directly or via cuBLAS) under the hood for training and serving. cuDNN sits between raw &lt;strong&gt;CUDA&lt;/strong&gt; and application code; version alignment with the CUDA toolkit and driver is mandatory for supported deployments.&lt;/p&gt;</description></item><item><title>GPU (Graphics Processing Unit)</title><link>https://testdev.ovh/ai/gpu/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/gpu/</guid><description>&lt;p&gt;A &lt;strong&gt;GPU (Graphics Processing Unit)&lt;/strong&gt; is a specialized processor designed to execute a very large number of arithmetic operations in parallel. Its original objective was real-time rendering; in modern &lt;strong&gt;AI&lt;/strong&gt; and &lt;strong&gt;HPC&lt;/strong&gt; infrastructure the same silicon is used to accelerate matrix multiplications, convolutions, and other kernels that dominate neural network training and inference. Unlike a general-purpose host, a GPU optimizes for &lt;strong&gt;throughput&lt;/strong&gt;: many warps or wavefronts hide memory latency while the device keeps SIMD units busy. In a data-center stack, GPUs typically sit in PCIe or NVLink-attached servers (or on integrated AI appliances) and are scheduled by frameworks such as PyTorch, TensorFlow, or vLLM through a runtime such as &lt;strong&gt;CUDA&lt;/strong&gt; or ROCm.&lt;/p&gt;</description></item><item><title>MIG (Multi-Instance GPU)</title><link>https://testdev.ovh/ai/mig/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/mig/</guid><description>&lt;p&gt;&lt;strong&gt;MIG (Multi-Instance GPU)&lt;/strong&gt; is an NVIDIA &lt;strong&gt;GPU&lt;/strong&gt; partitioning mode on datacenter accelerators (e.g. &lt;strong&gt;A100&lt;/strong&gt;, &lt;strong&gt;H100&lt;/strong&gt;) that splits one physical card into up to seven &lt;strong&gt;GPU instances (GIs)&lt;/strong&gt;, each with isolated &lt;strong&gt;streaming multiprocessors&lt;/strong&gt;, memory bandwidth, and &lt;strong&gt;HBM&lt;/strong&gt; capacity. The objective is &lt;strong&gt;higher utilization&lt;/strong&gt; in multi-tenant environments: several smaller models or dev/test workloads share one expensive GPU without time-slicing contention as severe as full-card sharing. Each MIG instance appears to the OS and &lt;strong&gt;CUDA&lt;/strong&gt; as a separate GPU with fixed resources; workloads cannot oversubscribe another instance’s memory. MIG suits &lt;strong&gt;inference&lt;/strong&gt; and modest training more often than massive single-job training that needs the entire GPU and &lt;strong&gt;NVLink&lt;/strong&gt; domain.&lt;/p&gt;</description></item><item><title>NCCL (NVIDIA Collective Communications Library)</title><link>https://testdev.ovh/ai/nccl/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/nccl/</guid><description>&lt;p&gt;&lt;strong&gt;NCCL (NVIDIA Collective Communications Library)&lt;/strong&gt; implements &lt;strong&gt;collective operations&lt;/strong&gt;—&lt;strong&gt;all-reduce&lt;/strong&gt;, &lt;strong&gt;broadcast&lt;/strong&gt;, &lt;strong&gt;reduce-scatter&lt;/strong&gt;, &lt;strong&gt;all-gather&lt;/strong&gt;, and others—optimized for &lt;strong&gt;NVIDIA GPUs&lt;/strong&gt; across &lt;strong&gt;NVLink&lt;/strong&gt; within a node and &lt;strong&gt;RDMA&lt;/strong&gt; (&lt;strong&gt;InfiniBand&lt;/strong&gt; or &lt;strong&gt;RoCE&lt;/strong&gt;) across nodes. Its objective in &lt;strong&gt;AI&lt;/strong&gt; is to make &lt;strong&gt;distributed training&lt;/strong&gt; and multi-GPU &lt;strong&gt;inference&lt;/strong&gt; (tensor parallelism) scale: gradient shards must merge every step; attention and MLP partitions must exchange activations with minimal latency. Frameworks (&lt;strong&gt;PyTorch&lt;/strong&gt; DDP/FSDP, &lt;strong&gt;vLLM&lt;/strong&gt; tensor parallel) call NCCL (or delegate to it) rather than hand-rolling socket code.&lt;/p&gt;</description></item><item><title>NIM (NVIDIA Inference Microservices)</title><link>https://testdev.ovh/ai/nim/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/nim/</guid><description>&lt;p&gt;&lt;strong&gt;NIM (NVIDIA Inference Microservices)&lt;/strong&gt; are &lt;strong&gt;container images&lt;/strong&gt; and Helm charts that deliver ready-to-run &lt;strong&gt;inference endpoints&lt;/strong&gt; for specific models (LLMs, vision, embedding, reranking, and more). The objective is to shrink time-to-production: instead of assembling CUDA drivers, frameworks, model weights, and an OpenAI-compatible server yourself, operators pull a NIM that bundles a performance-tuned engine (often &lt;strong&gt;TensorRT-LLM&lt;/strong&gt; or Triton-backed paths), default model artifacts or download hooks, health checks, and a stable HTTP/gRPC API. NIMs are sized for &lt;strong&gt;GPU&lt;/strong&gt; deployment and target enterprise MLOps teams that want versioned, scannable containers with predictable resource requests rather than bespoke notebooks turned into scripts.&lt;/p&gt;</description></item><item><title>NVLink</title><link>https://testdev.ovh/ai/nvlink/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/nvlink/</guid><description>&lt;p&gt;&lt;strong&gt;NVLink&lt;/strong&gt; is NVIDIA’s proprietary &lt;strong&gt;high-speed interconnect&lt;/strong&gt; between GPUs (and, on some platforms, between GPUs and CPUs) inside a server or across an &lt;strong&gt;NVLink switch&lt;/strong&gt; system (e.g. NVL72-class racks). Its objective is to move tensors—activations, gradients, &lt;strong&gt;KV cache&lt;/strong&gt; shards, or partial attention results—at much higher bandwidth and lower latency than &lt;strong&gt;PCIe&lt;/strong&gt; or general &lt;strong&gt;Ethernet&lt;/strong&gt;, so multi-GPU &lt;strong&gt;training&lt;/strong&gt; and large-model &lt;strong&gt;inference&lt;/strong&gt; (tensor parallelism) are not bottlenecked on the bus. NVLink domains define which GPUs can treat each other’s memory as peer-accessible for &lt;strong&gt;CUDA&lt;/strong&gt; and &lt;strong&gt;NCCL&lt;/strong&gt; without leaving the box.&lt;/p&gt;</description></item><item><title>Quantization</title><link>https://testdev.ovh/ai/quantization/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/quantization/</guid><description>&lt;p&gt;&lt;strong&gt;Quantization&lt;/strong&gt; is the process of representing a model’s &lt;strong&gt;weights&lt;/strong&gt; and/or &lt;strong&gt;activations&lt;/strong&gt; with fewer bits than full &lt;strong&gt;FP32&lt;/strong&gt; training precision—commonly &lt;strong&gt;FP16&lt;/strong&gt;, &lt;strong&gt;BF16&lt;/strong&gt;, &lt;strong&gt;FP8&lt;/strong&gt;, &lt;strong&gt;INT8&lt;/strong&gt;, or &lt;strong&gt;INT4&lt;/strong&gt; (GPTQ, AWQ, GGUF-style formats). The objective is lower &lt;strong&gt;GPU memory&lt;/strong&gt; (larger models or more concurrent sessions per card), higher &lt;strong&gt;throughput&lt;/strong&gt;, and sometimes faster kernels on hardware with native low-precision units, at the cost of possible quality degradation if pushed too aggressively. Quantization can be applied &lt;strong&gt;post-training&lt;/strong&gt; (calibration on a sample dataset) or during &lt;strong&gt;training&lt;/strong&gt; (quantization-aware training). For &lt;strong&gt;inference&lt;/strong&gt;, serving engines &lt;strong&gt;vLLM&lt;/strong&gt; and &lt;strong&gt;NIM&lt;/strong&gt; load quantized checkpoints and dispatch to vendor libraries (TensorRT-LLM, CUTLASS, etc.) that implement fused low-precision matmuls.&lt;/p&gt;</description></item><item><title>RDMA (Remote Direct Memory Access)</title><link>https://testdev.ovh/ai/rdma/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/rdma/</guid><description>&lt;p&gt;&lt;strong&gt;RDMA (Remote Direct Memory Access)&lt;/strong&gt; allows a network adapter to transfer data between the memory of two machines with &lt;strong&gt;little CPU overhead&lt;/strong&gt;, low latency, and often &lt;strong&gt;kernel bypass&lt;/strong&gt; (userspace stacks such as &lt;strong&gt;verbs&lt;/strong&gt; on InfiniBand or RoCE). Its objective in AI infrastructure is to keep &lt;strong&gt;GPUs&lt;/strong&gt; fed and synchronized: &lt;strong&gt;distributed training&lt;/strong&gt; exchanges gradients quickly, &lt;strong&gt;disaggregated inference&lt;/strong&gt; (&lt;strong&gt;llm-d&lt;/strong&gt;) moves &lt;strong&gt;KV cache&lt;/strong&gt; blocks between prefill and decode nodes, and &lt;strong&gt;NVMe-oF&lt;/strong&gt; storage delivers checkpoints without the host spending cycles copying every byte. &lt;strong&gt;DPUs&lt;/strong&gt; and &lt;strong&gt;SmartNICs&lt;/strong&gt; also use RDMA paths for storage and east-west traffic while the host CPU runs models.&lt;/p&gt;</description></item><item><title>ROCm (Radeon Open Compute)</title><link>https://testdev.ovh/ai/rocm/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/rocm/</guid><description>&lt;p&gt;&lt;strong&gt;ROCm (Radeon Open Compute)&lt;/strong&gt; is AMD’s software stack for &lt;strong&gt;GPU compute&lt;/strong&gt; on datacenter &lt;strong&gt;Instinct&lt;/strong&gt; accelerators (and select consumer GPUs in community setups). Its objective mirrors &lt;strong&gt;CUDA&lt;/strong&gt; for NVIDIA: provide kernel compilers (&lt;strong&gt;HIP&lt;/strong&gt;), math libraries (rocBLAS, rocFFT), collective communication (&lt;strong&gt;RCCL&lt;/strong&gt;, analogous to &lt;strong&gt;NCCL&lt;/strong&gt;), and framework integrations so &lt;strong&gt;PyTorch&lt;/strong&gt; and inference runtimes can execute training and &lt;strong&gt;inference&lt;/strong&gt; on AMD hardware. ROCm is positioned as an open platform (Linux-first) for customers who want accelerator choice or who standardize on AMD in HPC and AI clusters.&lt;/p&gt;</description></item><item><title>TensorRT</title><link>https://testdev.ovh/ai/tensorrt/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/tensorrt/</guid><description>&lt;p&gt;&lt;strong&gt;TensorRT&lt;/strong&gt; is NVIDIA’s SDK for &lt;strong&gt;optimizing and deploying&lt;/strong&gt; trained neural networks for &lt;strong&gt;inference&lt;/strong&gt; on NVIDIA &lt;strong&gt;GPUs&lt;/strong&gt;. Its objective is minimum latency and maximum throughput: it ingests a model (ONNX, TensorFlow, PyTorch export, or framework-specific parsers), applies graph optimizations (layer fusion, constant folding, kernel autotuning), selects precisions (&lt;strong&gt;FP32&lt;/strong&gt;, &lt;strong&gt;FP16&lt;/strong&gt;, &lt;strong&gt;INT8&lt;/strong&gt;, &lt;strong&gt;FP8&lt;/strong&gt;), and produces a &lt;strong&gt;serialized engine&lt;/strong&gt; executed by a lightweight runtime. For LLMs, &lt;strong&gt;TensorRT-LLM&lt;/strong&gt; extends this with attention-specific fusions, inflight batching, and multi-GPU serving patterns; many &lt;strong&gt;NIM&lt;/strong&gt; microservices bundle TensorRT-LLM–optimized engines rather than raw PyTorch loops.&lt;/p&gt;</description></item><item><title>Training</title><link>https://testdev.ovh/ai/training/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/training/</guid><description>&lt;p&gt;&lt;strong&gt;Training&lt;/strong&gt; is the phase of machine learning where &lt;strong&gt;model parameters&lt;/strong&gt; are adjusted to minimize a &lt;strong&gt;loss&lt;/strong&gt; on a dataset. For deep learning, that means repeated &lt;strong&gt;forward passes&lt;/strong&gt; (compute predictions), &lt;strong&gt;backward passes&lt;/strong&gt; (propagate gradients via autodiff), and &lt;strong&gt;optimizer steps&lt;/strong&gt; (update weights)—from scratch pretraining, continued pretraining, or &lt;strong&gt;fine-tuning&lt;/strong&gt; (full, LoRA, or other parameter-efficient methods). The objective is model quality (accuracy, perplexity, task metrics) within a compute and time budget, not millisecond response to end users. Training jobs are batch-oriented: large minibatches, epochs over terabytes of tokens or images, checkpointing to durable storage, and experiment tracking. LLM training at scale uses &lt;strong&gt;distributed&lt;/strong&gt; strategies—data parallel, tensor parallel, pipeline parallel, and expert parallel for MoE—coordinated by frameworks such as PyTorch with FSDP or DeepSpeed.&lt;/p&gt;</description></item><item><title>vLLM</title><link>https://testdev.ovh/ai/vllm/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://testdev.ovh/ai/vllm/</guid><description>&lt;p&gt;&lt;strong&gt;vLLM&lt;/strong&gt; is an open-source library and serving stack for &lt;strong&gt;large language model (LLM) inference&lt;/strong&gt;. Its objective is to turn a trained model into a production service that sustains many concurrent users with low latency and high &lt;strong&gt;tokens per second&lt;/strong&gt; per GPU. vLLM targets the inference phase (prefill + decode), not training: it loads weights onto accelerators, batches incoming prompts, schedules decode steps, and streams completions back to clients over HTTP/gRPC (often via an OpenAI-compatible API). It has become a de facto engine behind many private and cloud AI gateways because it ships integrations for Hugging Face models, LoRA adapters, tensor parallelism, pipeline parallelism, speculative decoding, and quantization (GPTQ, AWQ, FP8).&lt;/p&gt;</description></item></channel></rss>