Daniel Jewell created ARROW-10992:
-------------------------------------

             Summary: [C++] Arrow Cmake/-march compile flags conflict with 
Intel compiler (icc/icpc)
                 Key: ARROW-10992
                 URL: https://issues.apache.org/jira/browse/ARROW-10992
             Project: Apache Arrow
          Issue Type: Bug
          Components: C++
    Affects Versions: 2.0.0
            Reporter: Daniel Jewell


Compiler support for Intel ICC/ICPC was added in ARROW-10849

However, there are still a few cases where 
{code:java}
-march=<haswell|skylake-avx512>{code}
 

is being added to C/CXXFLAGS. While this kinda-sorta works, for icc/icpc there 
is different set of optimization options (I use " -xCORE-AVX2" typically). The 
list of optimization options is quite verbose (well beyond what just the flags 
show) and this really needs the eyes of someone who is an expert on just what 
exactly happens to the generated code with the specific flags. 

 

Specific warnings:  

 
{code:java}
icpc: command line warning #10121: overriding '-xCORE-AVX2' with 
'-march=skylake-avx512'
icpc: command line warning #10121: overriding '-xCORE-AVX2' with 
'-march=skylake-avx512'
icpc: command line warning #10006: ignoring unknown option '-mbmi2'
icpc: command line warning #10121: overriding '-xCORE-AVX2' with 
'-march=haswell'
icpc: command line warning #10121: overriding '-xCORE-AVX2' with 
'-march=haswell'
    

{code}
 

The haswell warning appears to come from the compilation of 
cpp/src/arrow/util/bpacking_avx2.cc

 

See: 
[https://software.intel.com/content/www/us/en/develop/articles/performance-tools-for-software-developers-intel-compiler-options-for-sse-generation-and-processor-specific-optimizations.html]

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to