Uh oh!
There was an error while loading. Please reload this page.
ARROW-18162: [C++] Add Arm SVE compiler options - #14515
Conversation
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
pitrou
commented
Oct 26, 2022
It seems we could also use SVE in |
cyb70289
commented
Oct 26, 2022
Yes. SVE may be better when longer vector size is beneficial, or to leverage operations (e.g, scatter/gather) not availble in NEON. |
Uh oh!
There was an error while loading. Please reload this page.
As xsimd only supports fixed-size SVE, we have to specify vector size explicitly on command line. And the binary can only run on hardware with that vector size. Otherwise, the code behaviour is undefined. E.g., `cmake -DARROW_SIMD_LEVEL=SVE256 ..` According macro `ARROW_HAVE_SVE256` and cmake variable are defined. We can also leverage compiler auto vectorization to generate size agnostic SVE code without specifying the vector size. E.g., `cmake -DARROW_SIMD_LEVEL=SVE ..` This PR also removes some unused Arm64 arch options.
cyb70289
commented
Oct 31, 2022
@github-actions crossbow submit conda-{linux,osx}-* |
|
cyb70289
commented
Oct 31, 2022
@github-actions crossbow submit conda-linux-* |
Revision: f99b57a Submitted crossbow builds: ursacomputing/crossbow @ actions-19dd1864f2 |
cyb70289
commented
Oct 31, 2022
@github-actions crossbow submit conda-osx-* |
Revision: f99b57a Submitted crossbow builds: ursacomputing/crossbow @ actions-457a7b106d |
cyb70289
commented
Nov 1, 2022
conda-osx-clang-py310/py37 build error looks not related. |
kou
left a comment
There was a problem hiding this comment.
+1 for changes
I re-ran failed jobs.
ursabot
commented
Nov 1, 2022
Benchmark runs are scheduled for baseline = 2a5c773 and contender = 16fd7f3. 16fd7f3 is a master commit associated with this PR. Results will be available as each benchmark for each run completes. |
As xsimd only supports fixed-size SVE, we have to specify vector size explicitly on command line. And the binary can only run on hardware with matched vector size. Otherwise, the code behaviour is undefined. E.g., `cmake -DARROW_SIMD_LEVEL=SVE256 ..` According macro `ARROW_HAVE_SVE256` and cmake variable are defined. We can also leverage compiler auto vectorization to generate size agnostic SVE code without specifying the vector size. E.g., `cmake -DARROW_SIMD_LEVEL=SVE ..` This PR also removes some unused Arm64 arch options. Authored-by: Yibo Cai <yibo.cai@arm.com> Signed-off-by: Yibo Cai <yibo.cai@arm.com>
As xsimd only supports fixed-size SVE, we have to specify vector size
explicitly on command line. And the binary can only run on hardware
with matched vector size. Otherwise, the code behaviour is undefined.
E.g.,
cmake -DARROW_SIMD_LEVEL=SVE256 ..According macro
ARROW_HAVE_SVE256and cmake variable are defined.We can also leverage compiler auto vectorization to generate size
agnostic SVE code without specifying the vector size.
E.g.,
cmake -DARROW_SIMD_LEVEL=SVE ..This PR also removes some unused Arm64 arch options.