اهمیت c++ در امبد دیوایس ها نسبت به پایتون - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

اهمیت c++ در امبد دیوایس ها نسبت به پایتون

+1 امتیاز

سلام و عرض ادب

سوال اول : 

دوستانی که به پیاده سازی مدل های یادگیری عمیق یا پردازش تصویر روی امبدد دیوایس ها کار کرده اند تفاوت پیاده سازی سی با پایتون در این دیوایس ها چقدر هست ؟ آیا نیازی هست به سمت سی روی این دیوایس ها سوپیچ کنیم   ؟ کدوم داکیومنت های پایتون نسبت به سی زیاد هست و زمان دولوپ کمتری برای پایتون نیاز  هست آیا تفاوت ایقدر چشمگیری هست که پیاده سازی ها حتما با سی صورت بگیرد؟

بلاخره کتابخانه هایی مثله numpy / opencv / tensorflow / pytorch , ... بک اندشون با سی هست بنظر من نباید تفاوت چندانی روی پیاده سازی ایجاد بکند.

سوال دوم : 

برای کار با سی آیا تولز و IDE خاصی هست که مثله vscode or pycharam برای پایتون باشد که بشه دیباگ کرد؟ اگر بله  - آیا بصورت remote  هم میشه دیباگ کرد ؟ چه  IDE برای اینکار مناسب هست؟

سوال شده تیر 20, 1399  بوسیله ی minimax (امتیاز 78)   5 20 27

1 پاسخ

+2 امتیاز
سلام. اصولاْ ترین در اکثر فریم ورک ها با پایتون صورت می گیره و inference می تونه در هر زبانی صورت بگیره .البته ابزارهای بهینه سازی مستقل از فریم ورک ها هستند و در برخی مثل تنسورفلو خود فریم ورک ابزار بهینه  سازی مدل را داره.

سوال دقیق  تری که می تونید بپرسید این بود که به جای مدل یادگیری عمیق می پرسید پروژه پردازش تصویر در اون صورت جواب متفاوت میشد من خودم به شخصه پروژه هایی انجام دادم که به غیر از مدل یادگیری عمیق سایر کارها پیاده سازی آنها در c++  به مراتب از مشابه پایتونیش بهینه تر میشه. البته موارد خاص هم هست که شما قصد داشته باشید کرنل خاصی را برای مدلتون پیاده کنید که میشه به صورت خاص آن را تو سمت c++ پیاده سازی کرد.

در مورد ide هم اگر با pycharm راحتید از clion استفاده کنید من استفاده کردم راضیم
پاسخ داده شده تیر 22, 1399 بوسیله ی farnoosh (امتیاز 8,362)   20 44 59
ویرایش شده مرداد 10, 1399 بوسیله ی مصطفی ساتکی
سپاس از شما
فقط شما تاحالا مدل های دیپ رو روی مثلا جتسون و رزبری پای و ... پیاده کردید ببینید سرعت پایتون و سی پلاس چقدر فرق میکنه؟
در مورد پروژه پردازش تصویر چون معمولا با opencv / numpy  صورت میگیرد و بک اینا با سی هست نمیدونم چرا سرعت باید زیاد فرق کنه

مسله دیگه هم این هست که چون سی پلاس thead safe نیست وقتی که مالتی تسک انجام میدهیم نمیدونم در اینجور مواقع سی پلاس چقدر قدرتمند ظاهر میشه الان فرضا asyncio  در پایتون واقعا قدرتمند هست و عملکرد رو خیلی بهتر میکنه سی پلاس نسبت به پایتون در مد سنکرون بهتر ظاهر میشه یا آسنکرون هم؟
...