在将Python数组/列表地址传递给C进行处理之前尝试使其对齐
在Python 3.6+中编写了一些要在C中调用的函数,并且想知道如何在将数组/列表内存地址传递给C之前利用它确保地址的对齐(32,64,128,...),以利用AVX2,SSE2等...
我已经用的很好。事情如何运作没有问题。不,我只是想知道:
在C函数(gcc)中,我可以做(在生成的汇编代码上看起来也不错):
__attribute__((aligned(32))) int *a = array; // array passed in from Python
,然后我编写了相应的C代码以通过gcc进行优化……它可以满足我的需求。是。但是有没有办法在Python端预先进行此操作(对齐)?