[
https://issues.apache.org/jira/browse/ARROW-8227?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yibo Cai updated ARROW-8227:
----------------------------
Description:
Arrow supports wide range of hardware(x86,arm,ppc?) +
os(linux,windows,macos,others?) + compiler(gcc,clang,msvc,others?). Managing
platform dependent code is non-trivial. This Jira aims to refine(or mess up)
defining SIMD feature macros.
Simd feature definitions are scattered in source codes now. Better to define
them into one place for easy management, possibly in cmake.
was:
Arrow supports wide range of hardware(x86,arm,ppc?) +
os(linux,windows,macos,others?) + compiler(gcc,clang,msvc,others?). Managing
platform dependent code is non-trivial. This Jira aims to refine(or mess up)
simd related code framework.
Some goals: Move simd feature definition into one place, possibly in cmake, and
reduce compiler based ifdef is source code. Manage simd code in one place, but
leave non-simd default implementations where they are. Shouldn't introduce any
performance penalty, prefer direct inline to runtime dispatcher. Code should be
easy to maintain, expand, and hard to make mistakes.
> [C++] Propose refining SIMD code framework
> ------------------------------------------
>
> Key: ARROW-8227
> URL: https://issues.apache.org/jira/browse/ARROW-8227
> Project: Apache Arrow
> Issue Type: Improvement
> Components: C++
> Reporter: Yibo Cai
> Assignee: Yibo Cai
> Priority: Major
>
> Arrow supports wide range of hardware(x86,arm,ppc?) +
> os(linux,windows,macos,others?) + compiler(gcc,clang,msvc,others?). Managing
> platform dependent code is non-trivial. This Jira aims to refine(or mess up)
> defining SIMD feature macros.
> Simd feature definitions are scattered in source codes now. Better to define
> them into one place for easy management, possibly in cmake.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)