۳۰ آذر ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

از پردازنده‌های گرافیکی برای برنامه‌های یادگیری ماشین حداکثر استفاده را ببرید

توسعه برنامه های کاربردی هوش مصنوعی و یادگیری ماشین به تعداد زیادی GPU نیاز دارد. آیا باید آنها را در محل اجرا کنید یا در فضای ابری؟

توسعه برنامه های کاربردی هوش مصنوعی و یادگیری ماشین به تعداد زیادی GPU نیاز دارد. آیا باید آنها را در محل اجرا کنید یا در فضای ابری؟

در حالی که واحدهای پردازش گرافیکی (GPU) زمانی منحصراً در حوزه‌های بازی‌های گرافیکی فشرده و پخش ویدیو قرار داشتند، GPUها اکنون به همان اندازه با یادگیری ماشینی (ML) مرتبط هستند. توانایی آن‌ها برای انجام محاسبات چندگانه و همزمان که وظایف را توزیع می‌کنند – به طور قابل‌توجهی سرعت پردازش حجم کاری ML را افزایش می‌دهند – GPU‌ها را برای تامین انرژی برنامه‌های هوش مصنوعی (AI) ایده‌آل می‌کند.

معماری جریان چندگانه دستورالعمل واحد (SIMD) در یک GPU به دانشمندان داده امکان می‌دهد وظایف پیچیده را به چندین واحد کوچک تقسیم کنند. به این ترتیب، شرکت‌هایی که ابتکارات هوش مصنوعی و ML را دنبال می‌کنند، اکنون به احتمال زیاد GPU را به جای واحدهای پردازش مرکزی (CPU) برای تجزیه و تحلیل سریع مجموعه داده‌های بزرگ در حجم‌های کاری یادگیری ماشینی پیچیده و سخت‌افزاری الگوریتمی انتخاب می‌کنند. این امر به ویژه برای مدل‌های زبان بزرگ (LLM) و برنامه‌های هوش مصنوعی مولد ساخته‌شده بر روی LLM صادق است.

با این حال، CPUهای کم‌هزینه بیش از توانایی اجرای برخی وظایف یادگیری ماشینی هستند که در آن‌ها پردازش موازی غیر ضروری است. اینها شامل الگوریتم‌هایی است که محاسبات آماری را انجام می‌دهند، مانند پردازش زبان طبیعی (NLP)، و برخی از الگوریتم‌های یادگیری عمیق. همچنین نمونه‌هایی از هوش مصنوعی مناسب برای CPU وجود دارد، مانند تله متری و مسیریابی شبکه، تشخیص اشیا در دوربین‌های مداربسته، تشخیص عیب در ساخت، و تشخیص اشیا در اسکن‌های CT و MRI.

فعال کردن توسعه برنامه مبتنی بر GPU

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

چگونه چرخه زندگی یادگیری ماشینی را برای مدیران تجاری توضیح دهیم

برای غلبه بر این چالش‌ها، انویدیا و سایر سازمان‌ها مجموعه‌های ابزار و چارچوب‌های مختلفی را معرفی کرده‌اند تا مدیریت بارهای کاری ML و نوشتن کدهای با کارایی بالا را برای توسعه‌دهندگان آسان‌تر کنند. اینها شامل چارچوب‌های یادگیری عمیق بهینه‌شده با GPU مانند PyTorch و TensorFlow و همچنین چارچوب CUDA Nvidia است. اغراق آمیز نیست اگر بگوییم که چارچوب CUDA یک تغییر دهنده بازی در تسریع وظایف GPU برای محققان و دانشمندان داده بوده است.

GPUهای داخلی در مقابل پردازنده‌های گرافیکی ابری

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

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

از سوی دیگر، پردازنده‌های گرافیکی مبتنی بر فضای ابری، الگوی پرداختی را ارائه می‌دهند که سازمان‌ها را قادر می‌سازد تا میزان مصرف GPU خود را در یک لحظه افزایش یا کاهش دهند. ارائه دهندگان Cloud GPU تیم های پشتیبانی اختصاصی را برای انجام کلیه وظایف مربوط به زیرساخت ابر GPU ارائه می دهند. به این ترتیب، ارائه‌دهنده پردازشگر گرافیکی ابری به کاربران اجازه می‌دهد تا به سرعت با ارائه خدمات شروع به کار کنند، که باعث صرفه‌جویی در زمان و کاهش تعهدات می‌شود. همچنین تضمین می کند که توسعه دهندگان به آخرین فناوری و GPU های مناسب برای موارد استفاده فعلی ML خود دسترسی دارند.

JetBrains RustRover IDE را برای توسعه Rust منتشر کرد

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

بهینه سازی برای بارهای کاری یادگیری ماشین

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

برای آماده کردن GPU برای انجام هر کار، باید اقدامات زیر را انجام دهید:

  • درایورهای CUDA و جعبه ابزار CUDA را برای تعامل با GPU و انجام هرگونه عملیات اضافی GPU نصب و پیکربندی کنید.
  • کتابخانه های CUDA لازم را برای به حداکثر رساندن کارایی GPU و استفاده از منابع محاسباتی GPU نصب کنید.
  • چارچوب‌های یادگیری عمیق مانند TensorFlow و PyTorch را برای انجام بارهای کاری یادگیری ماشین مانند آموزش، استنتاج و تنظیم دقیق نصب کنید.
  • ابزارهایی مانند JupyterLab را برای اجرا و آزمایش کد و Docker برای اجرای برنامه‌های GPU کانتینری نصب کنید.

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

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

چرا توسعه دهندگان به استعفای بزرگ می پیوندند

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

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

کوین کاکرین مدیر ارشد بازاریابی در Vultr است.

Generative AI Insights مکانی را برای رهبران فناوری – از جمله فروشندگان و سایر مشارکت‌کنندگان خارجی – فراهم می‌کند تا چالش‌ها و فرصت‌های هوش مصنوعی مولد را بررسی و بحث کنند. این انتخاب گسترده است، از غواصی عمیق فناوری گرفته تا مطالعات موردی گرفته تا نظرات متخصص، اما همچنین ذهنی است، بر اساس قضاوت ما در مورد اینکه کدام موضوعات و درمان ها به بهترین وجه به مخاطبان فنی پیشرفته InfoWorld خدمت می کنند. InfoWorld وثیقه بازاریابی را برای انتشار نمی پذیرد و حق ویرایش تمام محتوای ارائه شده را برای خود محفوظ می دارد. تماس با doug_dineley@foundryco.com.