raulcd commented on issue #49640:
URL: https://github.com/apache/arrow/issues/49640#issuecomment-4176272079

   I've been able to replicate and got to this specific function registration 
`arrow::compute::internal::AddSumAvx2AggKernels(arrow::compute::ScalarAggregateFunction*)`
 from the backtrace:
   ```
   Reading 
/home/raulcd/code/test-avx/lib/python3.13/site-packages/pyarrow/_compute.cpython-313-x86_64-linux-gnu.so
 from remote target...                                                          
                      
   [New Thread 70315.70417]
   ...
   
   Thread 1 received signal SIGILL, Illegal instruction.
   0x00007fda73a3cb42 in 
arrow::compute::internal::AddSumAvx2AggKernels(arrow::compute::ScalarAggregateFunction*)
 ()
      from 
target:/home/raulcd/code/test-avx/lib/python3.13/site-packages/pyarrow/libarrow_compute.so.2300
   ```
   The guard seems correct to me:
   
https://github.com/apache/arrow/blob/82847d8f6dae87e709d284b4b871da1424e93a25/cpp/src/arrow/compute/kernels/aggregate_basic.cc#L1065-L1069
   
   It seems that we pick the flags from `/proc/cpuinfo` and that contains the 
host CPU flags not the target so it seems to me that is an issue under qemu.
   
   cc @AntoinePrv @pitrou what are your thoughts?
   
   BTW `ARROW_USER_SIMD_LEVEL` works for me:
   ```
   $ qemu-x86_64 -cpu Westmere -L / -E ARROW_USER_SIMD_LEVEL=SSE4_2 $(which 
python) -c 'import pyarrow._compute; import pyarrow; print(pyarrow.__version__)'
   23.0.1
   ```


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