دنیای شیرین پردازش با OpenCL

سلام دوستان. من تازه عضو ویرگول شدم و هدفم از عضویت در ویرگول انتشار هرچیزی هست که تونستم تا به حال یاد بگیرم. شاید چیزهایی که تا الان یاد گرفتم خیلی خیلی کم باشه اما امیدوارم که حداقل به درد یه نفر بخورره.

OpenCL
OpenCL

من تو دوران دانشجویی ام روی OpenCL کار کردم. و امیدوارم که بتونم مطالب مفیدی راجع به OpenCL اینجا منتشر کنم. متاسفانه منابع فارسی برای آموزش OpenCL محدوده و کمی ضعف توی زبان انگلیسی می تونه مسیر رو خیلی خیلی دشوار تر کنه. اما نگران نباشین و به خودتون اعتماد کنین چون هیچ کاری نیست که نشه انجامش داد.

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

اسناد و کتابهایی که برای OpenCL وجود داره کمی شاید سنگین و نامفهوم به نظر برسه. چون تمامی اون ها با این دید نوشته شده که شما به طور کامل به تمامی مفاهیم مربوط به پردازش با بسترهای سخت افزاری مختلف آگاه هستید. اما نیازی نیست بترسید. برای شروع کار با OpenCL به نظرم بهتره که اول، واژگان مربوط به مفاهیم OpenCL رو که در بخش Glossary اسناد وجود داره، بخونید و به طور کامل بهشون مسلط بشید. بهتون توصیه می کنم به جای گم شدن توی اسنادی که از اینترنت دانلود می کنید، به وبسایت https://www.khronos.org مراجعه کنید و با این وبسایت و تیم Khronos آشنا بشید. سعی می کنم که نکات و قدم های بعدی رو در پست های بعدی منتشر کنم. ممنون می شم که اگه کسی در این باره اطلاعاتی یا سوالی داره با من به اشتراک بذاره تا بتونیم به هم کمک کنیم.