offload error :process on the device 0 was terminated by signal 11

手頭上的項目用到了MIC,作爲一個新的集成衆核協處理器,它非常容易上手,對代碼做很小的修改就能在MIC上跑出很好的效果。

今天調試程序時,出現瞭如下錯誤,在此處做個記錄:

offload error :process on the device 0 was terminated by signal 11

網上很有太多資料,出現這種情況的原因可能很多。

逐句調試後發現我程序中的問題語句,

_mm512_store_epi32(void* mt, __m512i v1);

指針mt必須64位對齊。



附:

_mm512_store_epi32/_mm512_mask_store_epi32

Stores int32 vector. Corresponding instruction is VMOVDQA32. This intrinsic only applies to Intel® Many Integrated Core Architecture (Intel® MIC Architecture).

Syntax

Without Mask

extern void __cdecl _mm512_store_epi32(void* mt, __m512i v1);

With Mask

extern void __cdecl _mm512_mask_store_epi32(void* mt, __mmask16 k1, __m512i v1);

Arguments

v1

source vector to store elements from

k1

writemask

mt

memory location to store vector elements (must be 64-byte aligned)

Description

Stores 16 32-bit integer elements of int32 vector v1 to the memory address mt . The address mt must be 64-byte-aligned.

In the masked variant, only those elements with the corresponding bit set in vector mask k1 are stored to memory. Elements in the destination memory vector with the corresponding bit clear in k1 retain their previous value.

Returns

Returns nothing.


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章