Тайминги оперативной памяти и почему они так важны
Оперативная память - один из основных компонентов компьютера, но мы не говорим о ней слишком часто
Если модули памяти не оснащены большими радиаторами и RGB подсветкой, то и внимания им уделяется мало. Процессор задет уровень производительности, который необходимо учитывать при подборе остальных комплектующих, но вы можете выжать немного больше производительности, если будете использовать более быструю память. Частота, как и тайминги или другими словами задержка, определяют скорость работы ОЗУ.
Характеристики оперативной памяти
Параметры работы ОЗУ можно найти на упаковке от модулей или используя различное ПО, например, CPU-Z, а также можно просто зайти в BIOS/UEFI. Полное наименование ваших модулей будет чем-то вроде этого:
DDR4 3200 (PC4 25600)
Здесь, DDR4 указывает на поколение памяти. Цифра после букв PC (2, 3 или 4), описывает тоже самое.
Зачастую первое четырехзначное число, в нашем примере это 3200, указывается как частота памяти. На самом деле это небольшой маркетинговый трюк, который, впрочем, не так ужасен, хоть и поддерживается производителями ПК и розничными сетями. Это число на самом деле отражает эффективную (удвоенную) скорость, измеряемую в миллионах передач в секунду.
У памяти DDR, реальная (фактическая) частота равна половине эффективной скорости передачи - 1600 МГц для нашего примера. Хотя, даже этот показатель выше внутренней частоты памяти, которая составляет всего 400 МГц. Однако, из-за того, что при использовании DDR памяти считывание команд и данных происходит дважды за один тактовый сигнал, можно сказать, что эффективная тактовая частота памяти вдвое больше реальной. Таким образом можно сказать, что эффективная скорость передачи данных в миллионах передач в секунду, совпадает с эффективной частотой памяти.
Число после букв PC, в нашем примере это 25600, показывает пиковую скорость передачи данных в мегабайтах в секунду. Умножив скорость передачи данных (в миллионах передач в секунду) на ширину шины ввода-вывода (64-бита во всех современных материнских платах), мы можем определить максимально возможную скорость передачи:
3200 миллионов передач в секунду * 64 бита за одну передачу / 8 бит для перевода в байты = 25600 Мб/с.
Каждое число сообщает, насколько быстра ваша память, однако они оба предоставляют одинаковую информацию просто в разных формах.
Что такое тайминги ОЗУ?
Тайминги - это еще один способ измерения скорости памяти. Они отражают задержку между различными операциями памяти. Ее можно рассматривать как "время ожидания".
Тайминги ОЗУ измеряются в тактовых импульсах и указываются в виде четырех чисел, разделенных дефисом, например 16-18-18-38. Чем меньше числа - тем быстрее память. Числа всегда расположены в строго определенном порядке и отображают различные характеристики.
Первое число: CAS Latency (CL)
CL определяет время, которое требуется памяти, чтобы выдать ЦПУ запрашиваемые данные - это время между получением команды и ее выполнением. Однако значение CL не стоит рассматривать отдельно от остальных характеристик. Следующая формула, учитывающая количество передач в секунду, позволяет перевести CL тайминг из циклов в наносекунды:
t = (CL/кол-во миллионов передач в секунду)*2000
Для нашего примера задержка CL составляет 10 нс - (16/3200)*2000 = 10.
В результате, более медленная память (с меньшей тактовой частотой) может иметь более короткую задержку, если тайминг CL будет меньше.
Второе число: RAS to CAS Delay (tRCD)
Модули ОЗУ используют строки и столбцы для получения доступа к памяти. Пересечение строк и столбцов указывает на конкретный адрес памяти (ячейку). Сначала активируется необходимая строка, а затем столбец. Тайминг tRCD определяет минимальную задержку между выбором строки (команда Active) и переходом к колонке для чтения или записи.
Третье число: RAS Precharge (tRP)
Тайминг tRP определяет задержку, необходимую для перехода к новой строке. После получения данных необходимо послать команду Precharge, для того чтобы закрыть строку из которой считывались данные и разрешить активацию новой. Технически, tRP отражает задержку между запуском команды Precharge и моментом, когда память сможет принять следующую команду Active. Зачастую он идентичен второму таймингу tRCD, потому что одни и те же факторы влияют на задержку обеих операций.
Четвертое число: Cycle Time (tRAS) Active to Precharge Delay
Тайминг tRAS отражает минимальное количество циклов, в течение которого строка должна оставаться открытой для правильной записи данных. Технически, он определяет задержку между получением команды Active и посылом команды Precharge или, иными словами минимальное время между открытием и закрытием строки.
Заключение
Контроллер памяти, который управляет вашей ОЗУ, устанавливает эти тайминги. Это означает, что их можно настроить, если, конечно, ваша материнская плата позволяет это сделать. Вы можете получить дополнительную производительность при разгоне памяти и снижении таймингов на несколько циклов.
Разгон памяти - это один из наиболее сложных процессов, но вместе с тем он способен улучшить работу зависимых от ОЗУ задач, например, скорость рендера и отзывчивость виртуальных машин.