فعال کردن موازی سازی یا vectorization با OpenCV - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

فعال کردن موازی سازی یا vectorization با OpenCV

0 امتیاز
سلام.

من می خواستم موازی سازی یا همون vectorization را تو OpenCV فعال کنم.
سوال شده آذر 13, 1392  بوسیله ی hamed_akbari (امتیاز 60)   2 8 11
دوباره تگ گذاری شد بهمن 22, 1392 بوسیله ی BlueBlade

1 پاسخ

+2 امتیاز
 
بهترین پاسخ
1- استفاده از (TBB(Threading Building Blocks هستش که در حالت عادی غیر فعاله این کتابخانه را از اینجا می تونید دانلود کنید و رایگان هستش. توی CMake گزینه with_tbb را تیک بزنید بسیاری از توابع برپایه tbb نوشته شده خودتون هم اگر خواستید می تونید با tbb کد به OpenCV اضافه کنید البته در نسخه های جدید OpenCV از نسخه 2.3 به بعد tbb به صورت built in در OpenCV استفاده میشه.
 
2-استفاده از (IPP(Integrated Performance Primitives هستش که در حالت عادی غیر فعاله این کتابخانه رایگان نیست و نسخه آزمایشی آن را می تونید از اینجا دانلود کنید من نسخه 7.1 را استفاده کردم سرعت اجرایی را در توابع که من استفاده کردم ارتقاء نداد برای استفاده از آن هم در CMake گزینه CV_ENABLE_IPP را تیک بزنید.
 
3-استفاده از sse2 که در حالت عادی فعال هستش و بسیاری از توابع بر پایه آن نوشته شده. گزینه CV_SSE2  را تیک بزنید.
 
4- استفاده از تیک CV_ENABLE_UNROLLED  می باشد که تکنیک unrole را با for 4 تایی یا 8 تایی فعال می کنه که در vs2008 به صورت عادی فعال هستش.
پاسخ داده شده آذر 13, 1392 بوسیله ی مصطفی ساتکی (امتیاز 21,998)   24 34 75
انتخاب شد آذر 14, 1392 بوسیله ی hamed_akbari
...