Задание реализовать программу для оценки производительности процессора benchmark

Пакет «Ливерморские циклы» — это набор из 24 DO-циклов на языке FORTRAN (The Livermore Fortran Kernels, LFK) взятые из операционных кодов, используемых в Лоуренсовской Национальной Лаборатории в Ливерморе – одном из крупнейших в мире научных вычислительных центров США. Эти цикли используются с начала семидесятых годов, для оценки производительности компьютеров и компиляторов при выполнении арифметических операций.

(Сюда можно вставить весь текст из методички, но я не буду это делать.)

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

Нестабильность производительности (специализация вычислительного средства) — это отношение максимальной и минимальной производительности. Оно показывает, насколько специализировано вычислительное средство и насколько трудно получить большую производительность на нём.

«Лучший компьютер – тот компьютер, у которого выше минимальная производительность».

Как сделать ТЕСТ ПРОИЗВОДИТЕЛЬНОСТИ ПК в Играх?!

Задание на лабораторную работу.

  • Изучить общую структуру бенчмарка «Ливерморские циклы», его программную реализацию на Си приведенную ниже.
  • Выделить из общего пакета-бенчмарка часть — программу реализации теста-ядра согласно варианту. Снабдить ее интерфейсом пользователя для задания параметров и представления результатов тестирования.
  • Рассчитать число операций с плавающей запятой в данном тесте-ядре.
  • Транслировать и отладить программу заданного теста-ядра.
  • Измерить производительность не менее 3-х ВС с помощью данного теста-ядра (в Mflops –миллионах операций с плавающей запятой в секунду).
  • Оформить результаты оценки производительности в отчете.

Выполнение

В соответствии с заданием была составлена программа на языке C:

Источник: urvanov.ru

Читайте также:
Что шире программа или проект

8.2. Оценка производительности микропроцессоров на основе бэнчмарковских программ. Тестовая программа Linpack. Тестовые пакеты specCpu, bdti. Тестовые программы

Вследствие недостатков рассмотренных выше подходов к измерению производительности вычислительных систем, в настоящее время для этих целей обычно используют так называемые бенчмарки (benchmark) — тестовые программы, которые измеряют производительность при типовой рабочей нагрузке. Зафиксировав рабочую нагрузку, можно варьировать базовые системные параметры и сравнивать производительность системы в разных конфигурациях и разные системы между собой.

Существует три вида тестовых программ:

  1. компоненто-зависимые инструменты (подобные программе LINpack и смесям SPECcpu для универсальных МП и BDTImark для ЦСП);
  2. средства оценки всей системы, например, набор ТРС для эмуляции коммерческих сред и SPEChpc для оценки производительности в области высокопроизводительных вычислений; и наконец, 3) программы, разработанные пользователем.

Тестовая программа liNpack

  • разрабатывает тестовые пакеты;
  • собирает и публикует официальные результаты тестирования.
  • метрики типа «base» получаются на тестах, которые должны компилироваться так же, как пользователи будут компилировать свои программы, то есть с некоторыми базовыми опциями оптимизации, одинаковыми для всех тестов в тестовом пакете. Другая группа метрик, без приставки «base», соответствует наилучшей оптимизации, которую производитель может обеспечить для каждого конкретного теста;
  • метрики типа «rate» позволяют оценить суммарный объем вычислений, который компьютер может выполнить за определенное время. То есть на SMP-компьютере позволяется запустить несколько копий одного теста и в качестве результата выдать суммарное количество итераций, выполненное всеми процессорами за определенное фиксированное время. В противном случае, на тестах без приставки «rate», оценивается просто «скорость» вы числений.

Источник: studfile.net

Топ программ для тестирования ПК

Лабораторная Работа №2 «Оценка производительности процессора». Архитектура вычислительных систем

Единственный в мире Музей Смайликов

Самая яркая достопримечательность Крыма

Читайте также:
Программы для геодезистов список

Скачать 67.18 Kb.

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ государственное БЮДЖЕТНОЕ

«НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

Кафедра Вычислительной техники

по лабораторной работе № 2

«Оценка производительности процессора»

по дисциплине: «Архитектура вычислительных систем»

Студент гр. «АММ2-21», «АВТФ»

«Абдрашитов Д.Ш.» «Перышкова E.Н.»

Цель лабораторной работы: Оценка производительности процессора.

Задание: реализовать программу для оценки производительности процессора (benchmark).

1. Написать программу(ы) (benchmark) на языке С/С++/C# для оценки производительности процессора. В качестве набора типовых задач использовать либо минимум 3 функции выполняющих математические вычисления, либо одну функцию по работе с матрицами и векторами данных с несколькими типами данных. Можно использовать готовые функции из математической библиотеки (math.h) [3], библиотеки BLAS [4] (англ. Basic Linear Algebra

Subprograms — базовые подпрограммы линейной алгебры) и/или библиотеки LAPACK [5]

(Linear Algebra PACKage). Обеспечить возможность в качестве аргумента при вызове программы указать общее число испытаний для каждой типовой задачи (минимум 10).

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

2. С помощью системного таймера (библиотека time.h, функции clock() илиgettimeofday()) или с помощью процессорного регистра счетчика TSC реализовать оценку в секундах среднего времени испытания каждой типовой задачи. Оценить точность и погрешность (абсолютную и относительную) измерения времени (рассчитать дисперсию и среднеквадратическое отклонение).

3. Результаты испытаний в самой программе (или с помощью скрипта) сохранить в файл в формате CSV со следующей структурой:

PModel – Processor Model, модель процессора, на котором проводятся испытания;

Task – название выбранной типовой задачи (например, sin, log, saxpy, dgemv, sgemm и др.);

OpType – Operand Type, тип операндов используемых при вычислениях типовой задачи;

Opt – Optimisations, используемы ключи оптимизации (None, O1, O2 и др.);

Читайте также:
Программы похожие rosetta stone

Timer – название функции обращения к таймеру (для измерения времени);

Time – время выполнения отдельного испытания;

LNum – Launch Numer, номер испытания типовой задачи.

AvTime –Average Time, среднее время выполнения типовой задачи из всех испытаний[секунды];

AbsError – Absolute Error, абсолютная погрешность измерения времени в секундах;

RelError – Relative Error, относительная погрешность измерения времени в %;

TaskPerf – Task Performance, производительность (быстродействие) процессора при выполнении типовой задачи.

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

3. ** Оценить среднее время испытания каждой типовой задачи с оптимизирующими преобразования исходного кода компилятором (ключи –O1, O2, O3 и др.).

3. *** Оценить и постараться минимизировать накладные расходы(время на вызов функций, влияние загрузки системы и т.п.) при испытании, то есть добиться максимальной точности измерений.

4. Построить сводную диаграмму производительности в зависимости от задач и выбранных исходных параметров испытаний. Оценить среднее быстродействие (производительность) для равновероятного использования типовых задач.

Результат вывода программы:

Скомпилируем программу при помощи команды: gcc lab2.c -o lab2 -lm

Результат команды записывается в файл results.csv, посмотрим файл при помощи команды cat results.csv, пример вывод показан на рисунке 1.

Рисунок 1 – Результаты вычислений для типа double

Проведем серию испытаний для разных типов и составим сводный график, результаты на рисунке 2.

Рис. 2 Сравнение вычисления разных типов данных

Приложение 1 – Листинг программы.

#include

#define m 1000

#define n 1000

double lNum = 10.0;

void Vector(float *matrix, float *vector, float *vectorIt)

Источник: topuch.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru