- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
How can I load the unsigned char to a __m512i vector on KNL?
I can't find the similar instrinsic like extload(I use extload on KNC) on KNL. On the other hand the AVX512-BW is not supported on KNL as well, so I can't use _mm512_mask_load_epi8 to load a uint8. Is there anyway could load the unsigned char efficiently to a __m512i?
Thank you
- Tags:
- Intel® Advanced Vector Extensions (Intel® AVX)
- Intel® Streaming SIMD Extensions
- Parallel Computing
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I guess you can load 16 bytes into __m128i and then use _mm512_cvtepi8_epi32/_mm512_cvtepu8_epi32 to convert the bytes to 32-bit integers for processing. AVX-512F does not support operating on 8-bit integers directly.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I guess you can load 16 bytes into __m128i and then use _mm512_cvtepi8_epi32/_mm512_cvtepu8_epi32 to convert the bytes to 32-bit integers for processing. AVX-512F does not support operating on 8-bit integers directly.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I just tested it. It seems working well.
Thank you very much!
andysem wrote:
I guess you can load 16 bytes into __m128i and then use _mm512_cvtepi8_epi32/_mm512_cvtepu8_epi32 to convert the bytes to 32-bit integers for processing. AVX-512F does not support operating on 8-bit integers directly.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page