有没有人来帮小弟我运行一个SIMD的简单程序。谢谢了

有没有人来帮我运行一个SIMD的简单程序。多谢了!
SIMD代码:

#include "testfun.h"
#include <intrin.h> 
#include <iostream>
using namespace std; 

#define dataLen  8000

void testfun()
{
    __m256 *buf1 = new __m256[dataLen/8];
__m256 *buf2 = new __m256[dataLen/8];

for(int i=0; i<dataLen/8; i++)
{
buf2[i] = _mm256_set1_ps(i);
        cout<<buf2->m256_f32[0]<< endl;
}
 
}


这段代码在buf2[i] = _mm256_set1_ps(i);赋值时会出现问题,一直不知道为什么
奇怪的是如果将buf2放到buf1之前去new,则不会出现问题,此时buf1赋值会出问题!

------解决方案--------------------
要求操作的内存地址从16的整数倍开始?