P‘s are logical processors, M‘s are OS Threads and G‘s are goroutines. I don’t know who coined these terms or abbreviations but I first heard of them from Bill Kennedy from ArdanLabs in his ultimate go course. So I think these are go specific terms. Maybe the go Team introduced them prior.
The document's intended audience is Go runtime authors, so yes, of course it assumes the reader know how the Go runtime works.
A somewhat out of date explanation of Ps, Ms, and Gs by yours truly:
Edit: It seems like
- P: Logical CPU cores
- M: OS-level threads
- G: Goroutines