High Performance Computing & AI
Practical notes on Python, JupyterHub, Kubernetes and AI for science — from the San Diego Supercomputer Center.
Popular categories
Recent posts
-
A practical primer on software citation
Software forms the foundation of modern research, yet citing code effectively remains a challenge across scientific disciplines.
-
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.
-
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.
-
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.
-
Request an HPC@UC allocation on Expanse at SDSC
How UC researchers can request a 500K core-hour allocation on SDSC's Expanse supercomputer through the HPC@UC program, including eligibility, the application process, and trial accounts.
-
Setup HTTPS with cert-manager on Jetstream2 Kubernetes (4 of 4)
This post is part of a series on deploying JupyterHub on Jetstream2: 1. Deploy Kubernetes on Jetstream2
-
Deploy JupyterHub on Jetstream2 Kubernetes (3 of 4)
This post is part of a series on deploying JupyterHub on Jetstream2: 1. Deploy Kubernetes on Jetstream2
-
Install Traefik Ingress Controller on Jetstream2 Kubernetes (2 of 4)
This post is part of a series on deploying JupyterHub on Jetstream2: 1. Deploy Kubernetes on Jetstream2
-
Deploy Kubernetes on Jetstream2 with Magnum and Cluster API (1 of 4)
This post is part of a series on deploying JupyterHub on Jetstream2: 1. Deploy Kubernetes on Jetstream2
-
OpenStack image sharing between projects on Jetstream2: a tested cheat-sheet
I recently needed to share a Magnum cluster node image with a colleague on a different Jetstream2 allocation. There are a few ways to do it and the documentation is confusing, so I tested every command live against Jetstream2 OpenStack (Image v2 API). Here is what actually works, with only commands verified live.
-
Deploy the Dask Operator for Kubernetes on Jetstream2 and access it from JupyterHub
This post describes how to deploy the Dask Operator for Kubernetes alongside a Helm-based JupyterHub installation on a Jetstream2 Kubernetes cluster (Magnum). The Operator provides a Kubernetes-native way to create and manage Dask clusters via custom resources, simplifying multi-tenant setups.
-
Running AlphaFold3 and OpenFold3 protein-ligand structure prediction on SDSC Expanse
I built two self-contained, reproducible projects that run realistic (non-toy) protein structure prediction on a single SDSC Expanse GPU node: one with DeepMind AlphaFold3 (via nf-core/proteinfold) and one with the fully open OpenFold3 (MCL1 protein-ligand ensemble).