Систематизация и просмотр многочисленных результатов низкоуровневыго тестирования, предоставляемого тестовым пакетом RightMark Memory Analyzer — можно сказать, то, что этому пакету давно не хватало. Что ж, такова специфика разработки тестового ПО универсального характера — прежде всего необходимо реализовать, опробовать, отладить (и, в случае необходимости, даже исправить) как можно больше разновидностей тестовых методик — для увеличения гибкости и расширения области применения тестового пакета, и только потом уже дорабатывать пользовательский интерфейс. Возможность такой доработки, наконец, появилась — седьмой по счету релиз RMMA, версии 3.4, имеет ряд новшеств, улучшающих его пользовательский интерфейс.
Новые возможности пользовательского интерфейса
Новшества можно заметить сразу, при запуске теста — в меню основных закладок приложения добавилась еще одна, под названием Results.

Как нетрудно догадаться, в ней представлена сводная таблица результатов тестирования (в рассматриваемом случае — только что законченного тестирования в потоковом режиме — batch), с возможностью манипулирования результатами. Рассмотрим вкратце последние, отметив, что они практически не отличаются от операций над последовательностью тестов (batch), которые можно встретить в закладке General.
Clear on Tests Run — включение/выключение режима очистки предыдущих результатов тестирования при запуске нового.
Delete — удаление одного (выбранного) результата тестирования.
Clear — полная очистка таблицы результатов.
Load — загрузка предыдущих результатов тестирования из файла.
Save — сохранение текущих результатов тестирования в файл.
View — детализированный просмотр выбранного результата тестирования (его также можно осуществить двойным нажатием по выбранному в списке результату).
При задействовании функции просмотра одним из двух описанных выше способов приложением открываются два новых окна, первое из которых уже привычно нам — это графическое представление результатов, которое мы видим при прохождении тестирования как такового, второе, новое для нас — это численное представление результатов.

Формат представляемых в этой таблице результатов в общем виде выглядят так:
- Номер позиции (точки)
- Переменная (размер блока, длина префетча, количество NOP-ов и т.п.)
- «Абсолютный» результат (не зависящий от частоты процессора — в виде количества байтов/такт или количества тактов)
- «Относительный» результат (в пересчете на частоту процессора — выраженная в МБ/с или наносекундах)
Операции над таблицей результатов, доступные в этом окне, следующие:
Subtest Type — выбор одного из подтестов, заданных изначально при выполнении тестирования, результаты которого будут отображены в таблице. Наименования параметра зависят от типа рассматриваемого теста. Для примера, в случае теста Memory Bandwidth выбор подтестов следующий: Read Bandwidth, Write Bandwidth и Copy Bandwidth.
Save BMP — сохранение результатов теста в графическом виде (файл BMP).
Save CSV — сохранение результатов теста в численном формате, совместимом с Microsoft Excel (файл CSV — Comma-Separated Values).
Отметим, что в новой версии RMMA 3.4 по-прежнему возможно «автоматическое» сохранение файлов BMP и CSV в ходе тестирования, что задается, как и прежде, параметром Test Reports в закладке General (его значение по умолчанию — «отключено»). Изменение этого параметра не влияет на внесение результатов тестов в таблицу, расположенную в закладке Results — оно осуществляется в любом случае. Кстати, дополнительно следует отметить, что все значения параметров, выбранных в закладке General, с целью повышения удобства использования, теперь сохраняются в конфигурационный файл приложения (rmma.ini).
Информация о системе
Новая версия тестового пакета RMMA также дополняет информационную составляющую приложения, находящуюся в закладке Platform Info. В ней появился новый подпункт, имеющий название DMI.

В этом разделе представляется информация, извлеченная из области DMI системного BIOS, согласно последней ревизии стандарта System Management BIOS Reference Specification, Version 2.3. К сожалению, стандарт SMBIOS (DMI) 2.3 насчитывает уже более 6 лет и морально устарел, тем не менее, некоторая информация из области DMI по-прежнему остается весьма полезной. Главным образом, это информация о материнской плате, системном BIOS и системе как таковой (последняя, как видно из приведенного рисунка, зачастую может являться весьма «символической», а иногда и вообще не прописанной в области DMI). Кстати, отметим, что автоматическое предоставление информации о производителе и модели системной платы, производителе и версии BIOS во многом облегчает процесс отправки результатов «быстрого» тестирования в нашу базу данных (которая, будем надеяться, скоро все же состоится), доступную в закладке RAM Database.
Вспомогательные утилиты
Вспомогательная утилита, поставляемая вместе с RMMA 3.4, по-прежнему всего одна — это небольшое приложение timings.exe, исполняемое из командной строки независимо от тестового пакета и предоставляющее возможность динамического изменения таймингов памяти (а также других важных параметров). Новая версия не обошла стороной и эту маленькую утилиту — ее функциональность была немного расширена.
Прежде всего, добавлена возможность (кстати, и в самом RMMA — тоже) менять схему чередования банков памяти (Bank Interleave) — функцию, реализованную в поддерживаемых приложением чипсетах VIA. Задается она с помощью ключевого слова interleave, типичные значения — 0 (чередование отключено), 2 (чередование двух банков) и 4 (чередование четырех банков). Заметим, что RMMA 3.4 также предоставляет информацию о чередовании «узлов» (Node Interleave), доступную в мультипроцессорных системах на базе AMD K8, однако изменение этого режима чередования «на ходу» не представляется возможным.
Кроме того, в новой версии утилиты появилась возможность низкоуровневого доступа к конфигурационным регистрам PCI-устройств, представляющая интерес для «продвинутых» пользователей. Для особо любознательных отметим, что такая возможность существовала и в предыдущей версии timings.exe, просто не была официально афиширована. Для изменения содержимого регистров в утилите предусмотрены следующие ключевые слова:
pci [bus] [dev] [fn] — выбор PCI-устройства, регистры которого подлежат изменению (PCI bus, device, function). Параметры по умолчанию — bus 0, device 0, function 0, что соответствует регистрам северного моста чипсета.
regbit [off] [bit] [val] — Выставление значения бита bit (0-7) 8-битного PCI-регистра, расположенного по адресу off (0-FFh) заданным значением val (0/1).
regbyte [off] [val] — Выставление значения 8-битного PCI-регистра, расположенного по адресу off (0-FFh) заданным значением val (0-FFh).
regword [off] [val] — Выставление значения 16-битного PCI-регистра, расположенного по адресу off (0-FFh, кратного двум) заданным значением val (0-FFFFh).
regdword [off] [val] — Выставление значения 32-битного PCI-регистра, расположенного по адресу off (0-FFh, кратного четырем) заданным значением val (0-FFFFFFFFh).