guyuqi opened a new pull request #12138:
URL: https://github.com/apache/arrow/pull/12138
### Benchmark:
Before:
```
BenchmarkSet_32-46 50375077 20.79 ns/op
1539.46 MB/s
BenchmarkSet_64-46 33885868 35.44 ns/op
1806.12 MB/s
BenchmarkSet_500-46 4830316 244.8 ns/op
2042.77 MB/s
BenchmarkSet_512-46 4715967 250.0 ns/op
2047.66 MB/s
BenchmarkSet_1000-46 2502268 473.5 ns/op
2112.03 MB/s
BenchmarkSet_1024-46 2455328 484.5 ns/op
2113.36 MB/s
BenchmarkSet_2000-46 1284357 932.9 ns/op
2143.94 MB/s
BenchmarkSet_2048-46 1254939 952.7 ns/op
2149.64 MB/s
BenchmarkSet_4000-46 649353 1846 ns/op
2166.42 MB/s
BenchmarkSet_4096-46 632190 1892 ns/op
2164.46 MB/s
BenchmarkSet_8000-46 277814 3682 ns/op
2172.91 MB/s
BenchmarkSet_8192-46 281846 3774 ns/op
2170.57 MB/s
```
After:
```
BenchmarkSet_32-46 124619421 9.609 ns/op
3330.07 MB/s
BenchmarkSet_64-46 108461996 11.05 ns/op
5793.86 MB/s
BenchmarkSet_500-46 30755696 34.08 ns/op
14671.42 MB/s
BenchmarkSet_512-46 38423780 26.72 ns/op
19164.37 MB/s
BenchmarkSet_1000-46 25968873 43.92 ns/op
22770.37 MB/s
BenchmarkSet_1024-46 25674890 41.33 ns/op
24775.83 MB/s
BenchmarkSet_2000-46 15052582 75.31 ns/op
26557.55 MB/s
BenchmarkSet_2048-46 15718210 70.64 ns/op
28994.00 MB/s
BenchmarkSet_4000-46 8946339 130.3 ns/op
30700.07 MB/s
BenchmarkSet_4096-46 8686082 133.1 ns/op
30764.04 MB/s
BenchmarkSet_8000-46 4817458 245.3 ns/op
32614.89 MB/s
BenchmarkSet_8192-46 4715134 250.6 ns/op
32686.20 MB/s
```
Get 3x ~ 15x performance uplift.
### Test result: Passed
ARM_ENABLE_EXT=NEON make test
```
go test ./...
ok github.com/apache/arrow/go/v7/arrow (cached)
ok github.com/apache/arrow/go/v7/arrow/array (cached)
ok github.com/apache/arrow/go/v7/arrow/arrio (cached)
ok github.com/apache/arrow/go/v7/arrow/bitutil (cached)
? github.com/apache/arrow/go/v7/arrow/cdata [no test files]
ok github.com/apache/arrow/go/v7/arrow/csv (cached)
ok github.com/apache/arrow/go/v7/arrow/decimal128 (cached)
? github.com/apache/arrow/go/v7/arrow/endian [no test files]
ok github.com/apache/arrow/go/v7/arrow/flight (cached)
ok github.com/apache/arrow/go/v7/arrow/float16 (cached)
? github.com/apache/arrow/go/v7/arrow/internal/arrdata [no test
files]
ok github.com/apache/arrow/go/v7/arrow/internal/arrjson (cached)
ok github.com/apache/arrow/go/v7/arrow/internal/cpu (cached)
? github.com/apache/arrow/go/v7/arrow/internal/debug [no test
files]
? github.com/apache/arrow/go/v7/arrow/internal/flatbuf [no test
files]
? github.com/apache/arrow/go/v7/arrow/internal/flight_integration [no
test files]
?
github.com/apache/arrow/go/v7/arrow/internal/flight_integration/cmd/arrow-flight-integration-client
[no test files]
?
github.com/apache/arrow/go/v7/arrow/internal/flight_integration/cmd/arrow-flight-integration-server
[no test files]
? github.com/apache/arrow/go/v7/arrow/internal/testing/gen [no
test files]
ok github.com/apache/arrow/go/v7/arrow/internal/testing/tools
(cached)
? github.com/apache/arrow/go/v7/arrow/internal/testing/types [no
test files]
ok github.com/apache/arrow/go/v7/arrow/ipc (cached)
ok github.com/apache/arrow/go/v7/arrow/ipc/cmd/arrow-cat (cached)
ok github.com/apache/arrow/go/v7/arrow/ipc/cmd/arrow-file-to-stream
(cached)
ok
github.com/apache/arrow/go/v7/arrow/ipc/cmd/arrow-json-integration-test (cached)
ok github.com/apache/arrow/go/v7/arrow/ipc/cmd/arrow-ls (cached)
ok github.com/apache/arrow/go/v7/arrow/ipc/cmd/arrow-stream-to-file
(cached)
ok github.com/apache/arrow/go/v7/arrow/math (cached)
ok github.com/apache/arrow/go/v7/arrow/memory (cached)
ok github.com/apache/arrow/go/v7/arrow/scalar (cached)
ok github.com/apache/arrow/go/v7/arrow/tensor (cached)
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]