Linux ram speed test

Информация об оперативной памяти в Linux. Свободная, занятая и тип памяти

В этой статье мы рассмотрим, как получить информацию об оперативной памяти (RAM) в Linux.

Мы воспользуемся утилитами командной строки доступными для большинства Linux дистрибутивов.

Свободная и занятая оперативная память

Для получения информации о количестве свободной и занятой оперативной памяти в Linux можно использовать различные утилиты и команды. Рассмотрим несколько распространенных способов.

Команда free

Команда free очень простая, она выводит информацию о общем количестве оперативной памяти, о количестве занятой и свободной памяти, а также об использовании файла подкачки.

По умолчанию объем памяти выводится в килобайтах. Используя опции, можно выводить объем памяти в других форматах. Некоторые опции:

  • -m — в мегабайтах
  • -g — в гигабайтах
  • -h — автоматически определить формат

Команда vmstat

Команда vmstat выводит различную статистику по использованию памяти. Используя ключ -s можно вывести подробную статистику в табличном виде.

Команда top

top — это утилита командной строки, которая используется для мониторинга процессов и используемых ресурсов компьютера.

Запуск утилиты top :

В заголовке выводится информация об использованной оперативной памяти.

Команда htop

Утилита htop, также как и top, используется для мониторинга ресурсов и процессов.

Для установки утилиты htop в Ubuntu Linux (Linux Mint и других Ubuntu/Debian-дистрибутивах) выполните команду:

Запуск утилиты htop :

Файл /proc/meminfo

Описанные выше команды, в качестве источника информации используют системные файлы из файлов, хранящихся в виртуальной файловой системе /proc . В файле /proc/meminfo содержится информация об использовании памяти. Выведем содержимое файла /proc/meminfo :

Тип памяти и частота

Рассмотрим, как получить информацию об установленных в компьютер модулях оперативной памяти. Воспользуемся командной dmidecode

Используем следующую команду:

В выводе команды будет информация о слотах оперативной памяти. Для каждого слота отображается установленный модуль оперативной памяти, его тип (поле Type ), размер (поле Size ), скорость/частота (поле Speed ) и другая информация.

В зависимости от системы и оборудования не всегда удается получить все данные, поэтому некоторые поля могут быть пустыми или иметь надписи Not provided/Unknown.

Заключение

Мы рассмотрели различные способы для просмотра информации о доступной и занятой оперативной памяти, а также показали, как вывести информацию об установленных модулях оперативной памяти.

Для отслеживания использования ресурсов компьютера существует множество графических программ. Найти их можно в нашем каталоге программ для Linux в разделе Система/Мониторинг.

Источник

Linux ram speed test

Today I wanted to test the memory on a remote server. I could not just reboot and run memtest86+ so instead I had to look for a different solution to testing most of the computer memory without having to reboot.

Test Memory Through Linux File Cache with On-Disk Temporary File

WARNING: This test asssumes that /tmp is NOT mounted with tmpfs. To verify use df /tmp. If it says tmpfs under the Filesystem column, then this test is likely to fail as written.

Читайте также:  Windows disk protection что это

I found an interesting page in that regard describing a way to do so using md5sum on a very large file.

The is a verbatim copy of the Linux command line proposed.

WARNING: see paragraph about bs and count below.

The size, 768304 (In Kb), is expected to be close to your memory size. You should know how much memory you have, otherwise you can type free or top and you’ll see somewhere what it is. It’s also available in the /proc/meminfo as the MemTotal line (usually the first line):

This example shows the total amount of RAM for an 8Gb server.

The count parameter shows how many times the bs size will be duplicated. I think that there is a little mistake in that the count should be 1024 instead. Possibly also the numbers should be inverted. The default bs is 512 which is the size of a block and the count should be how many times you repeat that block.

This means write 768304 blocks of 1024 bytes in /tmp/memtest using random data as provided by /dev/urandom.

The second line above runs md5sum 3 times on that file. Since Linux has the bad habit of caching the data, this means a lot of that data will reside in memory when the 2nd and 3rd md5sum commands run. And that means you’re testing a great deal of the memory of your computer.

The idea is that if the memory is going bad, then the each md5sum will return a different result and you are likely to get ECC errors in your console & in your syslog file (if such are turned on in your BIOS and kernel.)

Test Memory with tmpfs File

It is also possible to create a tmpfs RAM disk and then run a test against that disk. By default the size of a tmpfs RAM disk is 50% of the computer total RAM. It may get higher with servers supporting very large memory amount (like 256Gb of RAM.)

WARNING: This test is likely going to use 50% of your RAM. Use that with reserve on a live system serving clients.

You can then fill the disk with zeroes to see how fast it goes. Note that the test will work once. Repeating it will not go at the same speed or check all the RAM over and over again.

The dd command, in this case, runs until the filesystem is filled up. However, you fill the whole memory with zeroes only. This is not a very good test to make sure that the memory is indeed valid. However, it will give you information about the speed at which the file was created and thus an idea of memory access speed. Note, however, that writing to disk has overhead in handling the file format and file with just zeroes is likely to end up being created as a sparse file (where part of the file is not commited to disk because they are all zeroes.)

Читайте также:  Как очистить rdp кэш windows 10

Changing the dd command to use /dev/urandom will better verify the memory, however, it won’t show you a validspeed because /dev/urandom is likely a bottleneck in this case. So you are more likely to determine the speed at which /dev/urandom gives you random data.

Run memtest when Physical Access to Computer is Available

Now, if you can, try your memory with memtest86+. It’s amuch better RAM test than the example above.

Run Speed Test on Memory

In order to verify that your memory is still running at full speed, you may use the mbw command.

First install it if you don’t already have it installed:

If you’re not under Debian or an RPM system, grab the mbw source from github.

Then run the command with parameters best adapted to your situation. For example, this gives me a good idea of my memory bandwidth in plain CPU code (opposed to SIMD or some other parallelism) which better represents the speed at which you can access memory with a regular algorithm and see whether your algorithm is faster or about the same speed as your memory (i.e. memory access being the bottleneck of your routine) or whether it is slower.

As we can see in this example, a test over 2Gb of my memory give us an average speed of 4.8Gb/s. Note that the copy uses «long» which is 8 bytes at a time aligned. This is much faster than parser that would read input data one byte at a time.

However, image processing using SIMD would probably use the memory full speed as this test shows.

Источник

Бенчмарки для Linux-серверов: 5 открытых инструментов

Сегодня мы расскажем об открытых инструментах для оценки производительности процессоров, памяти, файловых систем и систем хранения данных.

В список вошли утилиты, предлагаемые резидентами GitHub и участниками тематических тредов на Reddit, — Sysbench, UnixBench, Phoronix Test Suite, Vdbench и IOzone.


/ Unsplash / Veri Ivanova

Sysbench

Это — утилита для нагрузочного тестирования MySQL-серверов, основанная на проекте LuaJIT, в рамках которого разрабатывается виртуальная машина для языка Lua. Автор инструмента — программист и эксперт по MySQL Алексей Копытов. Проект начинался как хобби, но со временем обрел признание сообщества. Сегодня sysbench используют в своей работе крупные университеты и ИТ-организации вроде IEEE.

Во время конференции SECR-2017 (запись выступления есть на YouTube) Алексей рассказал, что sysbench позволяет оценить производительность базы данных при переносе на новое оборудование, обновлении версии СУБД или резком изменении числа запросов. В общем случае синтаксис команды для проведения теста выглядит следующим образом:

Эта команда определяет тип (cpu, memory, fileio) и параметры нагрузочного теста (количество потоков, число запросов, скорость обработки транзакций). В целом инструмент способен обрабатывать миллионы событий за секунду. Подробнее об архитектуре и внутреннем устройстве sysbench Алексей Копытов рассказал в одном из выпусков подкаста Software Development Podcast.

UnixBench

Набор инструментов для оценки производительности Unix-систем. Его представили инженеры из университета Монаша в 1983 году. С того момента поддержкой инструмента занималось множество людей, например, авторы журнала о микрокомпьютерных технологиях Byte Magazine и участник LKML Дэвид Ниеми (David Niemi). За выход следующей версии инструмента отвечает Энтони Воэлм (Anthony Voellm) из Microsoft.

Читайте также:  Нужно ли форматировать ssd перед переустановкой windows

UnixBench представляет собой набор индивидуальных тестов. Они сопоставляют скорость выполнения кода на машине под управлением Unix с производительностью эталонной системы, в роли которой выступает SPARCstation 20-61. На основе этого сравнения генерируется балл, определяющий производительность.

Среди доступных тестов числятся: Whetstone, который описывает эффективность операций с плавающей точкой, File Copy, оценивающий скорость копирования данных, и несколько 2D и 3D-бенчмарков. Полный список тестов можно найти в репозитории на GitHub. Многие из них используют для оценки производительность виртуальных машин в облаке.

Phoronix Test Suite

Этот комплекс тестов разработан авторами веб-ресурса Phoronix, на котором публикуются новости о дистрибутивах GNU/Linux. Впервые Test Suite представили в 2008 году — тогда он включал 23 различных теста. Позже разработчики запустили облачный сервис OpenBenchmarking.org, на котором пользователи могли публиковать собственные тестовые сценарии. Сегодня на нем представлено около 60 бенчмарк-наборов, в том числе связанных с машинным обучением и технологией ray-tracing.

Наборы специализированных скриптов позволяют протестировать отдельные компоненты системы. С их помощью можно оценить время компиляции ядра и кодирования видеофайлов, скорость сжатия архиваторов и др. Для запуска тестов достаточно написать соответствующую команду в консоли. Например, эта команда инициирует оценку производительности CPU:

Во время тестирования Test Suite самостоятельно контролирует состояние оборудования (температуру CPU и скорость вращения кулеров), защищая систему от перегрева.


/ Unsplash / Jason Chen

Vdbench

Инструмент для генерации I/O-нагрузки на дисковые системы, разработанный Oracle. Он помогает оценить производительность и целостность СХД (о том, как посчитать теоретическую производительность дисковой системы, мы подготовили краткую справку).

Работает решение следующим образом: на реальной системе запускается программа SWAT (Sun StorageTek Workload Analysis Tool), которая создает дамп со всеми обращениями к диску за определённый период. Записываются метка времени, тип операции, адрес и размер блока данных. Далее, используя файл с дампом, vdbench эмулирует нагрузку на любой другой системе.

Список параметров для управления утилитой есть в официальном документе Oracle. Исходный код утилиты можно найти на сайте компании.

IOzone

Консольная утилита для оценки производительности файловых систем. Она определяет скорость чтения, записи и перезаписи файлов. В разработке инструмента приняли участие десятки программистов, но автором его первой версии считается инженер Уильям Норкотт (William Norcott). Разработку поддержали такие компании, как Apple, NetApp и iXsystems.

Для управления потоками и их синхронизации во время тестирования инструмент использует стандарт POSIX Threads. По завершении работы IOzone выдает отчет с результатами или в текстовом формате, или в виде электронной таблицы (Excel). Также инструмент имеет в составе скрипт gengnuplot.sh, который строит по данным таблиц трехмерный график. Примеры таких графиков можно найти в документации к инструменту (стр. 11–17).

IOzone доступен в качестве тестового профайла в уже упомянутом Phoronix Test Suite.

Дополнительное чтение из наших блогов и социальных сетей:

Баг в Linux 5.1 приводил к потере данных — корректирующий патч уже вышел
Есть мнение: технология DANE для браузеров провалилась

Зачем нужен мониторинг?
Резервное копирование файлов: как подстраховаться от потери данных
Как перенести системный жесткий диск в виртуальную машину?

Все говорят об утечках ПД — чем поможет IaaS-провайдер
Короткий ликбез: как устроена ЭЦП
Справочная: как работает закон о персональных данных

Источник

Оцените статью