[go] mime: reduce allocs incurred by ParseMediatype

1 view
Skip to first unread message

Gopher Robot (Gerrit)

unread,
Sep 30, 2025, 4:40:37 PM (yesterday) Sep 30
to jub0bs, Gerrit Bot, goph...@pubsubhelper.golang.org, golang-...@googlegroups.com, Carlos Amedee, Cherry Mui, David Chase, Keith Randall, Emmanuel Odeke, Damien Neil, Go LUCI, golang-co...@googlegroups.com

Gopher Robot submitted the change

Change information

Commit message:
mime: reduce allocs incurred by ParseMediaType

This change is mostly gardening. It simplifies ParseMediaType and its
helper functions and reduces the amount of allocations they incur.

Here are some benchmark results:

goos: darwin
goarch: amd64
pkg: mime
cpu: Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz
│ old │ new │
│ sec/op │ sec/op vs base │
ParseMediaType-8 55.26µ ± 1% 54.54µ ± 1% -1.30% (p=0.000 n=20)
ParseMediaTypeBogus-8 3.551µ ± 0% 3.427µ ± 0% -3.48% (p=0.000 n=20)
geomean 14.01µ 13.67µ -2.39%

│ old │ new │
│ B/op │ B/op vs base │
ParseMediaType-8 38.48Ki ± 0% 37.38Ki ± 0% -2.85% (p=0.000 n=20)
ParseMediaTypeBogus-8 2.531Ki ± 0% 2.469Ki ± 0% -2.47% (p=0.000 n=20)
geomean 9.869Ki 9.606Ki -2.66%

│ old │ new │
│ allocs/op │ allocs/op vs base │
ParseMediaType-8 457.0 ± 0% 425.0 ± 0% -7.00% (p=0.000 n=20)
ParseMediaTypeBogus-8 25.00 ± 0% 21.00 ± 0% -16.00% (p=0.000 n=20)
geomean 106.9 94.47 -11.62%
Change-Id: I51198b40396afa51531794a57c50aa88975eae1d
GitHub-Last-Rev: c44e2a2577386d1d776498d29e31821326e20b92
GitHub-Pull-Request: golang/go#75565
Reviewed-by: Emmanuel Odeke <emma...@orijtech.com>
Reviewed-by: Carlos Amedee <car...@golang.org>
Reviewed-by: Sean Liao <se...@liao.dev>
Reviewed-by: Damien Neil <dn...@google.com>
Auto-Submit: Emmanuel Odeke <emma...@orijtech.com>
Files:
  • M src/mime/mediatype.go
Change size: M
Delta: 1 file changed, 35 insertions(+), 32 deletions(-)
Branch: refs/heads/master
Submit Requirements:
  • requirement satisfiedCode-Review: +2 by Sean Liao, +2 by Emmanuel Odeke, +2 by Damien Neil, +1 by Carlos Amedee
  • requirement satisfiedTryBots-Pass: LUCI-TryBot-Result+1 by Go LUCI
Open in Gerrit
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: merged
Gerrit-Project: go
Gerrit-Branch: master
Gerrit-Change-Id: I51198b40396afa51531794a57c50aa88975eae1d
Gerrit-Change-Number: 705715
Gerrit-PatchSet: 5
Gerrit-Owner: Gerrit Bot <letsus...@gmail.com>
Gerrit-Reviewer: Carlos Amedee <car...@golang.org>
Gerrit-Reviewer: Cherry Mui <cher...@google.com>
Gerrit-Reviewer: Damien Neil <dn...@google.com>
Gerrit-Reviewer: David Chase <drc...@google.com>
Gerrit-Reviewer: Emmanuel Odeke <emma...@orijtech.com>
Gerrit-Reviewer: Gopher Robot <go...@golang.org>
Gerrit-Reviewer: Keith Randall <k...@golang.org>
Gerrit-Reviewer: Sean Liao <se...@liao.dev>
Gerrit-CC: jub0bs <jub0bsin...@gmail.com>
open
diffy
satisfied_requirement
Reply all
Reply to author
Forward
0 new messages