Michal Pitr
banner
mptr.bsky.social
Michal Pitr
@mptr.bsky.social
I build code from scratch and write engineering blogs | k8s @ Google | University of Edinburgh

https://open.substack.com/pub/michalpitr
* My matmul optimization article

I spend more time on building the intuition for some of the optimizations.
lnkd.in/dRPZmZyM
May 13, 2025 at 11:04 AM
These are some great resources to learn more:

* How to optimize GEMM

Nice step-by-step introduction by BLIS contributors.
lnkd.in/df6FdX8S

* BLISlab

Goes into much more depth than most introductory sources. Source of the illustration below.
lnkd.in/dHG6akFN
May 13, 2025 at 11:04 AM
📦 Packing

Packing arranges sub-matrix data contiguously. This helps performance and can reduce cache conflicts with large matrices. I cover this more in my article.
May 13, 2025 at 11:04 AM
🧱 Tiling

A fast micro-kernel doesn't help much if it needs to wait for data to be loaded from RAM. Tiling breaks down large matrices into smaller, cache-friendly blocks. The goal is to maximize data reuse from caches.
May 13, 2025 at 11:04 AM
⚙️ Optimized micro-kernel

BLAS libs often use small kernels (e.g., 8x4) optimized for specific CPUs using SIMD intrinsics and software prefetching. Many use handwritten assembly for optimal register allocation.
May 13, 2025 at 11:04 AM
Consider checking it out: github.com/kelseyhighto...

It's always fun to see how people approach explaining technical topics. I really like Kelsey's concise style, but you might have to Google around for the initial infra setup.
GitHub - kelseyhightower/kubernetes-the-hard-way: Bootstrap Kubernetes the hard way. No scripts.
Bootstrap Kubernetes the hard way. No scripts. Contribute to kelseyhightower/kubernetes-the-hard-way development by creating an account on GitHub.
github.com
January 5, 2025 at 4:39 PM
📚 I'd probably skip KTHW until you are pretty comfortable with using K8s. But once you are confident and want to understand the cluster bootstrap process, this is a great place to start.
January 5, 2025 at 4:39 PM
🔧 Things can appear working but be broken. I made a mistake setting up pod subnet for one worker node. This meant that pods on node-0 were reachable, but pods on node-1 weren't.
January 5, 2025 at 4:39 PM
💻 Easy to setup a few QEMU VMs on a local machine connected by a virtual bridge. Each VM gets a static IP. This nicely mimics an on-prem setup.

💡Linux networking is probably the toughest part, but it can be pretty rewarding to debug and understand.
January 5, 2025 at 4:39 PM
I love figuring out how things work under the hood. I build something like Docker or MapReduce from scratch, then write a post about it.

open.substack.com/pub/michalpitr

#promosky #promotionsky
From Scratch | Michal Pitr | Substack
I build software from scratch and share my learnings! I especially enjoy topics around compilers, distributed systems, GPU programming, and Linux. Click to read From Scratch, by Michal Pitr, a Subst...
open.substack.com
December 14, 2024 at 1:41 PM
Feel free to check it out: open.substack.com/pub/michalpi...
Linux container from scratch
Let's build a minimal container step-by-step in a terminal
open.substack.com
December 9, 2024 at 3:30 PM
Sharing my code since talk is cheap: github.com/MichalPitr/a...
github.com
December 4, 2024 at 10:35 PM