High Performance Computing & AI
Practical notes on Python, JupyterHub, Kubernetes and AI for science — from the San Diego Supercomputer Center.
Popular categories
Recent posts
-
Managing projects with GitHub and AI agents: the structure problem
In my previous post about managing projects with GitHub and AI agents I described how I organize events and workshops with a single GitHub repository as the source of truth, issues for every activity, and an agent per collaborator.
-
Living with a local 27B LLM on a Mac mini: capable enough and (almost) fast enough
I run an Apple M4 Pro Mac mini in the office as a private LLM server: a 27B Qwen 3.8 model, served over my Tailscale tailnet, used every day by my coding agent to handle emails, Trello cards, and general project work.
-
Mac mini as a private LLM server: the technical setup
This is the technical companion to the experience post: how the Mac mini is set up, how every service runs, and where the configuration lives. The benchmark details (prefill, decode, context stress test, agent context sizes) are here too. The data-center comparison is in the comparison post.
-
Same 27B model, two worlds: Mac mini vs a data-center GPU
How much does datacenter hardware buy you over an Apple Silicon dev box? To get a feeling for it, I set the NRP managed LLM service, which hosts Qwen3.8-27B (api name qwen3-small) in bf16 on their Nautilus GPU fleet, against my Mac mini (the high-level story is in the experience post, the full setup in the setup post), which serves the same model quantized to NVFP4 on the MLX engine.
-
Offline speech-to-text on Linux with nerd-dictation
If you want offline speech-to-text on a Wayland desktop, nerd-dictation is a great choice: it records from your microphone, transcribes locally (no cloud), and types the result into the focused window.
-
SLIC superpixels on the HEALPix grid
A recent healpy issue proposes a slic function that generates superpixels on the HEALPix grid, adapting the SLIC algorithm to the sphere, with a complete working implementation attached. This post is what I found testing it.
-
PySM: produce CAR output at the smoothing stage
PySM 3 only builds HEALPix skies. Here is how to produce CAR pixelization output at the smoothing stage with a single spherical harmonic transform, and a validation against the smooth-then-reproject route.
-
healpy 1.20.1: last release with macOS 14 wheels
The healpy 1.20.1 release includes bug fixes and is the final release to provide macOS 14 arm64 wheels before the GitHub runner retirement.
-
A practical primer on software citation
Software forms the foundation of modern research, yet citing code effectively remains a challenge across scientific disciplines.
-
Gateways 2027: a conference for and by the community, coming to San Diego
At the closing of Gateways 2026 in Washington, DC, we announced that Gateways 2027 will take place in San Diego, hosted by the San Diego Supercomputer Center (SDSC) at UC San Diego.
-
Managing projects with GitHub and AI agents
Organizing conferences and workshops can quickly become overwhelming when plans, decisions, contracts, and meeting notes are scattered across multiple platforms.
-
Deploy ngshare on Jetstream with a Manila volume (Kubernetes)
This tutorial shows how to deploy nbgrader with ngshare on Jetstream Kubernetes where ngshare's SQLite database lives on a Manila CephFS share instead of a Cinder volume.
-
Deploy JupyterHub on Jetstream2 with OpenTofu, Magnum and Traefik
This tutorial deploys a JupyterHub on Jetstream2 with a single tofu apply. It combines the steps of the four-post Jetstream2 Kubernetes series (Magnum cluster, Traefik ingress, JupyterHub, cert-manager) into one reproducible OpenTofu configuration.
-
See if your opencode session is still working in ChromeOS Overview
Running opencode in a ChromeOS Crostini terminal, you have to keep switching back to the window to know if the agent is still working. Desktop notifications only tell you when something finishes.
-
Python for HPC at SDSC Summer Institute 2026
I updated the Python for HPC session I taught at the SDSC Summer Institute 2026 (August 7, 2026). The material was heavily rewritten for this year - a substantial rework, not a refresh of the 2025 version.