181: Memory Management

Patrick Wheeler and Jason Gauci
Mon, 12 May 2025 10:00:00 -0500

Intro topic: Video Game Prices

News/Links:

Step one: Jump in the Lava - Abyssoft

https://youtu.be/WdadpHLAfdA?si=oXYnhB0EdkR_RaPE

Scalable world models for continuous control

https://www.tdmpc2.com/

Clever code is probably the worst code you could write - Engineer’s Codex

https://read.engineerscodex.com/p/clever-code-is-probably-the-worst

A new, open source text-to-speech model called Dia has arrived to challenge ElevenLabs, OpenAI and more

https://venturebeat.com/ai/a-new-open-source-text-to-speech-model-called-dia-has-arrived-to-challenge-elevenlabs-openai-and-more/

Book of the Show

Patrick

The Muscle Ladder - Jeff Nippard

https://amzn.to/44Dznsz

Jason

Metaphysics of War

https://amzn.to/4jMjvZ5

Patreon Plug https://www.patreon.com/programmingthrowdown?ty=h

Tool of the Show

Patrick

Pokemon Trading Card Game Pocket

Jason

Phi-4

https://huggingface.co/spaces/microsoft/phi-4-multimodal

Topic: Memory Management

Motivation

Avoid thrashing / crashes

Allocate resources efficiently

Keep high uptime

Where

OS Level

Heap management

Virtual Memory

Language/Compiler Level

Cpp

Garbage collection

Ownership

Tools

Instrumentation

Export to Datadog / Grafana

Python: psutil & tracemalloc

Valgrind

What to do when your program uses too much memory?

Reduce data sizes

Compression

References

Lazy initializer

Generators & Back Pressure

Ring buffers

Arena allocators

Disk based caching