Remix.run Logo
Zero-copy in Go: sendfile, splice, and the cost of io.Copy(segflow.github.io)
38 points by mrngm 3 hours ago | 6 comments
sanxiyn an hour ago | parent | next [-]

A good reminder. It is surprising first time you encounter it.

Same for Rust. As https://doc.rust-lang.org/stable/std/io/fn.copy.html says, std::io::copy can use copy_file_range(2), sendfile(2), or splice(2).

mike_hock an hour ago | parent | prev | next [-]

Zero-Copy in Go: Why magic is an antipattern, and: performance is observable behavior.

sanxiyn an hour ago | parent [-]

What would you prefer?

I do think it is criminal this is not documented (https://pkg.go.dev/io#Copy), but I think io.Copy is fine as an API.

joaohaas 15 minutes ago | parent | prev | next [-]

Interesting premise for a post, but I had to stop midway due to the AI slop writing adding meaningless information.

throwrioawfo an hour ago | parent | prev [-]

Ugh, AI slop writing.

drivebyhooting 12 minutes ago | parent [-]

Definitely written by codex.