- •1. Принципы фон-Неймана.
- •2. .Стандарт ieee 754.Формати.Інтерпретація данних
- •3.Simd Команды
- •4.. Упакованныецелые числа
- •13.Упакованные числа с плавающейзапятой
- •8. .Конвеєризація
- •10. .Класифікація Фліна
- •11. Комп’ютерна техніка та перспективи її розвитку
- •12. Кс окод (sisd )
- •13. Векторний процесор. Структура алу
- •8(2)_C конспекта. Векторный процессор. Структуры алу.
- •Кластери високої доступності
- •Кластери розподілу навантаження
- •Обчислювальні кластери
- •Системи розподілених обчислень (grid)
- •Кластер серверів, організованих програмно
- •Кластер одного вузла
- •Ластер декількох вузлів
- •11. Типи процесорних елементів (мпп)
- •20. . Мімд. Мультипроцесори. Визначення, структура.
- •21. Суперскалярний процесор
- •7_2Я часть
- •26. Архитектура с многопортовой памятью
- •28 . Розширена класифікація Фліна
- •20.Розшарування пам’яті. Переваги і недоліки.
3.Simd Команды
SIMD (Single Instruction Stream/Multiple Data Stream) - одиночный поток команд и множественный поток данных (рис. 10.5, в). ВМ данной архитектуры позволяют выполнять одну арифметическую операцию сразу над многими данными — элементами вектора. Бесспорными представителями класса SIMD считаются матрицы процессоров, где единое управляющее устройство контролирует множество процессорных элементов. Все процессорные элементы получают от устройства управления одинаковую команду и выполняют ее над своими локальными данными. В принципе в этот класс можно включить и векторно-конвейерные ВС, если каждый элемент вектора рассматривать как отдельный элемент потока данных.
рис. 10.5
4.. Упакованныецелые числа
В АСК современныхмикропроцессоровимеютсякоманды, оперирующиецелыми числами, представленными в упакованномвиде. Связаноэто с обработкоймуль-тимедийнойинформации. Формат предполагает упаковку в пределахдостаточнодлинного слова несколькихнебольшихцелых чисел, а соответствующиекомандыобрабатывают все эти числа параллельно. Есликаждоеиз чисел состоитизчетырехдвоичныхразрядов, то в 64-разрядное слово можнопоместить до 16 таких чисел.
13.Упакованные числа с плавающейзапятой
В последнихверсиях АСК, предусматривающихособыекомандыдля обработкимультимедийнойинформации,
помимоупакованныхцелых чисел используются и упакованные числа с плавающейзапятой.Команды, служащие для увеличения производительности систем при обработке трехмерных приложений работает с двумя операндами с плавающей запятой одинарной точности. Операнды упаковываются в 64-разрядные группы:
5. Ієра́рхія па́м'яті — термін, використовуваний в обчислювальній техніці при проектуванні і низькорівневому програмуванні ЕОМ (комп'ютерів).
Означає, що різні види пам'яті утворюють ієрархію, на різних рівнях якої розташовані пам'яті з різними часом доступу, складністю, вартістю та обсягом. Можливість побудови ієрархії пам'яті викликана тим, що більшість алгоритмів звертаються в кожний проміжок часу до невеликого набору даних, який може бути поміщений у швидшу, але дорожчу і тому невелику, пам'ять. Використання швидшої пам'яті збільшує продуктивність обчислювального комплексу. Під пам'яттю в даному разі мається на увазі пристрій (пристрої) зберігання даних в обчислювальній техніці або комп'ютерна пам'ять.
При проектуванні високопродуктивних комп'ютерів і систем необхідно вирішити безліч компромісів, наприклад, розміри і технології для кожного рівня ієрархії. Можна розглядати набір різних пам'ятей (m1, m2, …, mn), що знаходяться в ієрархії, тобто кожен mi рівень є як би підлеглим для mi-1 рівня ієрархії. Для зменшення часу очікування на вищих рівнях, нижчі рівні можуть готувати дані укрупненими частинами з буферизацією і, після наповнення буфера, сигналізувати верхньому рівню про можливість отримання даних.
Часто виділяють 4 основних (укрупнених) рівня ієрархії:
1) Внутрішня пам'ять процесора (регістри, організовані в регістровий файл і кеш процесора).
2) ОЗП системи (RAM) і допоміжних карт пам'яті.
3) Накопичувачі з «гарячим» доступом — або вторинна комп'ютерна пам'ять. Жорсткі диски і твердотільні накопичувачі, які не потребують тривалих (секунди і більше) дій для початку отримання даних.
4) Накопичувачі, що вимагають переключення носіїв (Off-line bulk storage) — або третинна пам'ять. Сюди відносяться магнітні стрічки, стрічкові і дискові бібліотеки, які потребують тривалого перемотування або механічного (або ручного) перемикання носіїв інформації.
6. КОМПИЛЯЦИЯ (compilation) — трансляция программы (кода) или отдельного программного модуля, составленных на языке программирования высокого уровня (исходная программа, исходный модуль) в программу или модуль на машинном языке или языке, близком к машинному (объектная программа, объектный модуль). В процессе компиляции программа преобразуется в промежуточную форму, к которой впоследствии необходимо присоединить библиотечные средства, содержащие стандартные подпрограммы и процедуры, а если нужно, то можно добавить любые другие модули, написанные самим пользователем, и скомпилированные в объектные модули, возможно, с иных языков высокого уровня.
Виды компиляции:
Пакетная. Компиляция нескольких исходных модулей в одном пункте задания.
Построчная. То же, что и интерпретация.
Условная. Компиляция, при которой транслируемый текст зависит от условий, заданных в исходной программе директивами компилятора. Так, в зависимости от значения некоторой константы, можно включать или выключать трансляцию части текста программы.
Процесс компиляции состоит из следующих фаз:
Лексический анализ. На этой фазе последовательность символов исходного файла преобразуется в последовательность лексем.
Синтаксический (грамматический) анализ. Последовательность лексем преобразуется в древо разбора.
Семантический анализ. Древо разбора обрабатывается с целью установления его семантики (смысла) — например, привязка идентификаторов к их определениям, типам данных, проверка совместимости типов данных, определение результирующих типов данных выражений и т. д. Результат обычно называется «промежуточным представлением/кодом», и может быть дополненным древом разбора, новым древом, абстрактным набором команд или чем-то ещё, удобным для дальнейшей обработки.
Оптимизация. Удаляются избыточные команды и упрощается (где это возможно) код с сохранением его смысла, то есть реализуемого им алгоритма (в том числе предвычисляются (то есть вычисляются на фазе трансляции) выражения, результаты которых практически являются константами). Оптимизация может быть на разных уровнях и этапах — например, над промежуточным кодом или над конечным машинным кодом.
Генерация кода. Из промежуточного представления порождается код на целевом языке (в том числе выполняется компоновка программы).
В конкретных реализациях компиляторов эти фазы могут быть разделены или, наоборот, совмещены в том или ином виде.
7.