۱۰ اشتباه رایج هنگام صحبت راجع به سختافزار کامپیوتر
درحالی که تکنولوژی با سرعتی غیر قابل در حال پیشرفت است، بعضی از اوقات، شائبهها و تصورات اشتباه راهشان را به دایره دانش ما باز میکنند. در این مقاله قصد داریم به مرور برخی از ...
درحالی که تکنولوژی با سرعتی غیر قابل در حال پیشرفت است، بعضی از اوقات، شائبهها و تصورات اشتباه راهشان را به دایره دانش ما باز میکنند. در این مقاله قصد داریم به مرور برخی از رایجترین اشتباهاتی بپردازیم که مردم هنگام صحبت راجع به سختافزارهای کامپیوتر مرتکب میشوند. در هر مورد، برداشت عمومی اشتباه را تشریح کردهایم و توضیح دادهایم که چرا این ذهنیت غلط است.
۱. مقایسه پردازندهها براساس تعداد هسته و سرعت کلاک
اگر دنیای تکنولوژی را برای مدتی نسبتا طولانی دنبال کردهاید، قطعا حداقل یک بار چنین مقایسهای به گوشتان خورده است: «پردازنده الف ۴ هسته دارد که با فرکانس کاری ۴ گیگاهرتز عمل میکنند. پردازنده ب ۶ هسته دارد که با فرکانس کاری ۳ گیگاهرتز عمل میکنند. از آنجایی که ۴x۴=۱۶ و ۶x۳=۱۸، بنابراین پردازنده ب بهتر است». بیان جمله، یکی از گناهان کبیره دنیای سختافزار به حساب میآید. بیشمار متغیر و پارامتر مختلف هنگام مقایسه پردازندهها به این شکل پدید میآید.
اگر همین فرض را درست بپنداریم و ضمنا تمام مشخصههای دیگر دو پردازنده را کاملا برابر در نظر بگیریم، پردازندهای که ۶ هسته داشته باشد از همان طراحی با ۴ هسته سریعتر است. به همین ترتیب، پردازندهای ۴ گیگاهرتزی از چیپی یکسان با فرکانس ۳ گیگاهرتز سریعتر خواهد بود. ولی وقتی پیچیدگی چیپهای واقعی و مدرن را در بحث دخیل کند، چنین مقایسههایی کاملا بیمعنی میشوند.
برخی وظایف کامپیوتری به فرکانس بالاتر نیاز دارند و برخی هم به هستههای بیشتر. یک پردازنده شاید آنقدر انرژی بیشتری مصرف کند که بهبود پرفورمنس بیارزش جلوه کند. یک پردازنده شاید کش بیشتری نسبت به دیگری داشته باشد، یا یک خط لوله بهینهتر. لیست فاکتورهایی که در این ذهنیت دخیل نشده بسیار بلندبالا است. لطفا هیچوقت پردازندهها را به این شکل با یکدیگر مقایسه نکنید.
۲. سرعت کلاک مهمترین شاخص پرفورمنس است
در ادامهی بحثی که راجع به تصور غلط پیشین مطرح کردیم، لازم است درک کنید که سرعت کلاک همهچیز نیست. دو پردازنده که قیمت حدودا یکسانی داشته و از فرکانس کاری مشابه بهره میگیرند، میتوانند پرفورمنسی کاملا متفاوت از دیگری داشته باشند.
بدون تردید سرعت هسته تاثیر خودش را روی پرفورمنس میگذارند، اما از جایی به بعد، فاکتورهای دیگری به میدان میآیند که تاثیر بزرگتری میگذارند. پردازندهها ممکن است زمان زیادی را صرف منتظر باقی ماندن برای دیگر اجزای سیستم کنند، بنابراین فضای کش و معماری شدیدا مهم است. با اینها میتوان وقت تلق شده را کاهش داد و به پرفورمنس بالاتر در پردازنده رسید.
معماری کلی سیستم میتواند نقشی اساسی در تمام ماجرا ایفا کند. کاملا محتمل است که یک پردازنده کُند که معماری داخلیاش بهتر بهینهسازی شده، دیتای بیشتری را نسبت به یک پردازنده سریع پردازش کند. در طراحیهای جدید، عملکرد بر وات به فاکتوری قابل اتکاتر برای کمیتسنجی پرفورمنس تبدیل شده است.
۳. اصلیترین چیپی که به دستگاه قوت میرساند، پردازنده است
این چیزیست که قبلا کاملا حقیقت داشت، اما با گذشت هر روز، از میزان صحت آن کاسته میشود. بسیاری از ما عادت داریم که بسیاری از کارکردهای مختلف را به «سیپییو» یا «پردازنده» مرتبط بدانیم، اما حقیقت متفاوت است. ترند کنونی در دنیای سختافزار، «پردازش ناهمگن» است و شامل ترکیب کردن بسیاری از المانهای پردازشی درون چیپی واحد میشود.
اگر به صورت کلی صحبت کنیم، چیپ موجود در اکثر سیستمهای دسکتاپ و لپتاپ، پردازنده است. اما در هر دستگاه الکترونیکی دیگری، خبری از پردازنده در معنای سنتیاش نیست و در واقع از «سیستم بر چیپ» (SoC) استفاده شده است.
مادربرد یک کامپیوتر دسکتاپ به فضای کافی برای اتصال انبوهی از چیپهای مختلف که هرکدام وظیفهای خاص دارند دسترسی دارد. اما چنین کاری روی بسیاری از دیوایسهای دیگر مانند موبایلها و تبلتها امکانپذیر نیست. کمپانیهای تکنولوژی، امروز به دنبال افزودن بیشترین کارایی ممکن درون چیپی واحد هستند تا به پرفورمنس بالاتر و بهینگی بیشتر در مصرف انرژی دست پیدا کنند.
علاوه بر پردازنده، سیستم بر چیپ موجود در موبایل شما شامل پردازشگر گرافیکی، رم، انکودر/دیکودر تصویر، مودم، سیستم مدیریت انرژی و دوجین قطعه دیگر نیز میشود. اگرچه به عنوان یک غلط مصطلح میتوانید به تمام اینها به چشم پردازنده نگاه کنید، اما پردازنده یا سیپییو تنها یکی از بخشهای سیستمهای بر چیپ امروزی است.
۴. تکنولوژی گره و ابعاد میتوانند برای مقایسه کارآمد باشند
اخیرا اخبار زیادی راجع به تاخیر اینتل در استفاده از تکنولوژی گره (Node) نسل بعدش به گوشمان رسیده است. وقتی یک تولیدکننده چیپ مثل اینتل یا AMD محصولی طراحی میکنند، تولید آن چیپ با یک فرایند خاص صورت میگیرد. رایجترین معیار برای سنجش فرایند، ابعاد ترانزیستورهای بسیار ریزی است که محصول را به وجود میآورند.
این سنجش براساس «نانومتر» انجام میشود و رایجترین فرایندهای تولید، به صورت ۱۴ نانومتر، ۱۰ نانومتر، ۷ نانومتر و ۳ نانومتر انجام میشوند. کاملا منطقی است که بتوانید نسبت به یک چیپ ۱۴ نانومتری، دو برابر ترانزیستور بیشتر را در یک چیپ ۷ نانومتری جای دهید، اما این موضوع لزوما حقیقت ندارد. فاکتورهای زیادی در این موضوع دخیل هستند و بنابراین تعداد ترانزیستورها و به تبع آن، قدرت پردازشی به صورت تصاعدی و همگام با ابعاد تکنولوژی افزایش نمییابد.
یک موضوع مهم دیگر اینست که هیچ سیستم استانداردی برای سنجش به این شکل نداریم. کمپانیهای بزرگ قبلا محصولاتشان را به این شکل میسنجیدند، اما اکنون هرکدام مسیری نسبتا متفاوت نسبت به دیگری در پیش گرفتهاند و سنجش را به طرف اندک متفاوتی انجام میدهند. همه اینها را گفتیم تا برسیم به اینکه ابعاد چیپ نباید هنگام مقایسه معیار باشد. وقتی دو چیپ درون نسلی یکسان داریم، چیپ کوچکتر قرار نیست مزیت چندانی نسبت به دیگری داشته باشد.
۵. مقایسه پردازشگرهای گرافیکی براساس تعداد هسته
هنگام مقایسه پردازنده (سیپییو) و پردازشگر گرافیکی (جیپییو)، بزرگترین تفاوت در تعداد هستههای هرکدام ظاهر میشود. پردازندهها تنها چند هسته بسیار قدرتمند دارند اما پردازشگرهای گرافیکی از صدها یا هزاران هسته با قدرت کمتر تشکیل شدهاند. به این ترتیب، پردازشگرهای گرافیکی میتوانند کارهای بیشتری را به صورت موازی به انجام برسانند.
درست همانطور که پردازنده چهار هستهای یک شرکت میتواند پرفرومنسی بسیار متفاوت از پردازنده چهار هستهای یک شرکت دیگر داشته باشد، این موضوع راجع به پردازشگرهای گرافیکی هم مصداق دارد. هیچ راه خوبی برای مقایسه تعداد هستهها در پردازشگرهای گرافیکی شرکتهای مختلف وجود ندارد. هر تولیدکننده معماری متفاوتی در پیش میگیرد و بنابراین چنین معیارهایی، بیمعنی میشوند.
برای مثال، یک شرکت شاید هستههای کمتر و قابلیتهای بیشتر را ترجیح دهد و شرکتی دیگر مسیر عکس را در پیش بگیرد. البته اگر مشغول مقایسه پردازشگرهای گرافیکی متعلق به یک شرکت و یک خانواده باشید، چنین مقایسهای کاملا قابل قبول است.
۶. فلاپس معیاری صحیح برای سنجش پرفورمنس است
هنگام معرفی و عرضه یک چیپ قدرتمند یا یک ابرکامپیوتر، نخستین چیزی که در تبلیغات روی آن تاکید میشود، خروجی سختافزار براساس «فلاپس» است. فلاپس مخفف «عملیاتهای نقاط شناور بر ثانیه» است و معیاری بر اینکه یک سیستم چه میزان وظیفه را میتواند به انجام برساند.
این معیار به خودی خود بسیار سرراست به نظر میرسد، اما شرکتهای تولیدکننده سختافزار میتوانند با ارقام به گونهای بازی کنند که محصول سریعتر از آنچه واقعا هست به نظر برسد. برای مثال، پردازش ۱.۰ + ۱.۰ به مراتب آسانتر از ۱۲۳۴.۵۶۷۸ + ۸۷۶۵.۴۳۲۱ است. کمپانیها میتوانند محاسبات و میزان دقت آنها را دستکاری کنند تا ارقامشان بهتر از آب درآید.
با چشم دوختن به فلاپس به عنوان تنها معیار پردازش در سیپییو و جیپییو، بیشمار فاکتور دیگر مانند پهنای باند حافظه را نادیده گرفتهاید. این را هم حواستان باشد که کمپانیها میتوانند بنچمارکهایشان را برای سختافزار بهینه کنند تا ارقامی دروغین به دست آید.
۷. آرم چیپ میسازد
تقریبا تمام سیستمهایی که انرژی کمی مصرف میکنند، تا حدودی قوت گرفته از پردازنده ARM هستند. اما چیزی که دانستناش بسیار مهم است اینکه آرم خودش چیپهای فیزیکی نمیسازد. این شرکت در عوض به طراحی چیپها پرداخته و نقشه ساخت آنها را در اختیار شرکتهای دیگر قرار میدهد تا خودشان به تولید آن روی بیاورند.
برای مثال، سیستم بر چیپ A13 موجود در آیفون، از معماری آرم بهرهمند است اما توسط اپل طراحی شده. مثل اینست که به یک نویسنده یک لغتنامه بدهید و از او بخواهید چیزی بنویسد. نویسنده باید از خط مشی چگونگی استفاده از کلمات پیروی کند، اما در عین حال میتواند راجع به هرچیزی که دلش میخواهد بنویسد..
با فروش لایسنس مالکیتهای معنویاش، شرکت آرم به امثال اپل، کوالکام، سامسونگ و بسیار دیگر اجازه میدهد که از چیپهایش بسته به نیازهایشان استفاده کنند. به این ترتیب، چیپی که برای یک تلویزیون طراحی شده میتواند روی انکود و دیکود تصاویر متمرکز باشد و چیپی که طراحی شده تا داخل ماوس وایرلس قرار بگیرد، روی کاهش مصرف انرژی. و چیپ آرم موجود در ماوس نیازی به پردازشگر گرافیکی یا یک پردازنده قدرتمند ندارد.
از آنجایی که تمام پردازندههای مبتنی بر آرم از هسته مشترکی در طراحی بهره میبرند، قادر به اجرای اپلیکیشنهایی یکسان نیز هستند. بنابراین کار توسعهدهندگان آسان شده و یکپارچگی پلتفرمها دائما افزایش مییابد.
۸. ARM در برابر x86
ARM و x86 دو معماری مبتنی بر دستورالعمل برجسته هستند که چگونگی کارکرد سختافزار کامپیوترها و همینطور چگونگی تعامل با آنها را تعیین میکنند. آرم پادشاه دنیای موبایل و سیستمهای توکار است و x86 بازار لپتاپ، دسکتاپ و سرور را زیر سلطه خود آورده. البته معماریهای دیگری نیز داریم، اما آن معماریها کارکردهای عمومی ندارند.
وقتی راجع به یک معماری مبتنی بر دستورالعمل صحبت میکنیم، در واقع داریم به طراحی داخلی پردازنده اشاره میکنیم. همهچیز مثل ترجمه کردن یک کتاب به زبانی دیگر است. میتوانید ایدههای کلی مطلب را حفظ کنید، اما آنها را به شکلی متفاوت مینویسید. به این ترتیب، بعد از نوشتن یک نرمافزار، میتوانید آن را به گونهای تدوین کنید که روی پردازنده x86 به اجرا درآید یا به گونهای دیگر که روی آرم اجرا شود.
آرم از چند جهت، با x86 تفاوت دارد و به همین خاطر توانسته دنیای موبایل را مال خود کند. برجستهترین تفاوت میان این دو، میزان انعطافپذیری و تکنولوژیهایی است که با خود به ارمغان میآورند. ساخت یک پردازنده آرم مثل این میماند که یک مهندس با اسباببازی لگو بازی کند. آنها میتوانند هر قطعهای که نیاز دارند را برداشته و بهترین پردازنده را برای مصارف خود بسازند. آیا چیپی نیاز دارید که بتواند انبوهی از ویدیوها را پردازش کند؟ میتوانید به سراغ پردازشگر گرافیکی قدرتمندتر بروید. نیاز به امنیت و کدگذاری دارید؟ میتوانید از شتابدهندههای مخصوص بهره بگیرد.
تمرکز آرم بر فروش لایسنس تکنولوژی به جای فروش چیپهای فیزیکی، اصلیترین دلیل موفقیت معماری آنها بوده است. اینتل و AMD در این حوزه بسیار دیر عمل کردند و خلایی به وجود آوردند که تبدیل به فرصتی برای آرم شد.
حالا که صحبت از اینتل شد، این شرکت عمدتا از معماری x86 استفاده میکند و گرچه آنها سازندهاش هستند، اما AMD هم به استفاده از آن روی آورده. اگر جایی چشمتان به عبارت x86-64 خورد، صرفا به ورژن ۶۴ بیتی x86 اشاره شده است. اگر به صورت مداوم از ویندوز استفاده کنید، احتمالا برایتان این سوال پیش آمده که چرا دو فولدر به نامهای «Program Files» و «Program Files (x86)» داریم. موضوع به این خاطر نیست که نخستین فولدر از x86 استفاده نمیکند، موضوع فقط اینست که این فولدر برخلاف فولدر دوم، ۳۲ بیتی است.
یک برداشت اشتباه دیگر هنگام مقایسه آرم و x86، نسبت عملکرد آنهاست. گفتنش سخت نیست که پردازندههای x86 همواره سریعتر از پردازندههای آرم هستند و به همین خاطر، هیچوقت پردازندههای آرم را در سیستمهای بسیار قدرتمند نمیبینیم. اما این مقایسه منصفانه نیست. تمام فلسفه طراحی آرم، تمرکز بر بهینگی و کاهش مصرف انرژی است. آرم به x86 اجازه موفقیت در بازار سیستمهای پیشرفته را داده چون اصلا در آن بازار فعالیتی نمیکند. درحالی که اینتل و AMD روی بیشینه پرفورمنس با x86 متمرکز هستند، آرم پرفورمنس را به بیشترین میزان به ازای هر وات میرساند.
۹. پردازشگرهای گرافیکی سریعتر از پردازندهها هستند
طی چند سال اخیر، شاهد افزایش چشمگیر پرفورمنس و نفوذ پردازشگرهای گرافیکی بودهایم. بسیاری از وظایف کامپیوتری که قبلا توسط پردازنده انجام میشدند حالا زیر دست پردازشگر گرافیکی قرار میگیرند تا از مزیت پردازش موازی برخوردار شوند. به این ترتیب، در وظایفی که نیازمند پردازش موازی چندین کار کوچک هستند، جیپییو سریعتر از سیپییو ظاهر میشود. اما این موضوع چیزی نیست که همواره مصداق داشته باشد و به همین خاطر، هنوز به پردازندهها نیاز داریم.
برای استفاده صحیح از سیپییو یا جیپییو، توسعهدهنده باید کد خود را با کامپایلرها و رابطهای برنامهنویسی خاص بهینهسازی کند. هستههای پردازشی داخلی یک جیپییو که تعدادشان میتواند به هزاران عدد برسد، در قیاس با هستههای پردازنده بسیار ساده هستند. این هستهها طراحی شدهاند تا وظایف کوچکی را دوباره و دوباره به انجام برسانند.
هستههای سیپییو از طرف دیگر برای مجموعهای از عملیاتهای پیچیده طراحی شدهاند. برای برنامههایی که نمیتوانند به صورت موازی پردازش شوند، پردازنده همواره گزینهای بهتر است. با کامپایلر مناسب، از لحاظ فنی میتوان کدی که برای پردازنده نوشته را روی پردازشگر گرافیکی به اجرا در آورد و بالعکس، اما مزایای واقعی تنها زمانی حاصل میشوند که برنامه برای پلتفرم مقصد بهینهسازی شده باشد. اگر قرار باشد صرفا به قیمتگذاریها نگاه کنیم، گرانقیمتترین پردازندههایی میتوانند ۵۰ هزار دلار باشند، اما قدرتمندترین پردازشگرهای گرافیکی تنها نصف این مقدار قیمتگذاری شدهاند. در مجموع، سیپییوها و جیپییوها هرکدام در حوزه خود قدرتمند تلقی میشوند و هیچکدام لزوما از دیگری سریعتر نیست.
۱۰. پردازندهها همواره سریعتر و سریعتر میشوند
یکی از شناختهشدهترین قواعد صنعت تکنولوژی، قانون مور است. براساس این قانون، تعداد ترانزیستورهای موجود در هر چیپ، هر دو سال یکبار حدودا دو برابر میشود. این قانون در ۴۰ سال اخیر همواره صحت داشته است، اما اکنون به نقطهای رسیدهایم که این رشد تصاعدی دیگر مثل سابق اتفاق نمیافتد.
میتوانیم با خود فکر کنیم که اگر نمیتوانیم ترانزیستورهای بیشتر را درون چیپ جای دهیم، شاید بتوانیم چیپهایی بزرگتر بسازیم. اما محدودیت اصلی، افزایش قدرت چیپ و در عین حال، از بین بردن حرارتی است که تولید میکند. چیپهای مدرن نیازمند جریانی معادل صدها آمپر هستند و صدها وات حرارت نیز تولید میکنند.
سیستمهای ارائه انرژی و خنک کننده امروزی با محدودیتهای فراوانی مواجه هستند و به همین خاطر نمیتوان خیلی ساده چیپهایی بزرگتر ساخت. پس اگر نمیتوانیم چیپهای بزرگتر بسازیم، نمیتوانیم ترانزیستورهای روی چیپ را کوچکتر کنیم و پرفورمنس را بالا ببریم؟ این همان چیزی است که برای مدتها ذهن فعالان تکنولوژی را به خود مشغول کرده و برای چند دهه هم انجام شده. اما حالا در کوچکتر کردن ترانزیستورها به مشکل خوردهایم.
با استفاده از فرایندهای ۷ نانومتری و ۳ نانومتری، اثرات کوانتومی تبدیل به مشکل میشوند و ترانزیستورها به درستی رفتار نمیکنند. البته هنوز فضایی کمابیش برای کاهش هرچه بیشتر ابعاد ترانزیستورها وجود دارد، اما اگر دست به ابداعاتی تازه نزنیم، دیگر نمیتوانیم آنها را از این کوچکتر کنیم. پس اگر نمیتوانیم چیپهای بزرگتر بسازیم و اگر نمیتوانیم ترانزیستورها را کوچکتر کنیم، آیا امکان دارد که ترانزیستورهای فعلی را سریعتر کنیم؟ این هم حوزهای است که در گذشته منافع زیادی برایمان به همراه داشته اما حالا دارد به بنبست میخورد.
درحالی که سرعت پردازنده طی نسلهای اخیر افزایش یافته، برای نزدیک به یک دهه در رنج فرکانس ۳ الی ۵ گیگاهرتز گیر کردهایم. این به خاطر ترکیبی از فاکتورهای مختلف است. مشخصا یکی از دلایل عدم افزایش فرکانس کاری، مصرف انرژی بالاتر است. اما دلیل اصلی را میتوان در محدودیتهای ترانزیستورهای کوچکتر و همینطور قوانین فیزیک جستجو کرد.
وقتی ترانزیستورهای کوچکتر میسازیم، باید سیمهایی کوچکتر نیز بسازیم که آنها را به یکدیگر متصل نگه دارند که این هم مقاومت را افزایش میدهد. ما به صورت سنتی توانستهایم سرعت ترانزیستورها را از طریق کاهش فاصله میان قطعاتشان روی چیپ افزایش دهیم، اما برخی از قطعات ترانزیستورهای امروزی تنها اندازه یک یا دو اتم از یکدیگر فاصله دارند. بنابراین فضای چندانی برای بهبود وجود ندارد.
دیدگاهها و نظرات خود را بنویسید
برای گفتگو با کاربران ثبت نام کنید یا وارد حساب کاربری خود شوید.
مفید بود ?
جوری که شما میگید هیچ معیاری درست نیست و در بحث برتری سی پی یو فقط باید مخالفت کرد با بقیه و فقط گفت اصلا اینجور نیست
بهترین مقایسه در عملکرد دو پردازنده تست های عملی هست که در برخی سایتها این مقایسه وجود دارد، از مصرف و عملکرد تک هسته ای تا چند هسته ای و ....
ممنون به خاطر متن خوب