- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Please rompt how correctly vectorizate this cycle:
Outputs the following message:
[bash]_CRT_ALIGN(16) const UINT8 XorBitsArray[] = {...}; _CRT_ALIGN(16) UINT8 MassX[] = {...}; _CRT_ALIGN(16) UINT8 MassR[] = {...}; for (UINT i = 0; i < sPeriodLenth; i++ ) { MassR = XorBitsArray[ MassX ]; }[/bash]
Outputs the following message:
[bash]loop was not vectorized: unsupported data type[/bash]
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
"vectorizing" such a loop (packing operands into an _m128 before storing) would require either SSE4.1 (or newer) instructions or #pragma vector aligned. It may work only with indexing by an int array. In such a simple loop, packing is unlikely to have an advantage, as the hardware packs the operands into a fill buffer anyway before updating cache.
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page