diff options
author | Meng Zhuo <mengzhuo1203@gmail.com> | 2018-03-12 07:32:28 +0000 |
---|---|---|
committer | Ian Lance Taylor <iant@golang.org> | 2018-03-27 13:21:27 +0000 |
commit | ea59ebd3387ab93b826606ea90a4149dad7b4e50 (patch) | |
tree | 2bb7bbd413c4e31da3b8f5b52286e0f8cab2b5fa /src/runtime/os_linux_novdso.go | |
parent | b63b0f2b75c71b9e80e42488aaa7ddf1a5da11ae (diff) | |
download | go-ea59ebd3387ab93b826606ea90a4149dad7b4e50.tar.gz go-ea59ebd3387ab93b826606ea90a4149dad7b4e50.zip |
runtime: use vDSO for clock_gettime on linux/arm64
Use the __vdso_clock_gettime fast path via the vDSO on linux/arm64 to
speed up nanotime and walltime. This results in the following
performance improvement for time.Now on Cavium ThunderX:
name old time/op new time/op delta
TimeNow 442ns ± 0% 163ns ± 0% -63.16% (p=0.000 n=10+10)
And benchmarks on VDSO
BenchmarkClockVDSOAndFallbackPaths/vDSO 10000000 166 ns/op
BenchmarkClockVDSOAndFallbackPaths/Fallback 3000000 456 ns/op
Change-Id: I326118c6dff865eaa0569fc45d1fc1ff95cb74f6
Reviewed-on: https://go-review.googlesource.com/99855
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'src/runtime/os_linux_novdso.go')
-rw-r--r-- | src/runtime/os_linux_novdso.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/runtime/os_linux_novdso.go b/src/runtime/os_linux_novdso.go index b5a6b0e947..ee4a7a95c2 100644 --- a/src/runtime/os_linux_novdso.go +++ b/src/runtime/os_linux_novdso.go @@ -3,7 +3,7 @@ // license that can be found in the LICENSE file. // +build linux -// +build !386,!amd64,!arm +// +build !386,!amd64,!arm,!arm64 package runtime |