سرعت RAM

آیا سرعت RAM فاکتور مهمی است؟

معمولا هنگام بررسی کانفیگ یک کامپیوتر یا لپ تاپ، وقتی به RAM می رسیم، ظرفیت و نسخه دیتا ریت دوگانه یا Dual Data Rate (DDR) آن مورد اشاره قرار می گیرد ولی ظاهرا اثری از سرعت رم به طور دقیق در آن وجود ندارد. تعریف سرعت رم چیست؟ چگونه محاسبه می شود و چه عواملی در سرعت رم موثر است؟

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

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

سرعت یک رم چیست؟

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

برای اینکه درک بهتری داشته باشیم که رم ما چقدر سریع است، باید به تاخیر CAS و فرکانس Clock به طور همزمان نگاه کنیم.

فرکانس کاری رم

فرکانس رم خارج از فرکانس کلاک سیستم کار می کند. (هرچند معمولا این فرکانس با سرعت رم اشتباه گرفته می شود در حالیکه این فرکانس بخشی از معادله سرعت است.) هر کدام از عملیات نوشتن یا خواندن روی رم، در یک سیکل انجام می شود. RAM در واقع با تعداد سیکل هایی که می تواند در یک ثانیه انجام دهد، سنجیده می شود.

به عنوان مثال اگر یک رم دارای مشخصه فرکانسی 3200MHz باشد، یعنی می تواند 3.2میلیارد سیکل کاری را در یک ثانیه انجام دهد و خب، واضح است که هر چقدر تعداد سیکل ها در یک ثانیه بیشتر باشد، حجم اطلاعات نوشته و فراخوانی شده بیشتر بوده و کاربر تجربه استفاده روان تری در استفاده از سیستم خواهد داشت.

معمولا ارتباط بسیار نزدیکی بین DDR بالاتر و سرعت کلاک رم وجود دارد که این مساله می تواند به راحتی در مقایسه DDR4، DDR3 و البته DDR5 و 6 دیده شود. حتما با عبارتی مثل 8GB DDR4-2400Mhz در مشخصات برخی لپ تاپ ها برخورد داشته اید. فرکانس کاری این رم 2400 مگاهرتز است. فرکانس های رم ها در DDR2، از 800 مگاهرتز شروع می شود و در DDR5، به 5200 مگاهرتز می رسد.

تاخیر CAS یا CAS Latency

Column Access Strobe Latency یا به همان تاخیر CAS که به اختصار CL گفته می شود، زمان تاخیر رم شما از دریافت یک دستور تا اجرای آن است. اعداد تایمیمگی که در یک لاگ از یک رم مشاهده می شود گاها به شکل اینگونه است:  15-15-17-35. و این اعداد چیزی نیستند جز تعداد سیکل هایی که رم برای پاسخ دادن  و اجرا کردن یک دستور مصرف کرده یا به عبارتی دیگر از دست داده است. نکته قابل توجه این است که RAM های با مگاهرتز بالاتر و با تاخیر CAS بیشتر می توانند از RAMهای با مگاهرتز پایینتر و تاخیر CAS کمتر، کندتر باشند.

اینجا جاییست که ممکن است شما را کمی به اشتباه بیندازد یا سردرگرم کند. برای این کار بهتر است اطلاعات را کمی ساده سازی  و فرمول بندی کنیم.

نکته قابل توجه این است که RAM های با مگاهرتز بالاتر و با تاخیر CAS بیشتر می توانند از RAMهای با مگاهرتز پایینتر و تاخیر CAS کمتر، کندتر باشند.

پیداکردن سرعت عملی RAM

همانگونه که توضیح دادیم، در محاسبه سرعت واقعی رم باید دوعامل تاخیر CAS و فرکانس کلاک RAM به طور همزمان مورد بررسی قرار گیرد. البته فرض را بر این میگیریم که تمام رم ها DDR هستند. یعنی دارای مسیر دوگانه.

DDR که فاکتور مهمی در سرعت رم است (و ما در اینجا فرض کردیم که تمام رم هایی که با آن سرو کار داریم DDR هستند)، به RAM هایی گفته می شوند که در یک سیکل دو بار دیتا را انتقال می دهند یعنی  در هر نیم پریود از یک سکل کلاک، یک بار.

در بررسی تاخیر CAS، همانگونه که اشاره شد چهار عدد، تایمینگ رم را مشخص می کند (به عنوان مثال 14-15-15-39) و ما اولین عدد را به عنوان مرجع استفاده می کنیم. اکنون با استفاده از فرمول زیر می توانیم سرعت دقیق RAM خود را محاسبه کنیم:

t=(f/2)*CL

در این فرمول t سرعت پردازش هر task در رم شما بر حسب نانومتر، CL تاخیر Cas (اولین عدد Log) و f فرکانس کلاک بر حسب هرتز است. به عنوان نمونه اگر فرکانس کارم رم را 3200MHz و مقدار CL را 14 در نظر بگیریم، t=8.8 نانو ثانیه به دست می آید.

رم بیشتر یا رم سریعتر؟

در حالت کلی اگر در موقعیتی هستید که بین انتخاب یک رم 8GB سریعتر و یک رم 16GB کندتر شک دارید، رم 16 را انتخاب کنید؛ به خصوص زمانی که هزینه برایتان مهم است. البته اگر بتوانید رم 16 با کیت پرسرعتی را انتخاب کنید که بهترین گزینه است اما هزینه های زیادی را بابت بهبود کارایی ناچیز پرداخت می کنید که تنها برای مقاصد high-end می تواند توجیه پذیر باشد.

سرعت رم و ارتباط آن با پهنای باند

سرعت رم به طور مجزا عملا در یک سیستم تنها یک حد یا سطح مشخص مربوط به همان یونیت رم است ولی آنچه به شدت روی سرعت رم در حالت کار در داخل یک سیستم تاثیر است فاکتور های مختلفی است از جمله به پردازنده و پهنای باند ارتباطی رم با آن.

پهنای باند به ظرفیت انتقال دیتا بین رم و CPU بر حسب bit per second یا Symbol per second اطلاق می شود که در واقع منظور پهنای باند کانال ارتباطی یا همان باس 64 پینی است. این ظرفیت طبق قانون شانون ذاتا دارای محدودیت است و امکان انتقال سریعتر از یک حد با هر نوع مدولاسیونی، نرخ BER با bit error rate را از حد آستانه قابل قبول بیشتر می کند. البته با پیشرفت مدولاسیون ها و پردازنده ها و کاهش اندازه آنها (نانومتری) ظرفیت باس افزایش می یابد. اینجاست که روی لبه تکنولوژی حرکت می کنیم.

پس حالا اهمیت سرعت قابل پشتیبانی پردازنده (که در مشخصات هر پردازنده ذکر می شود)، محدودیت پهنای باند کانال ارتباطی و سرعت رم و ارتباط آنها با یکدیگر و محدودیت هایی که می توانند بر هم اعمال کنند احتمالا روشن تر شده است. در واقع در نهایت سیستم روی یک سرعت بهینه کار خواهد کرد که تمام طرفهای درگیر را راضی کند! موارد زیر در تعیین پهنای باند موثر هستند:

  • فرکانس کلاک DRAM مربوط به رم
  • تعداد انتقال دیتا در واحد سیکل ساعت
  • باس رم
  • تعداد اینترفیس ها یا اسلات های رم

در مورد گزینه آخر کمی توضیح بیشتری بدهم که کاربردی تر است: مادربردها تعداد اسلات های رم متفاوتی ساپورت می کنند. درواقع اگر ما از دو اسلات به طور همزمان استفاده کنیم، در واقع پهنای باند دیجیتال باس را دوبرابر کرده ایم. به همین دلیل است که قاعدتا استفاده از دو رم مثلا 8 گیگابایتی بهتر از یک رم 16 گیگابایتی با مشخصات یکسان است. البته باید به یاد داشته باشیم که رم های DDR برخلاف SDRAM ها خودشان دو کاناله هستند.

در انتهای این بخش فکر می کنم محاسبه پهنای باند یک سیستم می تواند بسیار روشنگر باشد: فرض می کنیم دو رم DDR4 با فرکانس 2400MHz در دو کانال یا اسلات DDR نصب شده است. پهنای باند به این شکل محاسبه می شود:

پهنای باند  برابر است با 2400 ضرب در یک میلیون (برحسب هرتز) ضرب در 2 (به خاطر DDR بودن رم) ضرب در 64 (تعداد بیت های هز اسلات به رم به صورت سنتی) ضرب در 2 (تعداد اسلات های DDR که رم های ما در آن نصب شده) که برابر می شود با 614.4Gb/s.

آیا سرعت رم برای گیمرها اهمیت دارد؟

احتمالا با تبلیغاتی که رم های مخصوص گیمینگ را معرفی می کنند برخورد کرده اید. البته اگر گیمر باشید! رم های ویژه و پر سرعت برای بازی ها! حتی اگر یک گیمر حرفه ای باشید به گونه ای که حاضرید برای 5 یا 10 فریم در ثانیه بیشتر هزینه های گزافی بکنید باز هم جواب این سوال فرقی نمی کند. پاسخ این سوال “نه!” است.

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

در چه مواقعی به رم با سرعت بالا نیاز داریم؟

ادامه دارد…