در دنیای برنامه نویسی که همیشه در حال تغییر است، کارت های گرافیک اهمیت فزاینده ای پیدا کرده اند و به برنامه نویسان اجازه می دهند داده ها را سریعتر محاسبه کنند. قبل از این، پردازنده های عالی به دلیل توانایی ذاتی آنها در مدیریت چندین دستور به طور همزمان، جزء اصلی مورد استفاده در کدنویسی بودند. اما پردازنده‌های گرافیکی اکنون از مرحله ارائه‌کننده‌های ویدیویی ساده عبور کرده‌اند. اکنون می توان از آنها در محاسبات موازی استفاده کرد.

این باعث می شود برخی از بهترین گرافیک های مدرن برای اجرای دستورات پایتون بسیار قدرتمند باشند و به آنها اجازه می دهد تا دستورات خاصی را بهتر از اکثر پردازنده ها اجرا کنند. اگر می خواهید از گرافیک خود در پایتون استفاده کنید، ما به شما نشان خواهیم داد که برای شروع به چه برنامه هایی نیاز دارید.

مزیت استفاده از GPU هنگام اجرای کد در پایتون

در حالی که پردازنده ها ممکن است سرعت کلاک بالاتر و حافظه بیشتری داشته باشند، هسته های کمتری نسبت به یک پردازنده گرافیکی مدرن دارند. یک پردازنده بسته به مدلی که استفاده می کنید می تواند از 1 تا 64 هسته داشته باشد، اما یک پردازنده گرافیکی هزاران هسته CUDA را برای شما آماده کرده است.

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

با پردازش تسریع شده توسط پردازنده گرافیک، کارت‌های گرافیک می‌توانند دستورات خاصی را بسیار سریع‌تر از همتایان پردازنده خود اجرا کنند، و این امر برای برنامه‌نویسان مفید است که چندین دستور دقیق را روی پردازنده گرافیکی خود و سایر دستورات را یکی پس از دیگری بر روی پردازنده خود اجرا کنند.

استفاده از GPU در پایتون

قبل از شروع استفاده از GPU برای تسریع کد در پایتون، به چند چیز نیاز دارید. پردازنده گرافیکی مورد استفاده شما مهمترین بخش است. GPU acceleration به کارت گرافیک سازگار با CUDA نیاز دارد. متأسفانه، این فقط در کارت های گرافیک انویدیا موجود بوده که ممکن است در آینده تغییر کند، اما در حال حاضر، هیچ راهی برای دور زدن این موضوع وجود ندارد.

در مرحله بعد، شما باید پایتون و چند برنامه لازم را برای پایتون نصب کنید تا کد روی GPU اجرا شود. مهم ترین آنها Anaconda (یا Conda که نسخه Lite است) است که یک مدیر محیط و بسته برای کارت های گرافیک است. شما همچنین به کامپایلر Numba، یک بسته کامپایلری که در Anaconda اجرا می شود، و CUDA Toolkit نیاز دارید که کارت گرافیک شما را برای محاسبات موازی و شتاب دهنده GPU در پایتون بهینه می کند.

نحوه دانلود و نصب پایتون

اولین کاری که باید انجام دهید این است که پایتون را روی رایانه خود نصب کنید. اگر قبلاً آن را ندارید، نحوه نصب آن را در چند مرحله آسان به شما نشان خواهیم داد.

  1. از مرورگر وب خود برای رفتن به وب سایت رسمی پایتون استفاده کنید.
  2. به دنبال آخرین نسخه پایتون بگردید و روی دانلود کلیک کنید.
  3. نصب کننده را باز کنید و روی Install Now (از مراحل 4-5 رد شوید) یا Custom Installation کلیک کنید.
  4. در پنجره Optional Features، Documentation، pip، td/tk و IDLE و Python test suite را انتخاب کنید. روی Next کلیک کنید.
  5. در پنجره Advanced Options، چهار کادر اول را علامت بزنید. سپس روی Install کلیک کنید.
  6. پس از اتمام نصب، میانبر را جستجو کنید یا روی آن کلیک کنید تا پایتون باز شود تا تأیید شود که نصب شده است.

نحوه دانلود و نصب Anaconda

Anaconda نسخه ای از پایتون است که به شما امکان می دهد محیط ها و بسته های خود را به جای CPU از یک رابط GPU مدیریت کنید. Anaconda نیازی به دانلود پایتون ندارد، اما نصب هر دو مفید است زیرا برای کدهای غیر مرتبط با GPU به پایتون نیاز دارید.

  1. از مرورگر وب خود برای رفتن به وب سایت رسمی Anaconda استفاده کنید.
  2. پس از دانلود نصب کننده، آن را باز کرده و روی Next کلیک کنید.
  3. با شرایط خدمات موافقت کنید، سپس Install for: Just Me را انتخاب کنید و روی Next کلیک کنید.
  4. پوشه مقصد خود را انتخاب کرده و روی Next کلیک کنید.
  5. در گزینه های نصب پیشرفته، می توانید نحوه نصب Anaconda را انتخاب کنید. می توانید همه چیز را علامت بزنید به جز کادر دوم. همچنین می‌توانید گزینه‌ها را باز بگذارید و بعداً در صورت نیاز آنها را اضافه کنید. روی Install کلیک کنید.
  6. اجازه دهید برنامه نصب شود. (این ممکن است کمی طول بکشد.) پس از اتمام، می توانید روی Finish کلیک کنید.

نحوه دانلود و نصب Cuda Toolkit

برای اجرای کد روی پردازنده گرافیکی خود، به یک کارت گرافیک سازگار با CUDA، یعنی یک کارت گرافیک انویدیا با هسته های CUDA نیاز دارید. شما می توانید لیستی از تمام کارت های گرافیک سازگار CUDA را در اینجا بیابید. اما بیشتر کارت‌های گرافیک انویدیا از اواسط دهه 2000 با CUDA فعال شده‌اند، بنابراین حتی یک کارت گرافیک قدیمی نیز کار می‌کند.

  1. به صفحه CUDA Toolkit در وب سایت انویدیا بروید. اکنون روی دانلود کلیک کنید.
  2. سیستم عامل، معماری (فقط x86 سازگار است)، نسخه ویندوز و نوع نصب کننده خود را انتخاب کنید. سپس بر روی Download کلیک کنید.
  3. مسیر Extraction خود را انتخاب کرده و روی OK کلیک کنید.
  4. نصب کننده Nvidia سازگاری سیستم شما را بررسی می کند و NEXT را انتخاب می کند.
  5. با شرایط خدمات موافقت کنید. سپس، باید گزینه های نصب خود را انتخاب کنید.
  6. Express Installation را انتخاب کرده و روی NEXT کلیک کنید.
  7. پس از اتمام نصب، می توانید بر روی CLOSE کلیک کنید.

نحوه نصب Numba در صورت استفاده از Conda

می توانید Numba را با استفاده از یک دستور در Conda نصب کنید. در Anaconda، بسته های Numba، Numpy و llvmlite قبلاً به صورت پیش فرض نصب می شوند، اما در Conda، باید آنها را از طریق خط فرمان نصب کنید.

  1. با استفاده از دستور pip install numba در Conda، ابزار Numba را نصب کرده و بسته‌های مربوطه را به دایرکتوری Conda اضافه می‌کند.
  2. با استفاده از دستور nvcc –version، می توانید نصب CUDA Toolkit را تأیید کنید. با استفاده از دستور pip show number، می توانید نصب Numba را تأیید کنید.

اندازه گیری عملکرد پردازنده شما در مقابل پردازنده گرافیکی

پس از نصب همه این برنامه ها، تنها در این صورت می توانید از GPU خود برای محاسبات موازی استفاده کنید. برای شروع، باید یک تابع JIT را از Numba به CUDA وارد کنید. در اصل، شما دستور را از CPU خود به GPU خود منتقل می کنید تا GPU شما بتواند عملکرد را اجرا کند و نتیجه را برای تجزیه و تحلیل به CPU شما ارسال کند.

برای اندازه گیری تفاوت عملکرد بین CPU و GPU خود، باید یکی از عملکردهای JIT را فقط روی CPU خود اجرا کنید و سپس همان عملکرد JIT را به طور مستقل روی GPU اجرا کنید. پس از اجرای دستورات، باید از یک فرمان تایمر برای اندازه گیری زمان لازم برای تکمیل هر کدام استفاده کنید و سپس دو نتیجه را در کنار هم مقایسه کنید.

زمان استفاده از شتاب GPU در پایتون

اکنون که می توانید دستورات را با استفاده از GPU خود اجرا کنید، ممکن است بخواهید همه چیز را از طریق GPU خود اجرا کنید زیرا هسته های بیشتری دارد. ممکن است اشتباه باشد. پردازنده‌ گرافیکی و پردازنده‌ باید برای کارهای مختلف استفاده شوند زیرا هر کدام نقاط قوت و ضعف خود را دارند.

به آن مانند یک چاقو و چنگال فکر کنید. یکی در بریدن چیزها و دیگری در چیدن آنها عالی است. استفاده از GPU برای اجرای کد در پایتون نیز به همین صورت عمل می کند. برخی از توابع را به خوبی انجام می دهد، اما سایر توابع ساده تر احتمالاً هنوز هم بهترین عملکرد را برای پردازنده شما باقی می گذارند. در غیر این صورت، ممکن است کل فرآیند را با انتقال مداوم داده ها بین CPU و GPU کندتر کنید.

سهام:

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *