چگونه گوگل از ساخت تعداد زیادی مرکز داده بینیاز شد
بیشک گوگل بزرگترین شبکه کامپیوتری دنیا را اداره میکند؛ سیستمی که از چندین مرکز داده اختصاصی در ۱۵ نقطه و چهار قاره تشکیل شده است. اما شش سال پیش، زمانی که این شرکت شکل جدیدی از تشخیص صدا را روی گوشیهای اندروید در آغوش میکشید، مهندسان این شرکت نگران شدند که شبکه این شرکت بهاندازه کافی بزرگ نیست. مهندسان گوگل دریافتند که اگر هر کاربر گوشیهای اندروید تنها سه دقیقه در روز از سیستم تشخیص صدا استفاده کند، تعداد مراکز داده گوگل باید دو برابر بشود.
در آن زمان، گوگل تازه شروع به استفاده از شبکههای عصبی در سیستم تشخیص صدای خود کرده بود. در سالهای اخیر، شبکه عصبی نهتنها تشخیص صدا را متحول کرده است، بلکه حوزههای دیگر همچون تشخیص تصویر، ترجمه ماشینی و جستجوی اینترنتی را نیز تغییر داده است. گوگل با مهاجرت به این روش توانست، نرخ خطا را به ۲۵ درصد برساند. اما این تغییر، نیاز به توان پردازشی بالایی داشت.
گوگل بهجای اینکه مراکز داده بیشتری بسازد، تصمیم گرفت برای پردازش شبکههای عصبی، چیپ اختصاصی خود را با نام واحد پردازشی تانسور (Tensor Processing Unit) با مخفف TPU را بسازد. نرم جوپی، یکی از ۷۰ مهندسی که روی ساخت این چیپ کار میکردند، میگوید: «خیلی خوب است که راهحلی داشته باشید که صرفهجویی زیادی در مصرف انرژی داشته باشد.» در حقیقت، TPU بین ۳۰ تا ۸۰ برابر پردازندههای معمولی در مصرف انرژی صرفهجویی میکند.
چیپی در خور شبکه های عصبی
گوگل اولین بار در ماه می سال گذشته از چیپ خود رونمایی کرد؛ اما اطلاعات زیادی در مورد آن منتشر نکرد. حال جوپی و همکارانش مقالهای منتشر کردهاند و در آن نحوه کارکرد TPU را توضیح دادهاند. گوگل از TPU منحصرا برای اجرای شبکههای عصبی استفاده میکند. به عبارت دیگر، زمانی از این چیپها استفاده میشود که کسی با گوشی اندروید خود صحبت کند. TPU برای آموزش شبکههای عصبی استفاده نمیشود. حتی همین مورد باعث میشود که گوگل صرفهجویی زیادی داشته باشد. جوپی مدعی است که استفاده از TPU باعث شده گوگل نیازی نداشته باشد ۱۵ مرکز داده جدید بسازد.
این چیپ خبر از دگرگونی بزرگتری در دنیای پردازندههای کامپیوتری میدهد. در حین اینکه گوگل، فیسبوک، مایکروسافت و دیگر شرکتهای تکنولوژی سرویسهای بیشتری با استفاده از شبکههای عصبی میسازند؛ نیاز به چیپهای اختصاصی خواهند داشت تا بتوانند مدلهای هوش مصنوعی را آموزش بدهند و اجرا کنند. بیشتر شرکتها برای این کار از جیپییو استفاده میکنند. جیپییو در ابتدا برای اجرای بازیهای با گرافیک بالا و دیگر اپلیکیشنهای تصویری ساخته شد، اما برای اجرای ریاضیات شبکههای عصبی بسیار مناسب است. برخی از شرکتها از جمله مایکروسافت و بایدو همانند گوگل از چیپهای دیگری استفاده میکنند.
تفاوت در آنجا است که گوگل، چیپ خود را از ابتدا تا انتها ساخت. این غول اینترنتی برای اینکه هزینه را کاهش و بازدهی را در امپراطوری آنلاین خود افزایش دهد، بیشتر سختافزار مراکز داده خود از جمله سرورها و تجهیزات شبکه را خودش میسازد. حال گوگل این کار را تا مرحله پردازنده جلو برده است.
در این فرایند، گوگل بازار بزرگتر چیپها را نیز دگرگون کرده است. چرا که گوگل خودش چیپهایش را میسازد و نیازی به چیپهای ساخت دیگر شرکتها ندارد. ساخت چیپ توسط گوگل پیامدهای زیادی دارد؛ گوگل همانند فیسبوک، آمازون و مایکروسافت، از بزرگترین خریداران چیپ روی این کره خاکی است. سازندگان بزرگ پردازنده از جمله اینتل برای کشاندن بازار به سمت خود، در حال ساخت و توسعه نوع جدیدی از چیپها هستند.
متمرکز اما چندکاره
جوپی پس از سالها کار بهعنوان محقق سختافزار در شرکتهایی همچون اچپی و DEC، در سال ۲۰۱۳ به گوگل پیوست تا روی محصولی کار کند که بعدها TPU نامیده شد. او میگوید که گوگل در ابتدا میخواست مثل مایکروسافت از FPGA (مدار مجتمع قابل برنامهریزی) استفاده کند. این مسیر چندان طولانی نبود و انعطافپذیری بالای FPGA باعث میشد که بتوان با برنامهنویسی دوباره، از آن در کاربردهای دیگر استفاده کرد. اما تستها نشان دادند که این چیپها افزایش سرعت موردنیاز را برآورده نمیکنند.جوپی میگوید: «چیزهای زیادی در مورد چیپهای قابل برنامهریزی شنیده شده است. تحلیل ما نشان داد که FPGA چندان از جیپییو سریعتر نیست.»
در نهایت، تیم گوگل استفاده از مدارهای مجتمع برای کاربرد خاص (Application-specific integrated circuit) یا ASIC را در دستور کار قرار داد. بر اساس گفتههای جوپی، از آنجایی که گوگل چیپ خود را منحصرا برای شبکههای عصبی ساخته است، این چیپها قادرند ۱۵ تا ۳۰ برابر چیپهای همهکاره که با تکنیکهای کارخانههای مشابه ساخته میشوند، برنامهها را اجرا کنند. چیپهای گوگل قادرند هر نوع شبکه عصبی را اجرا کنند. جوپی میگوید: «این چیپ برای مدل خاصی از شبکههای عصبی ساخته نشده است.»
گوگل حدود دو سال است که در کاربردهای گوناگون از تشخیص تصویر و ترجمه ماشینی تا آلفاگو، از TPU استفاده میکند.