John Hahn✓

@gpujohn

mts @wafer_ai

  • Se unió en
45 Siguiendo101 Seguidores404 Publicaciones
  1. John Hahn✓@gpujohn
    John Hahn
    RT @wafer_ai: listen to @gpusteve. he knows a thing or two about ai/gpu perf. four nvidia resources covering: - how cuda device code becomes ptx and cubins, how fatbins package gpu code, and when the driver compiles ptx at runtime. - gpu targets, device linking, intermediate files, and compiler reports for registers, shared memory, and spills. - ptx state spaces, memory ordering, synchronization, matrix instructions, and accumulation precision. - reading generated sass and checking register counts and static memory usage with cuobjdump, plus inspecting register liveness with nvdisasm. useful when your "optimized" kernel gets slower
    steve @gpusteve
    if i had to learn cuda compilation, ptx, register spills, and gpu disassembly from scratch because my "optimized" kernel got slower, i'd start here links in thread 🧵 the compilation and machine code section of our ai performance engineering repo contains four nvidia resources for understanding how cuda source becomes gpu instructions and inspecting the code behind ai kernels: understanding ptx explains how nvcc separates cpu and gpu code, why ptx is a virtual instruction set, and how ptxas turns it into a cubin. the article covers fatbins, driver jit compilation, and gpu compatibility, giving context for deployment targets and inference startup costs. nvcc compiler driver covers gpu architecture targets, the files each compilation stage produces, separate compilation, and device linking. the nvcc guide explains how to retain intermediate files and report register usage, shared memory, and spill loads and stores. those compiler reports help compare kernel builds after changes to tile size, unrolling, or fusion. ptx isa defines register, local, shared, and global state spaces; memory ordering and synchronization; and arithmetic and matrix instructions. ptx isa details operand layouts, data types, accumulation precision, and gpu requirements, plus completion rules for asynchronous copies. useful for checking data movement and numerical behavior in attention and matmul kernels. cuda binary utilities covers extracting embedded ptx and cubins, disassembling native gpu instructions (sass), and reporting register counts and static memory usage with cuobjdump. nvdisasm provides control-flow graphs when the cubin contains complete relocation information, plus register-liveness views. with debug line information, nvdisasm can annotate instructions with source lines. useful for inspecting generated loads, stores, branches, and arithmetic after a kernel rewrite. together, these resources connect the compilation process to the code being measured. they help identify what changed between kernel builds and what to investigate before the next correctness check or benchmark. follow and save to keep up with the series.
    0504.1K
  2. John Hahn✓@gpujohn
    if there's 1 person to listen to about gpu perf, listen to @gpusteve
    steve @gpusteve
    if i had to learn cuda compilation, ptx, register spills, and gpu disassembly from scratch because my "optimized" kernel got slower, i'd start here links in thread 🧵 the compilation and machine code section of our ai performance engineering repo contains four nvidia resources for understanding how cuda source becomes gpu instructions and inspecting the code behind ai kernels: understanding ptx explains how nvcc separates cpu and gpu code, why ptx is a virtual instruction set, and how ptxas turns it into a cubin. the article covers fatbins, driver jit compilation, and gpu compatibility, giving context for deployment targets and inference startup costs. nvcc compiler driver covers gpu architecture targets, the files each compilation stage produces, separate compilation, and device linking. the nvcc guide explains how to retain intermediate files and report register usage, shared memory, and spill loads and stores. those compiler reports help compare kernel builds after changes to tile size, unrolling, or fusion. ptx isa defines register, local, shared, and global state spaces; memory ordering and synchronization; and arithmetic and matrix instructions. ptx isa details operand layouts, data types, accumulation precision, and gpu requirements, plus completion rules for asynchronous copies. useful for checking data movement and numerical behavior in attention and matmul kernels. cuda binary utilities covers extracting embedded ptx and cubins, disassembling native gpu instructions (sass), and reporting register counts and static memory usage with cuobjdump. nvdisasm provides control-flow graphs when the cubin contains complete relocation information, plus register-liveness views. with debug line information, nvdisasm can annotate instructions with source lines. useful for inspecting generated loads, stores, branches, and arithmetic after a kernel rewrite. together, these resources connect the compilation process to the code being measured. they help identify what changed between kernel builds and what to investigate before the next correctness check or benchmark. follow and save to keep up with the series.
    002119
  3. John Hahn✓@gpujohn
    John Hahn
    RT @gpusteve: if i had to learn cuda compilation, ptx, register spills, and gpu disassembly from scratch because my "optimized" kernel got slower, i'd start here links in thread 🧵 the compilation and machine code section of our ai performance engineering repo contains four nvidia resources for understanding how cuda source becomes gpu instructions and inspecting the code behind ai kernels: understanding ptx explains how nvcc separates cpu and gpu code, why ptx is a virtual instruction set, and how ptxas turns it into a cubin. the article covers fatbins, driver jit compilation, and gpu compatibility, giving context for deployment targets and inference startup costs. nvcc compiler driver covers gpu architecture targets, the files each compilation stage produces, separate compilation, and device linking. the nvcc guide explains how to retain intermediate files and report register usage, shared memory, and spill loads and stores. those compiler reports help compare kernel builds after changes to tile size, unrolling, or fusion. ptx isa defines register, local, shared, and global state spaces; memory ordering and synchronization; and arithmetic and matrix instructions. ptx isa details operand layouts, data types, accumulation precision, and gpu requirements, plus completion rules for asynchronous copies. useful for checking data movement and numerical behavior in attention and matmul kernels. cuda binary utilities covers extracting embedded ptx and cubins, disassembling native gpu instructions (sass), and reporting register counts and static memory usage with cuobjdump. nvdisasm provides control-flow graphs when the cubin contains complete relocation information, plus register-liveness views. with debug line information, nvdisasm can annotate instructions with source lines. useful for inspecting generated loads, stores, branches, and arithmetic after a kernel rewrite. together, these resources connect the compilation process to the code being measured. they help identify what changed between kernel builds and what to investigate before the next correctness check or benchmark. follow and save to keep up with the series.
    01107.3K
  4. John Hahn✓@gpujohn
    John Hahn
    RT @gpuemi: 1 Trillion tokens a day :)
    wafer @wafer_ai
    1 trillion tokens a day on @OpenRouter!!
    0401.3K
  5. John Hahn✓@gpujohn
    John Hahn
    RT @gpusteve: (token) trillionaire
    wafer @wafer_ai
    1 trillion tokens a day on @OpenRouter!!
    0401.4K
  6. John Hahn✓@gpujohn
    John Hahn
    RT @gpuemi: join the @wafer_ai team for poker, food, and drinks at the University of Chicago! we’d love to meet people doing exceptional things and hear what you’re working on. October 28 · 5–9pm CDT · UChicago request to join below
    050948
  7. John Hahn✓@gpujohn
    John Hahn
    RT @wafer_ai: join the Wafer team for poker, food, and drinks at the University of Chicago! we’d love to meet people doing exceptional things and hear what you’re working on. October 28 · 5–9pm CDT · UChicago request to join in thread 🧵
    0401.3K
  8. John Hahn✓@gpujohn
    John Hahn
    RT @gpusteve: join the @wafer_ai team for poker, food, and drinks at the University of Chicago. would love to meet people doing exceptional things and hear what you’re working on. October 28 · 5–9pm CDT · UChicago request to join below
    0402.3K
  9. John Hahn✓@gpujohn
    John Hahn
    RT @gpuemi: we’re partnering with @youdotcom to bring Wafer’s inference to developers through its new Inference Router! access @wafer_ai through one OpenAI-compatible API, with multi-provider failover and built-in web search from link in thread 🧵
    You.com @youdotcom
    Introducing Inference Router: enterprise-grade inference on demand. Kimi K3, GLM 5.3, DeepSeek V4.1 Flash, Qwen3.8 Flash, Muse Spark 1.3, Mercury 3 and more, available with an uptime SLA of at least 99.9%. US hosting and web search built in.
    0601.9K
  10. You.com@youdotcom
    Introducing Inference Router: enterprise-grade inference on demand. Kimi K3, GLM 5.3, DeepSeek V4.1 Flash, Qwen3.8 Flash, Muse Spark 1.3, Mercury 3 and more, available with an uptime SLA of at least 99.9%. US hosting and web search built in.
    Descargar
    32535084.4M
  11. John Hahn✓@gpujohn
    John Hahn
    RT @gpusteve: we’re partnering with @youdotcom to bring Wafer’s inference to developers through its new Inference Router. access Wafer through one OpenAI-compatible API, with multi-provider failover and built-in web search from link in thread 🧵
    You.com @youdotcom
    Introducing Inference Router: enterprise-grade inference on demand. Kimi K3, GLM 5.3, DeepSeek V4.1 Flash, Qwen3.8 Flash, Muse Spark 1.3, Mercury 3 and more, available with an uptime SLA of at least 99.9%. US hosting and web search built in.
    0601.6K
  12. John Hahn✓@gpujohn
    John Hahn
    RT @wafer_ai: we’re partnering with @youdotcom to bring Wafer’s inference to developers through its new Inference Router. access Wafer through one OpenAI-compatible API, with multi-provider failover and built-in web search from link in thread 🧵
    You.com @youdotcom
    Introducing Inference Router: enterprise-grade inference on demand. Kimi K3, GLM 5.3, DeepSeek V4.1 Flash, Qwen3.8 Flash, Muse Spark 1.3, Mercury 3 and more, available with an uptime SLA of at least 99.9%. US hosting and web search built in.
    0704.3K
  13. John Hahn✓@gpujohn
    John Hahn
    RT @vercel_dev: DeepSeek V4.1 Flash 1017 is now included in Vercel Token Pass. • New weights from DeepSeek • 1M context window • No config change Get $80 of tokens for $30/mo ↓
    017069.4K
  14. John Hahn✓@gpujohn
    John Hahn
    RT @gpuemi: excited to partner with @vercel to power Token Pass! for $30 per month, your team gets $80 in monthly credit for: - GLM 5.3 - Kimi K3 - DeepSeek V4.1 Flash 1017 powered by @wafer_ai, with more models coming soon! links in thread 🧵
    0902.3K
  15. John Hahn✓@gpujohn
    John Hahn
    RT @gpusteve: excited to partner with @vercel to power Token Pass for $30 per month, your team gets $80 in monthly credit for: - GLM 5.3 - Kimi K3 - DeepSeek V4.1 Flash 1017 powered by @wafer_ai , with more models coming soon available as an add-on to Vercel Pro. links in thread 🧵
    0402.9K
  16. John Hahn✓@gpujohn
    John Hahn
    RT @wafer_ai: excited to partner with @Vercel to power Token Pass! for $30 per month, your team gets $80 in monthly credit for: - GLM 5.3, - Kimi K3 - DeepSeek V4.1 Flash 1017 powered by Wafer, with more models coming soon! available as an add-on to Vercel Pro. links in thread 🧵
    0506.4K
  17. John Hahn✓@gpujohn
    John Hahn
    RT @gpusteve: huge updates coming to the gpu perf engineering repo what resources are we missing?
    wafer @wafer_ai
    we're doing a massive update on Wafer's popular open source guide to GPU performance engineering! a few cool resources going into this update: ⠀ 1. Stream-K: why a matmul can leave part of the GPU idle while the last blocks finish, and how dividing the multiply-accumulate work more evenly helps. ⠀ 2. tcgen05 for dummies: gau-nernst builds a Blackwell matmul step by step. Tensor Memory, asynchronous copies and pipelining, with code you can follow as the kernel develops. ⠀ 3. Thinking Machines' Defeating Nondeterminism: how changing the batch can change the order of floating-point additions, and why that can change inference results. then, how to make the kernels batch-invariant. ⠀ 4. Triton's Linear Layouts: how tensor elements are arranged across threads and registers, and the data movement needed to change that arrangement. ⠀ the update also expands the quantization, speculative decoding and hardware references. ⠀ the guide starts with one inference request, then moves through GPU fundamentals, kernels, serving engines and distributed systems. start at the beginning if you're new; use the individual sections when you hit a specific problem. ⠀ if you know a primary source that explains one of these topics better, open a PR.
    0401
  18. John Hahn✓@gpujohn
    to fellow gpu/ai perf engineers what are we missing from the gpu perf engineering repo by @wafer_ai
    wafer @wafer_ai
    we're doing a massive update on Wafer's popular open source guide to GPU performance engineering! a few cool resources going into this update: ⠀ 1. Stream-K: why a matmul can leave part of the GPU idle while the last blocks finish, and how dividing the multiply-accumulate work more evenly helps. ⠀ 2. tcgen05 for dummies: gau-nernst builds a Blackwell matmul step by step. Tensor Memory, asynchronous copies and pipelining, with code you can follow as the kernel develops. ⠀ 3. Thinking Machines' Defeating Nondeterminism: how changing the batch can change the order of floating-point additions, and why that can change inference results. then, how to make the kernels batch-invariant. ⠀ 4. Triton's Linear Layouts: how tensor elements are arranged across threads and registers, and the data movement needed to change that arrangement. ⠀ the update also expands the quantization, speculative decoding and hardware references. ⠀ the guide starts with one inference request, then moves through GPU fundamentals, kernels, serving engines and distributed systems. start at the beginning if you're new; use the individual sections when you hit a specific problem. ⠀ if you know a primary source that explains one of these topics better, open a PR.
    013328
  19. John Hahn✓@gpujohn
    John Hahn
    RT @wafer_ai: we're doing a massive update on Wafer's popular open source guide to GPU performance engineering! a few cool resources going into this update: ⠀ 1. Stream-K: why a matmul can leave part of the GPU idle while the last blocks finish, and how dividing the multiply-accumulate work more evenly helps. ⠀ 2. tcgen05 for dummies: gau-nernst builds a Blackwell matmul step by step. Tensor Memory, asynchronous copies and pipelining, with code you can follow as the kernel develops. ⠀ 3. Thinking Machines' Defeating Nondeterminism: how changing the batch can change the order of floating-point additions, and why that can change inference results. then, how to make the kernels batch-invariant. ⠀ 4. Triton's Linear Layouts: how tensor elements are arranged across threads and registers, and the data movement needed to change that arrangement. ⠀ the update also expands the quantization, speculative decoding and hardware references. ⠀ the guide starts with one inference request, then moves through GPU fundamentals, kernels, serving engines and distributed systems. start at the beginning if you're new; use the individual sections when you hit a specific problem. ⠀ if you know a primary source that explains one of these topics better, open a PR.
    01306.8K