在softmax中 `#define FLOAT4(value) (reinterpret_cast<float4 *>(&(value))[0])` 这种直接转换会出现边界问题么,还是nvidia内置做了处理呢