بلاک جنسیس، استخراج به وسیلهی پردازنده
در تاریخ ۳ ژانویهی ۲۰۱۹، اولین بلاک که به «بلاک جنسیس» معروف است، بر روی بلاکچین بیت کوین توسط ساتوشی ناکاموتو استخراج یا به اصطلاح ماین شد. با گذشت چند ماه از راهاندازی شبکهی بیت کوین، تنها ساتوشی ناکاموتو و هال فینی(Hal Finney) تنها ماینرهای فعال این شبکهی رمزارزی بودند.
در اولین روزهای فعالیت بیت کوین هیچ سختافزاری پیشرفتهای برای استخراج رمزارز وجود نداشت، این بدان معناست که هرکسی میتوانست با یک لپتاپ یا رایانهی خانگی به این شبکه ملحق شده و به استخراج رمزارز بپردازد. پاداش هر بلاک در آن زمان معادل ۵۰ واحد رمزارز بیت کوین بود، که امروز بیش از 400 هزار دلار ارزش دارد.
تقریبا طی یک سال اول راهاندازی شبکهی بیت کوین، سختی این شبکه به کاملا ایستا و در سطح ۱ ثابت باقی مانده بود. این بدان معناست که شما میتوانستید با پردازش یک گیگاهش اطلاعات، یک بلاک را استخراج کنید. در آن زمان یک پردازندهی ردهی متوسط قادر بود که چیزی حدود ۱/۲۹ مگاهش در ثانیه قدرت پردازشی ارائه کند، به عبارتی تنها ۵۰ دقیقه زمان لازم بود که با استفاده از یک پردازندهی خانگی بتوانید یک بلاک بیت کوین را استخراج کنید. گرچه در همان زمان نیز ایدهی استخراج بیت کوین به وسیلهی کارتهای گرافیک(GPU) مطرح شده بود، اما ساتوشی با آن مخالفت کرد و اعلام نمود که برای یک شبکهی جدید و آسیبپذیر، بهتر است اجازهی استفاده از کارتهای گرافیک داده نشود.
نظر ساتوشی نسبت به ورود کارتهای گرافیک
در دسامبر ۲۰۰۹، ساتوشی در انجمن Bitcoin Talk این متن را منتشر کرد:
ما باید در رابطه با به تعویق انداختن مسابقهی تسلیحاتی کارتهای گرافیک به یک توافق جامع برسیم، تا زمانی که این مورد به نفع شبکه باشد. تا زمانی که کاربران جدید در رابطه با درایور کارتهای گرافیک و سازگاری آنها نگرانی نداشته باشند، میتوان به روند ورود آنها سرعت بخشید. اینکه هرکسی میتواند با در اختیار داشتن یک پردازنده به صورت کاملا مساوی رقابت کنند خیلی خوب است. Satoshi Nakamoto
در سال ۲۰۱۰ افزایش حجم تبلیغات باعث شد که کاربران و ماینرهای بسیار بیشتری به شبکهی بیت کوین جذب شوند. در آن سال نسخهی 0.3 کلاینت بیت کوین در یک وبسایت محبوب به نام Slashdot منتشر شد. در آن زمان که اطلاعیهی پلتفرم مذکور منتشر شد، سختی شبکهی بیت کوین ۲۳/5 بود. تنها یک هفته بعد یعنی در تاریخ ۱۷ام جولای، سختی شبکه شاهد یک جهش هفت برابری بود و به ۱۸۵ رسید.
در این مرحله، روزهای ابتدای صنعت ماینینگ یعنی زمانی که هرکس میتوانست با استفاده از لپتاپ شخصی خودش به استخراج بلاکهای بیت کوین بپردازد، رو به پایان بود.
استخراج با استفاده از کارتهای گرافیک
در سپتامبر ۲۰۱۰، یکی از کاربران پلتفرم Bitcoin Talk با نام مستعار Puddinpop یک کد منبع باز برای کلاینت بیت کوین منتشر کرد که اجازه میداد کاربران با استفاده از کارتهای گرافیک به استخراج بیت کوین بپردازند. این کار باعث شد تا دورهی جدید استخراج بیت کوین آغاز شود. در آن زمان کارتهای گرافیک قادر بودند با قدرت و سرعت بسیار بیشتری نسبت به پردازندههای معمولی روند استخراج بیت کوین را پردازش کنند، از همین رو نبرد تسلیحاتی برای سختافزاریهای ماینینگ نیز شکل گرفت.
یک CPU یا همان واحد پردازندهی مرکزی برای اجرای دستورالعملهای مشخص شده توسط یک نرمافزار کامپیوتری طراحی شده است. پردازندهها به گونهای طراحی شدهاند که بتوانند کارهای محاسباتی معمول را برعهده بگیرند، و به گونهای بهینهسازی شدهاند که بتوانند با سرعت هرچه تمامتر بین کارهای پردازشی مختلف جابجا شوند. اما بر خلاف پردازندهها، کارتهای گرافیک به گونهای طراحی شدهاند که بتوانند محاسبات تکراری لازم برای ارائهی گرافیک ویدئویی را بر روی رایانهها انجام دهند. همین موضوع باعث میشد تا کارتهای گرافیک برای انجام محاسبات دستهای لازم برای استخراج رمزارز بسیار مناسبتر باشند.
کنترل ۲۰ درصد شبکهی بیت کوین تنها با شش کارت گرافیک
پیش از آنکه Puddinpop کد منبع باز خود را منتشر کرد، مشخص شده بود که برخی کاربران توافق دوستانهی ساتوشی را زیر پا گذاشتهاند و از کارتهای گرافیک برای به حداکثر رساندن قدرت استخراج رمزارز خود استفاده میکنند. یکی از اولین کاربران شبکهی بیت کوین که با نام مستعار ArtForz شناخته میشد، در آن زمان اعلام کرد که میتواند با فارم خانگی خودش که شامل دو کارت گرافیک مدل Radeon 5970 و چهار کارت گرافیک مدل Radeon 5770 بود، کنترل ۲۰ درصد از شبکهی بیت کوین بدست بگیرد. تخمین زده میشود که در آن زمان او روزانه چیزی حدود ۲۱۹۱ واحد رمزارز بیت کوین استخراج میکرده است.
کدهای منبع باز استخراج رمزارز به وسیلهی کارتهای گرافیک، باعث باز کردن دربها به روز صنعت ماینینگ به وسیلهی کارتهای گرافیک شد. خیلی زود یک استاندارد ماینینگ جدید برای استفادهی مجدد از سختافزارهای ردهی مصرف کننده شکل گرفت، که در آن کاربران میتوانستند در راستای استخراج رمزارز، تا شش کارت گرافیک را به یک مادربورد متصل کنند. با ورود کارتهای گرافیک به شبکه، صنعت ماینینگ بسیار رقابتیتر شد. در آغاز سال ۲۰۱۰، سختی شبکهی ۱۱۸۳ بود، که به ندرت افزایش مییافت. اما تا پایان همان سال سختی شبکهی بیت کوین به شکل عجیبی افزایش یافت و به ۱۴۴۸۰ رسید.
استخرهای ماینینگ
با ظهور صنعت ماینینگ متکی به کارتهای گرافیک، به طور ناگهانی کسب درآمد و سود برای کاربران عادی و رایانههای شخصی آنها بسیار سخت شد. همین امر باعث به وجود آمدن استخرهای ماینینگ(Mining Pool) شد، که به ماینرها اجازه میداد تا قدرت پردازشی سختافزارهای خود را به اشتراک گذاشته و به نسبت میزان هشی که ارائه کردهاند، پاداش هر بلاک را دریافت کنند. اولین استخر ماینینگ توسط کاربری با نام مستعار Slush و در تاریخ ۱۰ام نوامبر ۲۰۱۰ در انجمن Bitcoin Talk معرفی شد. وی در این انجمن با انتشار یک پست طولانی اعلام کرد:
هنگامی که برای استخراج رمزارز مردم شروع به استفاده از رایانههای مجهز به کارت گرافیک کردند، فرایند ماینینگ برای سایر مردم بسیار سختتر شد. من چندین هفته است که در حال استخراج بیت کوین میباشم و هنوز هیچ بلاکی نیافتهام(در حال استخراج به وسیلهی سه عدد پردازنده هستم). زمانی که مردم به صورت جداگانه و با استفاده از پردازندههای کند خود اقدام به ماینینگ میکنند، علاوه بر اینکه با یکدیگر در رقابت هستند باید در مقابل کارتهای گرافیک قدرتمند نیز ایستادگی کنند، زیرا همهی کاربران هشهای SHA256 را از یک محدوده شمارش میکنند. دو پردازندهی جداگانه با قدرت هزار کیلوهش بر ثانیه با یک دستگاه ۲ هزار کیلوهشی برابر نیست!
اما ویژگی جدیدی که با نام «Getwork» به کلاینت رسمی بیت کوین اضافه شده اکنون اجازه میدهد که تعداد زیادی رایانه در کنار یکدیگر کار کنند، بنابراین با یکدیگر رقابت نخواهند داشت. از آنجا که اکنون پردازندههای ماینر مستقل وجود دارند، و افزونهی getwork نیز در نسخهی رسمی کلاینت بیت کوین ادغام شده است، من یک ایده دارم: ماینرهای ضعیف استفاده کننده از پردازنده به یک دسته بپیوندند و شانس پیدا کردن بلاک خود را افزایش دهند. Slush
تسلط استخرهای ماینینگ بر شبکهی بیت کوین
با در نظر گرفتن هزار کیلوهش در ثانیه(1000 KH/s) در دسامبر سال ۲۰۱۰، حدود دوسال زمان میبرد تا شما بتوانید یک پاداش بلاک ۵۰ واحد بیت کوین را بدست آورید. امروزه در نقطهای قرار داریم که استخرهای ماینینگ به نوعی بر شبکهی بیت کوین مسلط شدهاند، تاجایی که چهار استخر ماینینگ برتر شبکهی بیت کوین اکنون بیش از ۵۱ درصد نرخ هش را به خود اختصاص دادهاند، روندی که معمولا در رمزارزهای دارای پروتکل PoW دیده میشود.
آرایههای قابل برنامهریزی یا FPGAها
بین سالهای ۲۰۱۱ و ۲۰۱۲، نوع جدیدی از تراشههای محاسباتی در حال ورود به رقابت ماینینگ سختافزاری بود: FPGAها یا همان آرايههای ورودی قابل برنامهریزی.
FPGAها اساسا تراشههایی با طراحی خاص هستند که پس از خریده شدن از کارخانهی تولید کننده، قابلیت آن را خواهند داشت که توسط کاربران دوباره پیکربندی شوند. این تراشهها به طور معمول برای اجرای برنامههای خطی خاص با حجم تولید پایین در نظر گرفته میشوند، از جمله صنعت هوافضا یا رایانههایی که قدرت محاسباتی بالا دارند.
تراشهی FPGA ارزش استفاده نداشت
از لحاظ تئوری، قابلیت تنظیم و شخصیسازی تراشههای FPGA باعث میشد که ماینرها علاوه بر کاهش هزینههای مربوط به برق، عملکرد بسیار مناسبتری داشته باشند. البته در عمل همهچیز متفاوت بود. بهینهسازی تراشههای FPGA به گونهای که بتوانند در الگوریتم هش SHA256 کار کنند، فرایندی بسیار سخت بود و این تراشهها حتی پس از بهینهسازی نیز دچار مشکلات عدیده میشدند. علاوه بر اینها، تراشههای FPGA با داشتن مشکلات زیاد، نسبت به کارتهای گرافیک تنها مقدار جزئی عملکرد و سود بیشتر ارائه میکردند. همین موارد باعث شد تا FPGAها به پدیدهای کوتاه مدت در تاریخ صنعت ماینینگ تبدیل شوند.
با تمام این تفاسیر، قابلیت شخصیسازی و تنظیم تراشههای FPGA باعث ورود نوع خاص و جدیدی از تراشههای محاسباتی شد که تنها با هدف ماینینگ و استخراج رمزارز تولید میشدند.
اسیکها
در ۳۰ام ژانویهی ۲۰۱۳، جف گارزیک(Jeff Garzik) یکی از توسعهدهندگان بیت کوین، اولین دستگاه اسیک بیت کوین که برای مصرفکننده طراحی شده بود را دریافت کرد. در آن زمان، اغلب کارهای گرافیک توانایی ارائهی قدرت محاسباتی کمتر از ۱ گیگاهش بر ثانیه را داشتند و تراشههای FPGA نیز نرخ هش بین ۱ تا ۲ گیگاهش بر ثانیه را ارائه میکردند.
تراشههای تکپارچه با کاربرد خاص یا اسیک(ASIC)، تراشههایی هستند که برخلاف تراشههای عملکرد عمومی(مثل پردازندهها)، برای انجام یک عملکرد خاص بهینه شدهاند. گرچه این محصول قابلیت انعطافپذیری خود را از دست میدهد(به دستگاه اسیک بیت کوین قادر به جابجایی و خروج از الگوریتم SHA256 نمیباشد)، اما توانایی آن را دارد که بازده و عملکرد خیرهکنندهای را ارائه کند.
دستگاه اسیک Avalon A3256 که توسط آقای گارزیک خریداری شد، توانایی ارائهی قدرت پردازشی ۶۰ گیگاهش بر ثانیه بود که با برچسب ۱۲۹۹ دلاری به فروش میرسید. آقای گارزیک در تاریخ ۹ام فوریهی ۲۰۱۳ اعلام کرد که این دستگاه به طور کامل بازگشت سرمایه داشته است.
چشمانداز صنعت ماینینگ تغییر کرد
گرچه تقریبا مسلم است که از سال ۲۰۱۲ به بعد شرکتهای فعال در زمینهی ماینینگ دستگاههای اسیک مخصوص به خود را مستقر کردهاند، اما ظهور اسیکها باعث شد که چشمانداز صنعت ماینینگ برای همیشه دستخوش تغییراتی شود.
اسیکها باعث شدند که ریگهای ماینینگ مجهز به کارتهای گرافیک به مزارع بزرگ با قفسههای مملو از ماینرهای اسیک تبدیل شوند. البته ریگهای کارت گرافیک برای استخراج رمزارزهای دیگری که اسیکها قابلیت استخراج آنها را نداشتند، همچنان با ارزش بودند، اما به یاد داشته باشید که ظهور این دستگاهها در هر شبکهی رمزارزی باعث خواهد شد که سایر روشهای ماینینگ منسوخ شوند.
این یکی از موضوعاتی بود که ساتوشی پیش از راهاندازی بیت کوین هم آن را پیشبینی کرده بود:
در ابتدا، بیشتر کاربران گرههای شبکه را اجرا میکنند، اما پس از اینکه شبکه از حد مشخصی بزرگتر شد، هر روز بیشتر و بیشتر در اختیار متخصصان مجهز به فارمهای بزرگ و سختافزارهای تخصصی قرار میگیرد. Satoshi Nakamoto
طی چند سال گذشته، تنها پیشرفت دستگاهها اسیک در زمینهی عملکرد پردازشی و بهبود کارایی بوده است. به عنوان مثال دستگاه اسیک Bitmain S9 قادر به ارائهی ۱۳ تراهش بر ثانیه(یا بیش از ۲۱۶ برابر اولین دستگاه اسیک) قدرت محاسباتی است.
اسیک در مقابل FPGAها: مقایسهی شباهتها و تفاوتها
انعطافپذیری
FPGAها قابلیت تنظیم مجدد دارد، به عبارتی میتوان آرايههای قابل برنامهریزی را با طراحیهای متفاوتی پیکربندی کرد. این آرایهها حتی قابلیت پیکربندی مجدد بخشی از تراشه را هم دارند، یعنی درحالیکه بخشهای دیگر تراشه همچنان به فعالیتهای خود ادامه میدهند، کاربر میتواند در بخش دیگری از آن تغییرات و اصلاحات مورد نظر خود را اعمال نماید. این درحالیست که دستگاههای اسیک از نوع مدار دائم هستند. زمانی که تراشهی تکپارچه با کاربرد خاص یا همان تراشهی پردازشی اسیک در سیلیکون مورد نظر تعبیه شد، دیگر نمیتوان هیچ تغییری در آن ایجاد کرد. این مدار برای تمام طول عمر باقی ماندهی خود تنها یک کار مشخص را انجام خواهد داد.
زبان برنامهنویسی یکسان
آرایههای قابل برنامهریزی به طور کلی با استفاده از زبانهای برنامهنویسی توصیف سختافزار(HDL) مانند زبان VHDL یا Verilog طراحی میشوند. اسیکها نیز با استفاده از زبانهای HDL مشابه طراحی میشوند.
موانع شروع ساخت
موانع شروع کار با FPGA بسیار کمتر است. به عنوان مثال شما میتوانید با در اختیار داشتن تنها ۳۰ دلار، روند توسعه و طراحی یک آرایهی قابل برنامهریزی را آغاز نمایید. این درحالیست که برای طراحی و ساخت تراشههای پردازشی اسیک موانع بسیار بزرگی همچون هزینههای سرسامآور، منحنی یادگیری بسیار پیچیده، نیاز به کارخانهی تولید تراشههای نیمه هادی و غیره خواهید داشت. شروع روند توسعهی دستگاههای اسیک در وحلهی اول به چندین میلیون دلار سرمایه نیاز خواهد داشت.
تولید انبوه
FPGAها برای تولید انبور با حجم بالا اصلا مناسب نیستند، در صورتی که ماهیت ثابت و بدون تغییر دستگاههای اسیک باعث شده تا تولید انبوه برای مصرفکننده ممکن باشد.
بهرهوری انرژی
آرایههای قابل برنامهریزی از لحاظ میزان انرژی مورد نیاز برای عملکرد مناسب، مصرف بسیار بالایی داشته و به هیچ عنوان بهینه نیستند، درحالیکه دستگاههای اسیک میتوانند با در اختیار داشتن توان بسیار پایینتری همان عملکرد و نتایج را ارائه دهند. میزان مصرف برق دستگاههای اسیک قابل کنترل بوده و قابلیت بهینهسازی دارد.
فرکانس عملیاتی
فرکانس عملیاتی FPGAها نسبت به دستگاههای اسیک در فرایند پردازش یک گرهی مشابه، بسیار ناچیز است. این درحالیست که اسیکها میتوانند در فرکانس بسیار بالاتر عمل کنند، زیرا مدار داخلی آنها برای وظیفهی خاص خود بهینه شده است.
بلاک آنالوگ
طراحی آنالوگ در FPGAها ممکن نیست. گرچه آرایههای قابل برنامهریزی ممکن است دارای سختافزارهای آنالوگ خاصی همچون ADC یا PLLها باشند، اما انعطافپذیر نیستند و توانایی ایجاد مواردی همچون فرستندههای RF در آنها وجود ندارد. اسیکها میتوانند یک مدار کاملا آنالوگ داشته باشند، به عنوان استفاده از یک فرستندهی وایفای در کنار هستههای پردازشی بر روی یک مدار مجتمع. این یکی از اصلیترین برتریهای اسیک نسبت به FPGA میباشد.
کاربرد در ساخت نمونهی اولیه
برای نمونهسازی و ساخت نمونههای اولیهی یک طرح یا مفهوم بهتر است از FPGA استفاده شود. حتی نسخهی آزمایشی و نمونهی اولیهی بسیاری از دستگاههای اسیک نیز با استفاده آرايههای قابل برنامهریزی ساخته شده است. شرکتهای بزرگ تولید کنندهی تراشههای پردازشی نیز از FPGA برای تایید صحبت سیستم تراشهها(SoCs) استفاده میکنند. قابلیتهای FPGA باعث میشود که روند توسعه و اطمینان از عملکرد یک نمونهی آزمایشی بسیار سادهتر باشد. به دلیل ماهیت غیرقابل تغییر اسیک، استفاده از آنها برای ساخت یک نمونهی اولیه اصلا توصیه نمیشود، مگر اینکه از صحت و کارکرد درست محصول خود اطمینان حاصل کنید. پس از تعبیهی سیلیکون تقریبا هیچ راهی برای رفع اشکال یک طراحی وجود نخواهد داشت(در این زمینه استثنا وجود دارد).
بیش از ده سال از شروع صنعت ماینینگ میگذرد
طی یک دههی گذشته شاهد آن بودهایم که سختافزارهای استخراج رمزارز به تکامل رسیدهاند. از شروع صنعت ماینینگ که پردازندهها وظیفهی استخراج بیت کوین را بر عهده داشتند، تا کارتهای گرافیک، تراشههای FPGA و اکنون مرحلهی قدرتنمایی دستگاههای اسیک. گرچه ظهور ناگهانی اسیکها در رمزارزهای محبوبی همچون بیت کوین برای ماینرهای کوچکتر ناخوشایند محسوب میشود، اما همچنان این فرصت وجود دارد که این ماینرها به استخراج رمزارزهای دیگری روی آورند که هنوز اسیک به آن وارد نشده است. نوآوری در صنعت ماینینگ با سرعت زیادی به پیش میرود، اما نکتهی مهمی که باید همیشه به یاد داشته باشید این است که همهی موارد گفته شده به بهبود امنیت شبکههای غیرمتمرکز نقطه به نقطه کمک خواهند کرد.
نظر شما در رابطه با تحول و تکامل صنعت ماینینگ چیست؟ مرحلهی بعدی چه خواهد بود؟ نظرات و پیشنهادات خود را با ما به اشتراک بگذارید.
مقالهی جالبی بود. تشکر از تیم تحریر
مرسی دوست من 🌹