Skip to content

Commit

Permalink
quic: increase the buffer size used for encoding qlogs
Browse files Browse the repository at this point in the history
  • Loading branch information
marten-seemann committed Aug 23, 2022
1 parent 0efe1e5 commit dc450dc
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions p2p/transport/quic/tracer.go
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,9 @@ func newQlogger(qlogDir string, role logging.Perspective, connID []byte) io.Writ
return &qlogger{
f: f,
filename: finalFilename,
Writer: bufio.NewWriter(f),
// The size of a qlog file for a raw file download is ~2/3 of the amount of data transferred.
// bufio.NewWriter creates a buffer with a buffer of only 4 kB, leading to a large number of syscalls.
Writer: bufio.NewWriterSize(f, 128<<10),
}
}

Expand All @@ -80,7 +82,7 @@ func (l *qlogger) Close() error {
return err
}
defer f.Close()
buf := bufio.NewWriter(f)
buf := bufio.NewWriterSize(f, 128<<10)
c, err := zstd.NewWriter(buf, zstd.WithEncoderLevel(zstd.SpeedFastest), zstd.WithWindowSize(32*1024))
if err != nil {
return err
Expand Down

0 comments on commit dc450dc

Please sign in to comment.