HackerTube
HomeLongsLikedHistoryWatch laterCategoriesPlaylistsSettings

Concurrency is not Parallelism by Rob Pike

gnbitcom4 HN recommenders · recommended in 4 months, 2021-2025
YouTube
191K views · 11 years ago · talk · evergreen

Rob Pike's Go talk distinguishing concurrency, the structuring of independent processes, from parallelism, their simultaneous execution. It uses Go channels and goroutines to illustrate.

The standard link for explaining the concurrency versus parallelism distinction and the motivations behind Go's concurrency model.

C, C++, Rust, Go & systems languagesSoftware architecture & design#concurrency#parallelism#go#goroutines#robpike

6 comments from Hacker News

@auxiliarymoose2025 · in “Thoughts on Go vs. Rust vs. Zig”

Agreed. Rob Pike presented a good talk "Concurrency is not Parallelism" which explains the motivations behind Go's concurrency model: ▶ this video Between the lack of "colored functions" and the simplicity of communicating with channels, I keep surprising myself with how (relatively) quick and easy it is to develop concurrent systems with correct behavior in Go.

RecommendsView on HN
@duped2024 · in “Understanding Concurrency, Parallelism and JavaScript”

If you prefer to learn by video, here's an excellent talk on the same subject by Rob Pike that I link all the time to people ▶ this video

Strongly recommendsView on HN
@ly3xqhl8g92023 · in “What Is Systems Programming, Really?”

Sure, but the context is very important: you can use Rust to control the DOM from WASM [1] and then you can use Haskell to write a load balancer [2]. [1] link [2] link (off-topic: Rob Pike's Concurrency is not Parallelism ▶ this video )

CitesView on HN
@cratermoon2022 · in “Ask HN: Kubernetes Worth It?”

Anyone that can wrap their mind around the model of Communicating Sequential Processes[1] implemented using channels in Go will improve their programming. See also Concurrency is not Parallelism by Rob Pike: ▶ this video After I figured it out, I spent a good month writing personal projects to play with channels and concurrency and get the "these are cool I'm going to use them everywhere" urge out of my system. 1 link

RecommendsView on HN
@duped2021 · in “Async I/O for Dummies (2018)”

As with all benchmarks, benchmark your workload. The tech empower stuff is gamed, like all rankings. But first and foremost, concurrency is not parallelism [1]. In my practical experience dealing with both, asycn is a language semantic for concurrency, threads are an OS feature for parallelism. It's a little nonsensical to ask the pros/cons since they are different entirely ; you can use both at the same time (and in practice most async implementations use threads) [1] ▶ this video "Concurrency is not Parallelism" talk by Rob Pike.

CitesView on HN
@merb2021 · in “Althttpd: Simple webserver in a single C file”

yeah, basically. a lot of people do not know, but async/await does have NOTHING do to with threads or processes. you can use threads with async/await, but you do not. async/await basically means you are running your "green threads"/tasks/promises on a event loop, the event loop can be either single threaded or it can run the stuff on multiple threads. a lot of people just did not get the difference between concurrency vs. parallelism. threads and processes are basically parallelism, while concurrency is async programming. good talk about that stuff from rob pike (go): ▶ this video

RecommendsView on HN
Google I/O 2012 - Go Concurrency Patterns51:27

Google I/O 2012 - Go Concurrency Patterns

Google for Developers
894K views • 14 years ago
Origins of Go Concurrency style by Rob Pike38:19

Origins of Go Concurrency style by Rob Pike

jasonofthel33t
28K views • 14 years ago
Gopherfest 2015 | Go Proverbs with Rob Pike22:29

Gopherfest 2015 | Go Proverbs with Rob Pike

The Go Programming Language
317K views • 10 years ago
GopherCon 2016: The Design of the Go Assembler - Rob Pike23:57

GopherCon 2016: The Design of the Go Assembler - Rob Pike

Gopher Academy
116K views • 10 years ago
Lexical Scanning in Go - Rob Pike51:18

Lexical Scanning in Go - Rob Pike

GoogleFOSSSydney
162K views • 15 years ago
dotGo 2015 - Rob Pike - Simplicity is Complicated23:12

dotGo 2015 - Rob Pike - Simplicity is Complicated

dotconferences
172K views • 10 years ago
Raymond Hettinger, Keynote on Concurrency, PyBay 20171:13:53

Raymond Hettinger, Keynote on Concurrency, PyBay 2017

SF Python
161K views • 9 years ago
The Go Programming Language59:26

The Go Programming Language

Google TechTalks
406K views • 17 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
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
Sydney Golang Meetup - Rob Pike - Go 2 Draft Specifications1:07:00

Sydney Golang Meetup - Rob Pike - Go 2 Draft Specifications

Macquarie Group
57K views • 7 years ago
OSCON 2010:  Rob Pike, "Public Static Void"12:31

OSCON 2010: Rob Pike, "Public Static Void"

O'Reilly
119K views • 16 years ago
Parallelism, Concurrency, and Asynchrony in Perl 6 / Jonathan Worthington58:08

Parallelism, Concurrency, and Asynchrony in Perl 6 / Jonathan Worthington

yapcasia
6K views • 11 years ago
GopherCon 2014 Opening Keynote by Rob Pike56:36

GopherCon 2014 Opening Keynote by Rob Pike

Confreaks
38K views • 12 years ago
Rob Pike about the target group of the Go programming language (golang)0:27

Rob Pike about the target group of the Go programming language (golang)

f8C4G86p KbqEFe47
7K views • 6 years ago
"How to Think about Parallel Programming: Not!" - Guy L. Steele Jr. (Strange Loop 2010)1:09:38

"How to Think about Parallel Programming: Not!" - Guy L. Steele Jr. (Strange Loop 2010)

Strange Loop Conference
9K views • 5 years ago
Let's #TalkConcurrency Panel Discussion with Sir Tony Hoare, Joe Armstrong, and Carl Hewitt1:06:45

Let's #TalkConcurrency Panel Discussion with Sir Tony Hoare, Joe Armstrong, and Carl Hewitt

Erlang Solutions
13K views • 7 years ago
Clojure Concurrency - Rich Hickey2:32:39

Clojure Concurrency - Rich Hickey

ClojureTV
73K views • 13 years ago
Nathaniel J. Smith - Trio: Async concurrency for mere mortals - PyCon 201832:17

Nathaniel J. Smith - Trio: Async concurrency for mere mortals - PyCon 2018

PyCon 2018
30K views • 8 years ago
Rust's Journey to Async/Await48:46

Rust's Journey to Async/Await

InfoQ
90K views • 7 years ago