مدتها است که تقریبا تمام پردازندههای کامپیوترهای شخصی و لپتاپها از بستر ۶۴ بیتی پشتیبانی میکنند و بسیاری از نرمافزارهای مطرح دنیا علاوه بر نسخه سازگار با پردازش ۳۲ بیتی، نسخه اختصاصی ۶۴ بیتی نیز دارند. سیستمعاملهای مختلف کامپیوترهای شخصی از ویندوز تا لینوکس و مک به خوبی از هر دو حالت پردازش ۳۲ بیتی و ۶۴ بیتی پشتیبانی میکنند.
پردازش ۶۴ بیتی چه تفاوتی با ۳۲ بیتی دارد؟
آیا این تفاوت در تلفنهای هوشمند نیز حائز اهمیت است؟
در حقیقت استفاده از پردازش ۶۴ بیتی در تلفنهای هوشمند مزایا و معایب خاص خود را دارد. معماری پردازندههای ۶۴ بیتی با ۳۲ بیتی متفاوت است اما پردازندههای ۶۴ بیتی قادر به اجرای دستورات ۳۲ بیتی نیز هستند. برای اینکه نهایت استفاده را از پردازش ۶۴، نه تنها باید سیستمعامل بلکه نرمافزارها نیز برای پشتیبانی از این نوع پردازش تولید شوند. یعنی اگر فقط پردازندهی دستگاه ۶۴ بیتی باشد، نهایت استفاده را از توان پردازشی دستگاه نخواهید برد و باید سختافزار و نرمافزار، هر دو از پردازش ۶۴ بیتی پشتیبانی کنند.
یک پردازندهی ۶۴ بیتی قادر است ۲ به توان ۶۴ مقدار محاسباتی را ذخیره کرده و در حافظه آدرس دهی کند. توجه داشته باشید که این عدد به این معنا است که پردازنده ۶۴ بیتی قادر است تا بیش از ۴ میلیارد برابر «حافظه فیزیکی رم» بیشتر را در مقایسه با پردازندههای ۳۲ بیتی، آدرس دهی کند. سیستمهای مبتنی بر پردازندهی ۳۲ بیتی قادر به آدرس دهی حداکثر ۴ گیگابایت (۲ به توان ۳۲) از حافظهی رم هستند، اما پردازندههای ۶۴ بیتی از نظر تئوری میتوانند تا ۱۶.۸ میلیون ترابایت رم (۲ به توان ۶۴) را پشتیبانی کنند. برای اینکه پردازندهی ۶۴ بیتی بتواند درست کار کند سیستمعامل دستگاه نیز باید از پردازش ۶۴ بیتی پشتیبانی کند.
اولین پردازنده ۶۴ بیتی دنیا در سال ۱۹۶۱ توسط IBM و در سوپر کامپیوتر 7030 Stretch طراحی و استفاده شد. اما تا دهه اول قرن ۲۱ از این پردازندهها در کامپیوترهای خانگی استفاده نشد. پردازندههای ۶۴ بیتی با عرضه ویندوز xp رایج شدند. پس از آن تمام نسخههای ویندوز از پردازش ۶۴ بیتی پشتیبانی کردند. کامپیوترهای که به پردازنده ۶۴ بیتی مجهز میشوند قادرند نسخه ۳۲ بیتی از سیستمعاملها و اپلیکیشنها را اجرا کنند، اما برعکس این موضوع صادق نیست. علاوه بر این برای اینکه از تمام توان پردازنده ۶۴ بیتی دستگاه خود استفاده کنید، باید نسخه ۶۴ بیتی سیستمعامل و نرمافزارهای مورد نظر خود را داشته باشید.
یکی از مهمترین تفاوتهای بین پردازش ۳۲ بیتی و ۶۴ بیتی در تعداد محاسباتی است که هر کدام در هر ثانیه انجام میدهند. در واقع به بیان ساده، در برخی از شرایط پردازندههای ۶۴ بیتی سریعتر از ۳۲ بیتیها عمل میکنند.
احتمالا شما هم این عبارت را شنیدهاید:"اگر حافظهی رم دستگاه بیشتر از ۴ گیگابایت نباشد، تفاوتی بین پردازنده ۳۲ بیتی و ۶۴ بیتی نیست" این عبارت همیشه درست نیست. در این شکی نیست که مهمترین تفاوت بین پردازندههای ۶۴ بیتی با ۳۲ بیتی در پشتیبانی از حافظه رم بالاتر است. اما تفاوتهای دیگری نیز وجود دارد:
- مدیریت حافظه در پردازندههای ۶۴ بیتی بهتر از ۳۲ بیتی است. پردازندههای ۳۲ بیتی قادر نیستند فایلهای حجیم و بزرگتر از ۴ گیگابایت را به سادگی آدرس دهی کنند و تنها بخشی از فایل را به اصطلاح در حافظه «مپ» میکنند.
- نرمافزارهای خاص مانند آنهایی که به رمزگذاری یا رمزگشایی محتوا میپردازند میتوانند از آدرس دهی بهتر پردازندهی ۶۴ بیتی بهره برده و با سرعت بیشتری امور مورد نظر خود را انجام دهند. مثلاً برنامههای رندر سه بعدی یا ویرایش ویدیو میتواند بازدهی به مراتب بالاتری را در پردازندههای ۶۴ بیتی داشته باشند.
- در برخی از امور، پردازنده مجبور است به طور مدارم مقادیر مورد نظر خود را از حافظه خوانده و رجیستر کند، به همین دلیل شاید انجام یک کار مشخص در پردازنده ۳۲ بیتی به چند سیکل در CPU نیاز داشته باشد، اما همان تسک در یک پردازنده ۶۴ بیتی به دلیل دسترسی وسیعتر به حافظه در سیکلهای کمتری انجام شود. در واقع پردازندههای ۶۴ بیتی قادر هستند تا آدرس دهی وسیعتری را در حافظه داشته باشند و با حجم به مراتب بالاتری از اطلاعات در اپلیکیشنها کار کنند. این موضوع در نرمافزارهایی همچون ویرایش ویدیو، محاسبات سنگین ریاضی، دیتابیسهای بزرگ و مواردی از این قبیل به خوبی خود را نشان میدهد.
در حال حاضر پردازندههای موبایل، بیشتر از نیاز ما قوی هستند و به همین دلیل تولیدکنندگان نیمه هادی تلاش میکنند تا پردازندههای خود را از نظر مصرف انرژی، بهینهتر کنند تا طول عمر باتری تلفنهای هوشمند و تبلتها افزایش یابد. به همین دلیل مهاجرت به پردازندههای ۶۴ بیتی حائز اهمیت است.
انویدیا درباره پردازندههای ۶۴ بیتی و استفاده از آنها در اندروید اینگونه اظهار نظر کرده است:
"تقریبا تمام کامپیوترهای رومیزی و لپتاپ از سالها قبل به پردازندههای ۶۴ بیتی مجهز شدهاند. استفاده از این پردازندهها باعث بازده بالاتر برای اپلیکیشنها و دسترسی به حافظه حجیمتر میشود.
برای اندروید، داستان کمی متفاوت است و این موضوع بیشتر به دلیل استفاده از معماری ARMv8 اهمیت پیدا میکند. این معماری نه تنها پشتیبانی از پردازش ۶۴ بیتی را میسر میکند بلکه بهبودهای بسیاری در زمینه مصرف بهینه انرژی و بازده بالاتر را به همراه دارد. این موضوع حتی بر روی اپلیکیشنهای ۳۲ بیتی نیز تاثیر گذار خواهد بود.
گوگل در کنفرانس I/O از اندروید L با پشتیبانی از پردازندههای ۶۴ بیتی، رونمایی کرد. انویدیا نیز از مدتها قبل، SoC جدید خود را با نام Tegra K1 معرفی کرده است که از پردازش ۶۴ بیتی پشتیبانی میکند. پردازنده تگرا کیوان، تمام معماری ARMv8 را بکار گرفته و هر هستهی Denver آن قادر به پشتیبانی از پردازش ۷ مسیرِ است. این در حالی است که پردازندههای مشابه از ۳ مسیر پردازشی بهره میبرند."
در واقع در دنیای تلفنهای هوشمند و ابزارهای موبایل مبتنی بر معماری آرم، آنچه در زمینهی استفاده از پردازنده ۶۴ بیتی اهمیت پیدا میکند بیشتر مربوط به بهینهسازیهای انجام شده در معماری ARMv8 است. اغلب پردازندههایی که در این ابزارها استفاده میشوند مبتنی بر معماری آرم هستند و اگر پردازندهای بخواهد در این پلتفرم از پردازش ۶۴ بیتی بهره ببرد، باید روی معماری پایهی ARMv8 و هستههای همچون Cortex A57 و Cortex A53 طراحی شود. این معماری بهینه سازیهای بسیاری در مصرف انرژی و قدرت پردازشی نسبت به معماری ARMv7 دارد که تاثیر قابل ملاحظهای در عملکرد کلی دستگاه و طول عمر باتری دارد.
در نهایت از اینجا میتوانید محدودیت میزان حافظه پشتیبانی شده در هر نسخه از ویندوز را مشاهده کنید.
منبع: zoomit