go/src/internal
limeidan 7bc714d601 internal/bytealg: optimize the function indexbyte using SIMD on loong64
goos: linux
goarch: loong64
pkg: bytes
cpu: Loongson-3C5000 @ 2200.00MHz
              │     old      │                 new                 │
              │    sec/op    │   sec/op     vs base                │
IndexByte/10     19.32n ± 0%   11.84n ± 0%  -38.72% (p=0.000 n=10)
IndexByte/32     49.34n ± 0%   14.11n ± 0%  -71.40% (p=0.000 n=10)
IndexByte/4K    5608.0n ± 0%   138.8n ± 0%  -97.52% (p=0.000 n=10)
IndexByte/4M    3822.8µ ± 0%   119.4µ ± 0%  -96.88% (p=0.000 n=10)
IndexByte/64M   61.826m ± 1%   3.812m ± 0%  -93.83% (p=0.000 n=10)
geomean          16.61µ        1.602µ       -90.35%

goos: linux
goarch: loong64
pkg: bytes
cpu: Loongson-3A6000-HV @ 2500.00MHz
              │      old      │                 new                  │
              │    sec/op     │    sec/op     vs base                │
IndexByte/10      6.809n ± 0%   5.804n ±  0%  -14.75% (p=0.000 n=10)
IndexByte/32     16.015n ± 0%   6.404n ±  0%  -60.01% (p=0.000 n=10)
IndexByte/4K    1651.00n ± 0%   52.83n ±  0%  -96.80% (p=0.000 n=10)
IndexByte/4M    1680.76µ ± 0%   91.10µ ±  0%  -94.58% (p=0.000 n=10)
IndexByte/64M    26.878m ± 0%   2.010m ± 27%  -92.52% (p=0.000 n=10)
geomean           6.054µ        815.0n        -86.54%

Change-Id: Ib75b997249708f921c6717eba43543c6650bf376
Reviewed-on: https://go-review.googlesource.com/c/go/+/668055
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: abner chenc <chenguoqi@loongson.cn>
Reviewed-by: Cherry Mui <cherryyz@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: sophie zhao <zhaoxiaolin@loongson.cn>
2025-05-08 19:13:30 -07:00
..
abi runtime: schedule cleanups across multiple goroutines 2025-05-08 11:10:33 -07:00
asan
bisect
buildcfg runtime: commit to spinbitmutex GOEXPERIMENT 2025-04-22 10:00:26 -07:00
bytealg internal/bytealg: optimize the function indexbyte using SIMD on loong64 2025-05-08 19:13:30 -07:00
byteorder internal/byteorder: use canonical Go casing in names 2024-11-20 20:59:28 +00:00
cfg cmd/dist: add GOFIPS140 setting 2024-11-19 18:48:15 +00:00
chacha8rand internal/chacha8rand: implement func block in assembly 2025-04-15 04:54:59 -07:00
copyright internal/copyright: close files 2024-11-21 23:59:17 +00:00
coverage all: remove coverageredesign experiment 2025-02-03 12:10:28 -08:00
cpu cmd/compile,internal/cpu,runtime: intrinsify math/bits.OnesCount on riscv64 2025-05-01 05:57:41 -07:00
dag
diff
exportdata internal/exportdata: add missing return 2025-01-03 08:43:47 -08:00
filepathlite path/filepath: use RtlIsDosDeviceName_U to detect Windows devices 2025-02-19 09:41:00 -08:00
fmtsort
fuzz runtime, internal/fuzz: add comparison tracing for libFuzzer on loong64 2025-04-24 23:16:24 -07:00
goarch internal/abi: use arch family instead of arch string 2025-02-25 06:55:59 -08:00
godebug all: use testenv.GoToolPath instead of hardcoding go 2025-02-25 12:01:35 -08:00
godebugs internal/godebugs: fix changed version for winsymlink and winreadlinkvolume to 1.23 2025-03-18 18:13:33 -07:00
goexperiment internal/goexperiment: add Green Tea GC goexperiment 2025-04-23 08:07:17 -07:00
goos internal/goos: fix bug in gengoos.go 2024-12-11 09:54:18 -08:00
goroot
gover
goversion internal/goversion: update Version to 1.25 2025-02-03 07:28:02 -08:00
itoa
lazyregexp
lazytemplate
msan
nettrace
obscuretestdata
oserror
pkgbits pkgbits: consolidate doc.go to only relevant details 2025-05-08 08:09:00 -07:00
platform cmd,runtime: enable race detector on loong64 2025-05-07 11:52:31 -07:00
poll os,internal/poll: disassociate handle from IOCP in File.Fd 2025-04-24 06:51:09 -07:00
profile internal,runtime: use the builtin clear 2025-04-18 04:21:17 -07:00
profilerecord
race internal/runtime/maps: enable race for map functions in internal/runtime/maps 2024-10-30 14:59:34 +00:00
reflectlite all: use slices.Contains to simplify code 2025-02-03 08:47:55 -08:00
routebsd all: gofmt -w 2025-02-25 11:49:16 -08:00
runtime internal/runtime/maps: make clear also erase tombstones 2025-05-07 12:44:00 -07:00
saferio
singleflight
stringslite
sync internal/sync: fix typo of panic message 2025-01-08 09:02:13 -08:00
synctest runtime, testing/synctest: stop advancing time when main goroutine exits 2025-05-07 13:14:25 -07:00
syscall net,os: support converting between *os.File and net.Conn on Windows 2025-05-05 04:05:18 -07:00
sysinfo
syslist cmd/dist, internal/syslist: update UnixOS comments 2024-11-02 04:21:27 +00:00
testenv runtime: skip TestCgoCallbackPprof on platforms with broken profiling 2025-03-17 06:04:15 -07:00
testhash internal/testhash: move cryptotest.TestHash to shared package 2025-05-08 16:41:44 -07:00
testlog
testpty
trace internal/trace: emit sync event before deferred spilled error 2025-02-14 09:59:37 -08:00
txtar
types go/types, types2: fix failing error message test for s390x 2025-04-08 08:25:47 -07:00
unsafeheader
xcoff
zstd internal,runtime: use the builtin clear 2025-04-18 04:21:17 -07:00