- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I'm working on a parallel working programm, which initializes the ippiFilterBorderSpec struct using ippiFilterBorderInit_32f function in a other thread, than it is later used. When the initialization of all ippiFilterBorderSpecs is done (I use a arbitrary number), they were copyed at a syncronized place, so that the thread using ippiFilterBorder_32f_C1R function doesn't have to do the initialzation due to performance. After any parameter change the ippiFilterBorderSpecs were new initialized and I see, that the content of the ippiFilterBorderSpec struct differs on two places, although the same input parameters were used. The differences appear at byte 80 and byte 96 in the structure, counting from 0. I don't understand why they should differ? Can somebody please tell me more about the composition of the ippiFilterBorderSpec?
Thank & regards,
Hans
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Hans.
Are your pointers provided to ippiFilterBorder_32f_C1R aligned on 64 byte? It is not necessary because ippiFilterBorderGetSize requests memory size with reserve for such alignment. But in this case contents of two specs may differ.
Thanks for your question.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Maybe IppiFilterBorderSpec has internal pointers, like IppiResizeSpec. Don't memcpy the struct, just share the pointer.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
A "spec" structure can shared by the different calls if they are having the same parameters. so it does not need to create another copy.
Thanks,
Chao
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page