
- •1. Обобщенная структурная схема компьютера
- •2. Понятие архитектуры.
- •3. Оценка производительности компьютеров.
- •4. Классификация и краткий обзор современных компьютеров
- •5. Элементная база компьютеров: шифратор, дешифратор, мультиплексор и демультиплексор
- •6. Элементная база компьютеров: триггеры и их классификация
- •7. Эбк: регистры и их классификация
- •8. Эбк: счетчики и их классификация
- •10. Характеристики запоминающих устройств и их условные обозначения
- •11. Размещение зу на системной плате (нету)
- •12. Принцип сегментирования основной памяти компьютера и формирование физического адреса
- •13. Принципы организации современных озу
- •14. Способы адресации информации в компьютере
- •1 5. Архитектура системной платы современного пк
- •16. Структура базового процессора семейства х86 и назначение его выводов
- •17. Регистровая архитектура базового процессора семейства х86
- •18. Регистр флагов базового процессора семейства х86 и функциональное назначение его битов
- •19. Принцип демультиплексирования шины адресов и данных в мп i8086/88
- •20. Системы счисления, используемые в компьютерах и алгоритмы приеобразования из одной сс в другую
- •21. Прямые, обратные, дополнительные коды чисел и их использование в компьютерах
- •22. Представление целых чисел без знака и со знаком
- •23. Представление вещественных чисел
- •24. Представление алфавитно-цифровой информации
- •25. Представление звуковой информации
- •26. Представление визуальной информации
- •27. Форматы кодов информации (чисел и символов), используемые в пк семейства х86
- •28. Алгоритмы сложения и вычитания в комптьютерах целых двоичных чисел без знака и со знаком.
- •29. Алгоритмы слож-я и выч-я двоично-десятичных чисел
- •30. Алгоритмы сл-я и в-я вещественных чисел
- •31. Принципы осуществления в компьютерах операций умножения и деления
- •32. Назначение, определения и характеристики систем прерывания компьютеров
- •33. Классификация запросов прерывания в компьютерах
- •34. Режимы работы систем прерывания современных комптютеров и принципы их реализации
- •35. Особенности и принципы организации обмена информацей с периферийными устройствами
- •36. Принцип организации программно-управляемого ввода/вывода с активным ожиданием
- •37. Принцип организации в компьютерах ввода/вывода по прерыванию
- •38. Принцип организации ввода/вывода через каналы прямого доступа к памяти
- •39. Типовые шины соединения компонентов, используемые в современных компьютерах
- •40. Типовые устройства ввода
- •1. Клавиатура
- •2. Мышь.
- •41. Структура и назначение блоков типового видеоадаптера
- •42. Структура и назначение блоков типовой аудиосистемы
3. Оценка производительности компьютеров.
Производительность компьютеров складывается из многих факторов, из которых главные:
---Быстродействие центрального процессора;
---Быстродействие подсистемы памяти;
---Эффективность компилятора;
---Остальные компоненты системы (такие как подсистема ввода/вывода, графическая подсистема, сеть, а также операционная система) оказывают очень маленькое влияние на результаты тестов, в особенности при запуске тестов на одном системном процессоре.
Наиболее важным является быстродействие центрального процессора, которое зависит в основном от трех параметров:
- частоты синхронизации (тактовой частоты);
- среднего числа тактов синхронизации, требующихся на выполнение одной команды;
- количества команд, необходимых для решения задачи;
и все они, так или иначе, связаны друг с другом и влияют друг на друга.
В современных процессорах играет роль и число вычислительных ядер, используемых в процессорах, которое позволяет распараллеливать исполнение вычислительных процессов.
Поэтому единственной подходящей и надежной мерой измерения производительности компьютера является время выполнения реальной, конкретной программы, и корректное сравнение разных компьютеров по производительности можно проводить только для этих реальных, конкретных программ (одинакового пакета программ).
Поэтому создаются различные пакеты программ, предназначенных для оценки производительности компьютеров.
Например, пакет SPEC CPU2006, его задачи подразделяются на две подгруппы, каждая из которых предназначена для оценки своего типа производительности интенсивного вычислительного кода:
Набор задач CINT2006, измеряющий производительность при обработке целых чисел.
Набор задач CFP2006, измеряющий производительность при обработке вещественных чисел.
Таким образом, тестовый пакет SPEC CPU2006 предусматривает возможность получения двух фундаментальных оценок: SPEC int2006 и SPEC fp2006. Для каждой из этих оценок предусмотрены две метрики производительности системы. Первая из них – метрика скорости (speed), определяет производительность системы при однозадачном режиме работы, а вторая – метрика пропускной способности (rate), отражает, какое количество задач способна решить система в определенный, фиксированный промежуток времени.
Наконец, каждая из этих метрик может измеряться в двух различных вариантах компиляции кода, которые получили название базового (base) и пикового (peak) вариантов.
Сравнением времени выполнения заданных тестов на различных компьютерах мы можем качественно сравнить компьютеры по их производительности. Однако для получения некоторой количественной характеристики производительности необходимо определить единицы производительности, что дает возможность более удобного сравнения компьютеров между собой. В качестве единиц производительности обычно используются такие единицы как MIPS и MFLOPS, однако при использовании их надо учитывать некоторые особенности, которые могут существенно исказить полученные результаты.
MIPS (Millions Instructions per Second) – миллион инструкций в секунду.
Поскольку MIPS – представляет собой количество инструкций (команд), выполняемых в единицу времени, то более производительные компьютеры должны иметь более высокий рейтинг MIPS. Эта единица проста и понятна пользователю но:
- MIPS зависит от системы команд процессора, что затрудняет сравнение по MIPS компьютеров, имеющих разные системы команд;
- MIPS даже на одном компьютере меняется от программы к программе;
- MIPS может меняться по отношению к производительности в противоположную сторону.
Классическим примером этого последнего случая является рейтинг MIPS для компьютера, в состав которого входит сопроцессор, предназначенный для операций с числами с плавающей точкой (с вещественными числами). Дело в том, что, поскольку, в общем случае, на каждую команду с плавающей точкой требуется большее количество тактов синхронизации, чем на целочисленную команду, то программы, используя сопроцессор плавающей точки, выполняя ее за меньшее время, имеют, однако меньший рейтинг MIPS, так как выполняют за единицу времени меньшее число команд.
При отключении такого сопроцессора, операции над числами с плавающей запятой реализуются с помощью подпрограмм, использующих более простые команды целочисленной арифметики и, как следствие, такие компьютеры имеют более высокий рейтинг MIPS, поскольку выполняют большее число простых команд в единицу времени. Однако, при этом, выполняют настолько большое общее количество команд для решения задачи, что общее время выполнения программы значительно увеличивается, т.е. производительность компьютера уменьшается.
MFLOPS (Millions Floating-point Operation per Second) – миллион операций в секунду, с числами, представленными в формате с плавающей запятой (вещественными числами).
При решении научно-технических задач, в которых существенно используется арифметика с плавающей запятой, производительность всегда старались оценивать в MFLOPS. Как единица измерения MFLOPS предназначена для оценки производительности только операций с плавающей запятой и, поэтому, не применима вне этой ограниченной области. Ясно, что рейтинг MFLOPS зависит от компьютера и от программы. Эта единица более безобидна, чем MIPS. Она базируется на количестве выполняемых операций, а не команд (инструкций). По мнению многих программистов, одна и та же программа, работающая на разных компьютерах, будет выполнять различное число команд, но одно и то же количество операций с плавающей запятой.
Однако и с этой единицей не все гладко. Например, рейтинг MFLOPS меняется не только на смеси целочисленных команд и операций с плавающей запятой, но и на смеси быстрых и медленных операций с плавающей запятой. Например, программа только с операциями сложения будет иметь более высокий рейтинг, чем программа, в которой будут содержаться большое количество операций деления.
Однако рейтинг по MFLOPS очень широко используется при сравнении компьютеров, используемых главным образом для научно-технических приложений, поскольку подавляющее количество вычислительных операций в этой области производится с вещественными числами. А для того, чтобы выровнять времена выполнения операций различного рода, вводятся так называемые нормализованные операции с плавающей запятой, и эта нормализация широко используется при проведении контрольных испытаний на тестовых пакетах «Ливерморские циклы» (LINPACK), с целью сравнения между собой суперкомпьютеров.
Для наглядности, в таблице III приведены соотношения между некоторыми реальными и нормализованными операциями с плавающей запятой, которыми пользуются авторы «Ливерпульских циклов» для вычисления рейтингов MFLOPS.
Реальные операции с плавающей запятой |
Нормализованные операции с плавающей запятой |
|
|
Сложение, вычитание, сравнение, умножение |
1 |
Деление, квадратный корень |
4 |
Экспонента, синус, … |
8 |