Skip to content

Commit 53f1312

Browse files
committed
internal/abi, internal/buildcfg: enable regabi on riscv64 by default
This CL we turn regabi on by default. Later CLs will clean up fallback code. name old time/op new time/op delta BinaryTree17 35.2s ± 2% 31.0s ± 1% -11.87% (p=0.008 n=5+5) Fannkuch11 10.8s ± 1% 11.0s ± 1% +1.73% (p=0.008 n=5+5) FmtFprintfEmpty 379ns ± 2% 389ns ± 4% ~ (p=0.095 n=5+5) FmtFprintfString 746ns ± 5% 693ns ± 2% -7.10% (p=0.008 n=5+5) FmtFprintfInt 769ns ± 3% 744ns ± 2% -3.23% (p=0.032 n=5+5) FmtFprintfIntInt 1.14µs ± 3% 1.09µs ± 4% -4.51% (p=0.032 n=5+5) FmtFprintfPrefixedInt 5.04µs ± 0% 4.53µs ± 1% -10.14% (p=0.008 n=5+5) FmtFprintfFloat 1.82µs ± 4% 1.67µs ± 4% -8.12% (p=0.008 n=5+5) FmtManyArgs 3.92µs ± 3% 3.67µs ± 2% -6.20% (p=0.008 n=5+5) GobDecode 137ms ± 1% 132ms ± 1% -4.13% (p=0.008 n=5+5) GobEncode 93.9ms ± 1% 89.3ms ± 2% -4.84% (p=0.008 n=5+5) Gzip 2.54s ± 1% 2.59s ± 1% +1.95% (p=0.008 n=5+5) Gunzip 1.39s ± 1% 1.35s ± 0% -3.07% (p=0.008 n=5+5) HTTPClientServer 416µs ± 1% 397µs ± 0% -4.39% (p=0.016 n=5+4) JSONEncode 202ms ± 1% 196ms ± 2% -2.76% (p=0.008 n=5+5) JSONDecode 478ms ± 2% 435ms ± 4% -8.97% (p=0.008 n=5+5) Mandelbrot200 44.1ms ± 0% 44.1ms ± 0% ~ (p=0.151 n=5+5) GoParse 33.7ms ± 1% 31.5ms ± 1% -6.55% (p=0.008 n=5+5) RegexpMatchEasy0_32 624ns ± 6% 548ns ± 6% -12.08% (p=0.008 n=5+5) RegexpMatchEasy0_1K 4.49µs ± 1% 3.59µs ± 1% -20.21% (p=0.008 n=5+5) RegexpMatchEasy1_32 654ns ± 4% 556ns ± 2% -15.01% (p=0.008 n=5+5) RegexpMatchEasy1_1K 6.21µs ± 2% 4.96µs ± 3% -20.22% (p=0.008 n=5+5) RegexpMatchMedium_32 9.78µs ± 5% 8.03µs ± 4% -17.96% (p=0.008 n=5+5) RegexpMatchMedium_1K 280µs ± 4% 223µs ± 5% -20.42% (p=0.008 n=5+5) RegexpMatchHard_32 17.0µs ± 3% 15.2µs ± 3% -10.63% (p=0.008 n=5+5) RegexpMatchHard_1K 520µs ± 4% 485µs ± 6% -6.76% (p=0.008 n=5+5) Revcomp 35.2s ± 1% 35.2s ± 1% ~ (p=0.690 n=5+5) Template 686ms ± 2% 610ms ± 3% -11.09% (p=0.008 n=5+5) TimeParse 1.91µs ± 2% 1.78µs ± 1% -6.86% (p=0.008 n=5+5) TimeFormat 3.04µs ± 2% 2.84µs ± 3% -6.71% (p=0.008 n=5+5) name old speed new speed delta GobDecode 5.59MB/s ± 1% 5.84MB/s ± 1% +4.40% (p=0.008 n=5+5) GobEncode 8.17MB/s ± 1% 8.59MB/s ± 3% +5.14% (p=0.008 n=5+5) Gzip 7.65MB/s ± 1% 7.50MB/s ± 1% -1.96% (p=0.008 n=5+5) Gunzip 13.9MB/s ± 1% 14.4MB/s ± 0% +3.16% (p=0.008 n=5+5) JSONEncode 9.63MB/s ± 1% 9.90MB/s ± 2% +2.83% (p=0.008 n=5+5) JSONDecode 4.06MB/s ± 2% 4.46MB/s ± 4% +9.90% (p=0.008 n=5+5) GoParse 1.72MB/s ± 1% 1.84MB/s ± 1% +6.85% (p=0.008 n=5+5) RegexpMatchEasy0_32 51.4MB/s ± 6% 58.4MB/s ± 6% +13.72% (p=0.008 n=5+5) RegexpMatchEasy0_1K 228MB/s ± 1% 286MB/s ± 1% +25.32% (p=0.008 n=5+5) RegexpMatchEasy1_32 48.9MB/s ± 4% 57.5MB/s ± 2% +17.63% (p=0.008 n=5+5) RegexpMatchEasy1_1K 165MB/s ± 2% 207MB/s ± 3% +25.37% (p=0.008 n=5+5) RegexpMatchMedium_32 3.27MB/s ± 5% 3.99MB/s ± 5% +21.87% (p=0.008 n=5+5) RegexpMatchMedium_1K 3.66MB/s ± 4% 4.60MB/s ± 5% +25.61% (p=0.008 n=5+5) RegexpMatchHard_32 1.88MB/s ± 3% 2.10MB/s ± 3% +12.03% (p=0.008 n=5+5) RegexpMatchHard_1K 1.97MB/s ± 4% 2.11MB/s ± 6% +7.31% (p=0.008 n=5+5) Revcomp 7.23MB/s ± 1% 7.23MB/s ± 1% ~ (p=0.810 n=5+5) Template 2.83MB/s ± 2% 3.18MB/s ± 4% +12.52% (p=0.008 n=5+5) Change-Id: Ie02aa5ebe60607dbb5007da0efae731c36e96399 Reviewed-on: https://go-review.googlesource.com/c/go/+/402374 Reviewed-by: David Chase <[email protected]> TryBot-Result: Gopher Robot <[email protected]> Run-TryBot: mzh <[email protected]> Reviewed-by: Cherry Mui <[email protected]>
1 parent 5020397 commit 53f1312

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

src/internal/buildcfg/exp.go

+3-1
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,8 @@ func ParseGOEXPERIMENT(goos, goarch, goexp string) (*ExperimentFlags, error) {
6565
case "amd64", "arm64", "ppc64le", "ppc64":
6666
regabiAlwaysOn = true
6767
regabiSupported = true
68+
case "riscv64":
69+
regabiSupported = true
6870
}
6971

7072
baseline := goexperiment.Flags{
@@ -128,7 +130,7 @@ func ParseGOEXPERIMENT(goos, goarch, goexp string) (*ExperimentFlags, error) {
128130
flags.RegabiWrappers = true
129131
flags.RegabiArgs = true
130132
}
131-
// regabi is only supported on amd64, arm64, ppc64 and ppc64le.
133+
// regabi is only supported on amd64, arm64, riscv64, ppc64 and ppc64le.
132134
if !regabiSupported {
133135
flags.RegabiArgs = false
134136
}

0 commit comments

Comments
 (0)