UnixBench

Установка UnixBench

Предполагается, что вы зашли под root и находитесь в домашнем каталоге /root/

1. Устанавливаем GNU C++ компилятор: 
apt-get -y install build-essential 

2. Скачиваем, запускаем UnixBench: wget http://jed.ru/upld/UnixBench5.1.3.tgz && tar -xzf UnixBench5.1.3.tgz && cd UnixBench && ./Run -i 1 

Опция -i задает количество итераций (по умолчанию 10, для дисковых тестов 3).

Можно запускать тесты выборочно из этого списка:

dhry2reg         Dhrystone 2 using register variables
whetstone-double Double-Precision Whetstone
syscall          System Call Overhead
pipe             Pipe Throughput
context1         Pipe-based Context Switching
spawn            Process Creation
execl            Execl Throughput
fstime-w         File Write 1024 bufsize 2000 maxblocks
fstime-r         File Read 1024 bufsize 2000 maxblocks
fstime           File Copy 1024 bufsize 2000 maxblocks
fsbuffer-w       File Write 256 bufsize 500 maxblocks
fsbuffer-r       File Read 256 bufsize 500 maxblocks
fsbuffer         File Copy 256 bufsize 500 maxblocks
fsdisk-w         File Write 4096 bufsize 8000 maxblocks
fsdisk-r         File Read 4096 bufsize 8000 maxblocks
fsdisk           File Copy 4096 bufsize 8000 maxblocks
shell1           Shell Scripts (1 concurrent) (runs "looper 60 multi.sh 1")
shell8           Shell Scripts (8 concurrent) (runs "looper 60 multi.sh 8")
shell16          Shell Scripts (8 concurrent) (runs "looper 60 multi.sh 16") 

например только тест File Copy 256 bufsize 500 maxblocks.

cd UnixBench && ./Run -i 1 fsbuffer 

Описание UnixBench

UnixBench состоит из нескольких отдельных тестов, которые ориентированы на конкретные параметры.

Dhrystone

Dhrystone используется для измерения и сравнения производительности компьютеров. Тест фокусируется на обработке строк. Результат во многом зависит от аппаратного и программного обеспечения, опций компилятора и компоновщика, оптимизации кода, кэш-памяти, состояния типов данных.

Результат теста выдает количество итераций в секунду. По идее, результат Dhrystone можно привести к DMIPS путем деления на 1757.

DMIPS можно делить на частоту процессора, чтобы получить DMIPS/MHz. Такие единицы позволяют сравнивать процессоры с разной тактовой частотой.

cd UnixBench && ./Run dhry2reg 

Whetstone

Этот тест измеряет скорость и эффективность операций с плавающей запятой. Используется широкий спектр функций, включая C SIN, COS, SQRT, математические операции, массивы обращений, условные переходы и вызовы процедур.

Используется очень небольшое количество данных, которые полностью помещаются в кеш первого уровня (L1) большинства центральных процессоров. Таким образом скорость кеша второго уровня и памяти не влияют на полученную производительность. Результат теста пропорционален частоте процессора.

Execl Throughput

Этот тест измеряет количество execl вызовов в секунду. Execl является частью семейства функций Exec, выполняющих замену текущего образ процесса с новым.

File Copy

Измеряет скорость переноса данных из одного файла в другой с различными размерами буфера за 10 секунд.

Pipe Throughput

Измерение простейшей формы коммуникации между процессами. Измеряет сколько раз в секунду можно записать 512 байт в пайп и прочитать из пайпа.

Pipe-based Context Switching

Этот тест измеряет количество обменов данными через пайп между двумя процессами при котором тестовая программа порождает дочерний процесс, с которым оно осуществляет двунаправленный обмен.

Process Creation

Измерение скорости создания блоков управления и распределения памяти для новых процессов.

Shell Scripts

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

System Call Overhead

Тест оценивает накладные расходы на выполнение системных вызовов.

Возможные ошибки

Если появится ошибка: Unable to locate package build-essential Выполните команду: apt-get update