js8544 commented on issue #38623:
URL: https://github.com/apache/arrow/issues/38623#issuecomment-1801670897

   > is it supposed to run any x86_64 platforms even without sse4_2
   
   It depends. Do you plan to compile it on a machine with SSE4.2 support and 
run it on machines without? Then you should propably pass 
`-DARROW_C_FLAGS_${BUILD_TYPE}=-march=<your target architecture>` (i.e. cross 
compiling) to CMake  to disable auto-generated SSE4.2 instructions (see 
[this](https://arrow.apache.org/docs/developers/cpp/building.html#manual-configuration)),
 as well as `ARROW_HAVE_SSE4_2=OFF` for arrow's explicit SSE4.2 intrinsics. 
   
   Also if you plan to use it on Windows, `POPCNT` may be a required 
instruction (see https://github.com/apache/arrow/issues/21840).
   
   > it will dynamically choose max simd level we can use
   
   Nope. Only the compute functions do this. Other places use the compile time 
constant `ARROW_HAVE_SSE4_2`.


-- 
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]

Reply via email to