- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We came to find that multiplication of an array (F32, F64, I32) with a scalar of 0 leaves (most of) the array untouched. For F32, this behavior starts with array sizes of 2^29 and up; for F64, it starts at 2^28 already. For I32 also, the behavior starts from 2^29. We have also tried CF32 and CF64 but they seem to work fine (checked until 2^30).
Description | IPP Function | Number of elements at which issue occurs |
F32 in place | ippsMulC_32f_I | 2^29 |
F64 in place | ippsMulC_64f_I | 2^28 |
I32 in place | ippsMulC_32s_Isfs | 2^29 |
CF32 in place | ippsMulC_32fc_I | no issue observed up to 2^29 |
CF64 in place | ippsMulC_64fc_I | no issue observed up to 2^29 |
F32 out of place | ippsMulC_32f | 2^29 |
F64 out of place | ippsMulC_64f | 2^28 |
I32 out of place | ippsMulC_32s_Sfs | 2^29 |
CF32 out of place | ippsMulC_32fc | no issue observed up to 2^30 |
CF64 out of place | ippsMulC_64fc | no issue observed up to 2^30 |
I have attached a standalone C++ code which reproduces the behavior.
The behavior was checked on IPP 2021.8.0.
The example code creates an array of fixed size. It runs correctly for F32 (until size 2^29-1), but will show the error for F64. Any larger array size will show the error for both.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, that's correct that not all IPP functions are available for platform - aware extensions ( to support of 64-bit integer size). In particularly, this ippsMulC_*.* is not available for platform-aware capabilities. We are continue to extend the list of such functions from case by case.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ok, I am no Intel staff. But I assume it has to do with that:
This burden of the 32-bit size limitation of many many IPP functions is quite often dangerous for our 64-bit applications, where we have to deal with huge data sets. Creation of some platform aware 64-bit enabled functions are a good start by Intel, but my wish is make all IPP function properly usable in a 64-bit environment.
Kind Regards
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, that's correct that not all IPP functions are available for platform - aware extensions ( to support of 64-bit integer size). In particularly, this ippsMulC_*.* is not available for platform-aware capabilities. We are continue to extend the list of such functions from case by case.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Animesh Baranawal,
Thanks for posting in Intel communities.
Thanks for reporting this issue. We were able to reproduce the same at our end and we have informed the development team about it. We will get back to you with an update soon.
Best Regards,
Shanmukh.SS
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page