Skip to content

IO read performance #28481

Closed
Closed
@tkoolen

Description

@tkoolen

I opened JuliaCI/BaseBenchmarks.jl#223 to track performance of reading a Float64 from an IOBuffer. This currently allocates.

I thought that maybe this would be resolved in 0.7 (elimination of the allocation of the Ref here), but I guess that's being explicitly prevented by the @noinline here.

BufferedStreams.jl has this implementation, which doesn't allocate. Is something like this acceptable for Base as well? I don't think there are any issues with GC roots or alignment in this implementation, are there?

Metadata

Metadata

Assignees

Labels

ioInvolving the I/O subsystem: libuv, read, write, etc.performanceMust go faster

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions