HackerTube
HomeLongsLikedHistoryWatch laterCategoriesPlaylistsSettings

Charlie Marsh: uv: An Extremely Fast Python Package Manager

Jane Street3 HN recommenders · recommended in 3 months, 2024-2025
YouTube
107K views · 2 years ago · talk · dated

Charlie Marsh of Astral explains how uv, a Rust Python package manager, got so fast. He covers allocators, concurrency, zero-copy tricks and the challenges of Python packaging.

Recommended as a fascinating technical account of the optimizations behind uv's speed.

Python, Ruby & scripting languagesSoftware performance & optimizationC, C++, Rust, Go & systems languages#uv#rust#packagemanager#satsolver#performance

4 comments from Hacker News

@krick2025 · in “How uv got so fast”

To be fair, the whole post isn't very good IMO, regardless of ChatGPT involvement, and it's weird how some people seem to treat it like some kind of revelation. I mean, of course it wasn't specifically Rust that made it fast, it's really a banal statement: you need only very moderate serious programming experience to know, that rewriting legacy system from scratch can make it faster even if you rewrite it in a "slower" language. There have been C++ systems that became faster when rewritten in Python, for god's sake. That's what makes system a "legacy" system: it does a ton of things and nobody really knows what it does anymore. But when listing things that made uv faster it really mentions some silly things, among others. Like, it doesn't parse pip.conf. Right, sure, the secret of uv's speed lies in not-parsing other package manager's config files. Great. So all in all, yes, no doubt that hundreds of little things contributed into making uv faster, but listing a few dozens of them (surely a non-exhaustive lists) doesn't really enable you to make any conclusions about the relative importance of different improvements whatsoever. I suppose the mentioned talk[0] (even though it's more than a year old now) would serve as a better technical report. [0] ▶ this video

RecommendsView on HN
@globular-toast2025 · in “uv: An extremely fast Python package and project manager, written in Rust”

There is a talk about it from one of the authors here: ▶ this video tl;dw Rust, a fast SAT solver, micro-optimisation of key components, caching, and hardlinks/CoW.

RecommendsView on HN
@snthpy2024 · in “Rust regex engine internals as a library”

So much love for @burntsushi He's improved my life in so many ways, rg, ... and now also in Python with uv! Glad to see Charlie giving him the credit for figuring out the version comparison optimization in uv in [1]. Also huge thank you to the whole Astral team for all they're doing on uv It's magic! 1: ▶ this video

CitesView on HN
@kolja0052024 · in “Using uv with PyTorch”

I recently watched a talk by the author of uv that was surprisingly fascinating [1]. He goes into a few of the more notable hacks that they had to come up with to make it as fast as it is. The most interesting thing for me was that package resolution in python given constraints defined (eg. in requirements.txt) maps to a boolean satisfiability problem which is NP-complete. So uv uses a custom SAT solver to do this. I totally under-appreciated how much goes into this software and I'm bummed I have to use Poetry at work after having watched this talk. [1] ▶ this video edit: NP-complete not NP-hard

Strongly recommendsView on HN
How to Speed up a Python Program 114,000 times.59:11

How to Speed up a Python Program 114,000 times.

InfoQ
171K views • 13 years ago
Armin Ronacher - A Python for Future Generations42:44

Armin Ronacher - A Python for Future Generations

EuroPython Conference
6K views • 9 years ago
Rust at speed — building a fast concurrent database52:54

Rust at speed — building a fast concurrent database

Jon Gjengset
225K views • 7 years ago
RailsConf 2011: Aaron Patterson, "Double Dream Hands: So Intense!"47:34

RailsConf 2011: Aaron Patterson, "Double Dream Hands: So Intense!"

O'Reilly
26K views • 15 years ago
Larry Hastings - Removing Python's GIL: The Gilectomy - PyCon 201632:07

Larry Hastings - Removing Python's GIL: The Gilectomy - PyCon 2016

PyCon 2016
49K views • 10 years ago
A 10x faster TypeScript13:45

A 10x faster TypeScript

Microsoft Developer
608K views • 1 year ago
'Fastware' - Andrei Alexandrescu [ ACCU 2016 ]1:02:17

'Fastware' - Andrei Alexandrescu [ ACCU 2016 ]

ACCU Conference
34K views • 10 years ago
The Truth about Rust/WebAssembly Performance29:47

The Truth about Rust/WebAssembly Performance

Greg Johnston
218K views • 3 years ago
Dmitry Vyukov — Go scheduler: Implementing language with lightweight concurrency1:00:40

Dmitry Vyukov — Go scheduler: Implementing language with lightweight concurrency

Hydra
47K views • 7 years ago
Understanding the Python GIL46:10

Understanding the Python GIL

David Beazley
127K views • 14 years ago
Mojo Lang - Tomorrow's High Performance Python? (with Chris Lattner)1:24:39

Mojo Lang - Tomorrow's High Performance Python? (with Chris Lattner)

Developer Voices
64K views • 2 years ago
Lars Bergstrom - Beyond Safety and Speed: How Rust Fuels Team Productivity22:19

Lars Bergstrom - Beyond Safety and Speed: How Rust Fuels Team Productivity

Rust Nation UK
18K views • 2 years ago
"Compacting the Uncompactable" by Bobby Powers40:18

"Compacting the Uncompactable" by Bobby Powers

Strange Loop Conference
29K views • 7 years ago
GopherCon 2015: Go GC: Solving the Latency Problem - Rick Hudson22:51

GopherCon 2015: Go GC: Solving the Latency Problem - Rick Hudson

Gopher Academy
22K views • 11 years ago
2013 Keynote: Chandler Carruth: Optimizing the Emergent Structures of C++1:33:02

2013 Keynote: Chandler Carruth: Optimizing the Emergent Structures of C++

CppNow
34K views • 13 years ago
CppCon 2014: Chandler Carruth "Efficiency with Algorithms, Performance with Data Structures"1:13:41

CppCon 2014: Chandler Carruth "Efficiency with Algorithms, Performance with Data Structures"

CppCon
235K views • 12 years ago
"NTFS really isn't that bad" - Robert Collins (LCA 2020)48:04

"NTFS really isn't that bad" - Robert Collins (LCA 2020)

linux.conf.au
161K views • 6 years ago
"Outperforming Imperative with Pure Functional Languages" by Richard Feldman34:55

"Outperforming Imperative with Pure Functional Languages" by Richard Feldman

Strange Loop Conference
98K views • 5 years ago
Someone improved my code by 40,832,277,770%28:47

Someone improved my code by 40,832,277,770%

Stand-up Maths
3.1M views • 4 years ago
[EPILEPSY WARNING] How fast should an unoptimized terminal run?51:04

[EPILEPSY WARNING] How fast should an unoptimized terminal run?

Molly Rocket
193K views • 5 years ago