板子上的两个核(0核和1核)同时运行,1核负责重复向0x0c080000写数值0x11111111;同时0核重复读取0x0c080000中的数据,读取到数据以后就置0。
但是当我暂停程序查看共享内存的时候,0核看到的是0x00000000,1核看到的是0x11111111。请问这个问题是怎么回事?是不是cache更新的问题?内存的访问是不是有冲突,怎么解决?
Andy Yin1:
您好,
对于SL2需要手动维护L1cache一致性,可以再查看内存时通过勾上或去掉memory窗口的cache 选项查看是否有区别,如有的话肯定是cache 一致性导致的。