←back to thread

Show HN: Go Plan9 Memo

(pehringer.info)
302 points pehringer | 3 comments | | HN request time: 0.611s | source

A quick dive into the Plan9 assembly I picked up while developing my SIMD package for Go, and how it led to a 450% performance boost in calculations.
Show context
rob74 ◴[] No.41880278[source]
In case it's not obvious, the "Plan 9" in the Go Assembler's name comes from https://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs, and the reason for that is of course that two of the "Go founders" (Rob Pike and Ken Thompson) are Bell Labs alumni. Some more background on the Go assembler: https://go.dev/doc/asm
replies(3): >>41880349 #>>41880650 #>>41881656 #
colechristensen ◴[] No.41880349[source]
The same people used the same name for two computer related projects.

That's certainly an ... interesting choice.

replies(3): >>41880376 #>>41880498 #>>41883038 #
lloeki ◴[] No.41880498[source]
It is, essentially, the same project. Plan9 is the umbrella term for the whole operating system.

https://plan9.io/sys/doc/comp.html

IIRC before Go was self compiling, it was compiled using 9c, and its architecture inherits from 9c.

EDIT: some nearby threads got the details better!

replies(2): >>41880609 #>>41880619 #
1. floren ◴[] No.41880609[source]
> IIRC before Go was self compiling, it was compiled using 9c, and its architecture inherits from 9c.

Back in those days I actually found that, with a few small tweaks, I could compile the Plan 9 operating system using Go's C suite. We didn't pursue it further but this was one of the options we looked into for cross-compiling Plan 9 from other operating systems.

replies(1): >>41881173 #
2. stonogo ◴[] No.41881173[source]
Since to Go C suite was ported Plan 9 compilers, I'm not sure why this would be a surprise. Since I'm obviously missing something would you share your thoughts on what challenges you expected?
replies(1): >>41881498 #
3. floren ◴[] No.41881498[source]
It wasn't any surprise, nor did I intend to imply it was surprising, just relaying an anecdote. There were a few differences that required small tweaks to the source, but we got the Plan 9 kernel compiled with the Go C compilers in a day.