Performance of the tail-call interpreter in Python 3.14
March 10, 2025
Needless text
March 10, 2025
March 4, 2025
February 26, 2025
The GPU Mode discord has emerged as the preeminent hub for current and aspiring GPU kernel hackers, and several of the folks there have kicked off a project to help make it easier for folks to write and benchmark them. https://gpu-mode.github.io/discord-cluster-manager/docs/intro/ goes over the idea, but it’s a series of leaderboards and runners for different kernel types so you can easily find (and beat!) the state of the art:
February 25, 2025
February 23, 2025
February 18, 2025
Who needs a tokenizer anyway!
February 16, 2025
In general, branching in GPU code is considered bad. When you write a kernel, it’s very easy to write the same kind of logic as you would on a CPU. However, GPU kernels execute on blocks of threads scheduled on streaming multiprocessors (SMs), and they are optimized for vectorized (or parallel) computation. This optimization relies on the idea that large groups of threads can execute the same instructions on different data in a lockstep fashion. Practically, these are scheduled as “warps” of 32 threads at a time (on Nvidia, the equivalent in AMD is 64 threads).
February 13, 2025
February 12, 2025
| [Deep Dive on CUTLASS Ping-Pong GEMM Kernel | PyTorch](https://pytorch.org/blog/cutlass-ping-pong-gemm-kernel/) |
February 11, 2025
One of the challenges discussed in the Deepseek v3 paper is the availability of grouped GEMM kernels, which are used to hide the performance impact of many small kernel launches on GPUs. Deepseek uses many small experts (256!) rather than a few larger ones, which exacerbates this problem.