Библиотека Рефераты Курсовые Дипломы Поиск
Библиотека Рефераты Курсовые Дипломы Поиск
сделать стартовой добавить в избранное
Кефирный гриб на сайте www.za4et.net.ru

Компьютеры, Программирование Компьютеры, Программирование     Программное обеспечение Программное обеспечение

Обзор методов оптимизации кода для процессоров с поддержкой параллелизма на уровне команд

Наклейки для поощрения "Смайлики 2".
Набор для поощрения на самоклеящейся бумаге. Формат 95х160 мм.
19 руб
Раздел: Наклейки для оценивания, поощрения
Гуашь "Классика", 12 цветов.
Гуашевые краски изготавливаются на основе натуральных компонентов и высококачестсвенных пигментов с добавлением консервантов, не
170 руб
Раздел: 7 и более цветов
Браслет светоотражающий, самофиксирующийся, желтый.
Изготовлены из влагостойкого и грязестойкого материала, сохраняющего свои свойства в любых погодных условиях. Легкость крепления позволяет
66 руб
Раздел: Прочее

Шумаков С.М. Введение Процессоры, способные одновременно и независимо выполнять несколько команд, обладают исключительно высоким потенциалом производительности и находят все более широкое применение. О процессорах такого типа говорят, что они поддерживают параллелизм на уровне команд (I s ruc io Level Parallelism, ILP). Далее для краткости они будут называться ILP-процессорами. Класс ILP-процессоров включает суперскалярные процессоры и процессоры с очень длинным командным словом (Very Large I s ruc io Word, VLIW), к числу которых относятся, в частности, многие модели цифровых процессоров обработки сигналов (ЦПОС). Важное преимущество ILP по сравнению с параллелизмом многопроцессорных архитектур заключается в том, что программный параллелизм на уровне команд извлекается (аппаратурой или компилятором) автоматически, без дополнительных усилий со стороны прикладных программистов, в то время как использование параллелизма многопроцессорных архитектур подразумевает переписывание приложений. Для реального использования высокой производительности ILP-процессоров необходимы компиляторы с языков высокого уровня, способные генерировать эффективный код. Применение одних лишь традиционных методов оптимизации кода оказывается совершенно недостаточным. Например, согласно , типичный компилятор для ЦПОС (поддерживающий только традиционные оптимизации) генерирует код, который по времени выполнения может уступать оптимальному в 5-10 и более раз. В течение последних лет прилагаются значительные усилия по разработке специальных методов оптимизации программ для ILP-процессоров, направленных на выявление и расширение программного параллелизма на уровне команд. Настоящая работа содержит обзор таких методов. В разделе 2 дается краткий обзор ILP-процессоров и их основных характеристик. Раздел 3 посвящен критериям оптимизации кода для ILP-процессоров. В разделе 4 представлена примерная схема работы компилятора, характеризуются основные задачи, связанные с оптимизацией кода для ILP-процессоров. В разделе 5 дается обзор способов формирования областей (фрагментов компилируемой программы), в рамках которых возможно эффективное распараллеливание. В разделе 6 описываются методы оптимизации, направленные на усиление внутреннего программного параллелизма в рамках выделенных областей. В разделе 7 рассматриваются методы распараллеливания кода в предварительно выделенных областях. Раздел 8 посвящен специфике оптимизации кода для ЦПОС. В разделе 9 приводится информация о языковых расширениях и их роли в увеличении эффективности процессоров. В заключении (раздел 10) представлены некоторые из актуальных нерешенных до настоящего время проблем оптимизации кода для ILP-процессоров. ILP-платформы Общие свойства ILP-процессоров - способность одновременно и независимо выполнять несколько операций и наличие нескольких функциональных устройств различных типов, таких как, например, устройство обмена с памятью, арифметическое устройство и др. В выполнении каждой команды участвует определенный набор функциональных устройств. Процессор может выполнять команды c1, ., c одновременно, если: процессор имеет достаточно функциональных устройств для их совместного выполнения.

ни одна из команд ci не использует в качестве входных операндов результаты других команд c1, ., c ; ILP-процессоры могут различаться многими характеристиками, которые существенны с точки зрения применимости и эффективности рассматриваемых далее методов оптимизации. Данный раздел содержит краткий обзор типов ILP-процессоров и их свойств. Одним из исторически первых видов процессорного параллелизма был конвейерный параллелизм, основанный на том, что выполнение команды разбивалось на этапы, на каждом из которых использовались определенные функциональные устройства (рис. 1). Средства конвейеризации обеспечивали совмещенный режим выполнения команд, когда эти команды оказывались независимыми друг от друга. При этом разработчики стремились добиться того, чтобы среднее количество тактов на выполнение команд в конвейере равнялось 1, т.е. чтобы темп выдачи команд составлял одну команду на такт. Пусть исполнение команды состоит из 3-х этапов по 1 процессорному такту на каждый: 1) чтение команды из памяти (Ч); 2) декодирование (Д); 3) исполнение (И). Последовательное исполнение команд Этапы Ч1 Д1 И1 Ч2 Д2 И2 Ч3 Д3 И3 Такты  1 2 3 4 5 6 7 8 9 Конвейерное исполнение команд Устройство чтения: Ч1 Ч2 Ч3 Ч4 Ч5 Ч6 Ч7 Устройство декодирования: Д1 Д2 Д3 Д4 Д5 Д6 Д7 Устройство исполнения: И1 И2 И3 И4 И5 И6 И7 Такты  1 2 3 4 5 6 7 8 9 Конвейерное суперскалярное исполнение команд Устройство чтения 1: Ч1 Ч2 Ч3 Ч4 Ч5 Ч6 Ч7 Устройство декодирования 1: Д1 Д2 Д3 Д4 Д5 Д6 Д7 Устройство исполнения 1: И1 И2 И3 И4 И5 И6 И7 Устройство чтения 2: Ч1 Ч2 Ч3 Ч4 Ч5 Ч6 Ч7 Устройство декодирования 2: Д1 Д2 Д3 Д4 Д5 Д6 Д7 Устройство исполнения 2: И1 И2 И3 И4 И5 И6 И7 Такты  1 2 3 4 5 6 7 8 9 Рис. 1. Последовательное и параллельное исполнение команд Естественным развитием средств конвейерной обработки явились процессоры с множественной выдачей команд на исполнение (mul iple issue processors) - суперскалярные и VLIW-процессоры. Суперскалярный процессор исполняет обычный последовательный код, но может выбирать в нем и выдавать на выполнение одновременно несколько команд - не более , где - темп выдачи команд данного процессора. Различаются суперскалярные процессоры с упорядоченной и неупорядоченной выдачей команд на исполнение. Процессор первого типа выдает команды на исполнение в точности в том порядке, в котором они закодированы в программе. На каждом такте на исполнение выдается от 1 до очередных команд с учетом возможности их параллельного исполнения. Процессор второго типа анализирует команды в пределах некоторого "окна" - текущего фрагмента входной программы - выбирая в нем для выдачи на исполнение от 1 до команд с учетом связей по данным и возможности параллельного исполнения. При разработке суперскалярных процессоров обычно преследуют цель обеспечить бинарную совместимость с предшествующими поколениями (скалярными или суперскалярными) данного модельного ряда процессоров (см. ). Суперскалярный процессор выполняет (без перекомпиляции) программный код для предшествующей модели, обеспечивая более высокую производительность. VLIW-процессоры отличаются от суперскалярных тем, что код для них организован в виде последовательности очень длинных командных слов, каждое из которых содержит несколько команд (операций).

Забота о корректном заполнении командных слов возлагается на компилятор (или программиста, пишущего на ассемблере). VLIW-процессоры в целом производительнее суперскалярных, поскольку не тратят время на динамический анализ зависимостей по данным и функциональным устройствам во время выполнения программы. Однако реальная эффективность выполнения программы целиком зависит от качества кода, сгенерированного компилятором. Следует отметить, что и для суперскалярных процессоров применение ILP-оптимизаций при компиляции дает существенное повышение производительности (см. ). Повышению эффективности исполнения на суперскалярных ЭВМ может способствовать также встраивание избыточной информации о программе, доступной во время компиляции и позволяющей процессору динамически производить дополнительные оптимизации. Пример применения этого подхода можно найти в . VLIW-процессор способен работать с большей эффективностью, чем суперскалярный, поскольку у него нет необходимости заниматься динамическим анализом кода. Суперскалярный процессор, тем не менее, превосходит его в качестве планирования команд, поскольку имеет больше информации. Так, при статическом анализе невозможно предсказать случаи непопадания в кэш при чтении из памяти, из-за чего при выполнении возможны простои, в то время как динамический планировщик в этом случае может запустить другие готовые к исполнению команды. Компилятор не имеет права поменять местами команду чтения из памяти с последующей командой записи в память, поскольку адрес записи, возможно, совпадает с адресом чтения. Динамическому планировщику эти адреса уже известны, следовательно, он обладает большей свободой переупорядочения команд. Еще одно преимущество суперскалярных процессоров заключается в поддержке механизма предсказания ветвлений (bra ch predic io ) и выполнения по прогнозу ветвления (co rol specula io ). Аппаратура выбирает направление ветвления исходя из частоты предыдущих ветвлений в этой точке и с упреждением исполняет команды из более вероятной ветви. Это дает ускорение, если прогноз был верен. При неверном прогнозе аппаратура аннулирует результаты упреждающих вычислений. Концепция явного параллелизма на уровне команд (EPIC - Explici ly Parallel I s ruc io Compu i g) возникла из стремления объединить преимущества двух типов архитектур. Идеология EPIC заключается в том, чтобы, с одной стороны, полностью возложить составление плана выполнения команд на компилятор, с другой стороны, предоставить необходимые аппаратные средства, позволяющие при статическом планировании на стадии компиляции использовать механизмы, подобные тем, которые применяются при динамическом планировании в суперскалярных архитектурах (см. ). В разд. 7.4 и 7.6 рассматриваются некоторые характерные для EPIC-архитектур аппаратные средства поддержка упреждающего выполнения команд на основе прогноза направления ветвления (co rol specula io ); поддержка выполнения по прогнозу данных (da a specula io ); поддержка условного выполнения (predica ed execu io ) и их использование при статическом планировании. С точки зрения применимости различных методов оптимизации существенно различие между VLIW-процессорами с регулярной и нерегулярной организацией командного слова.

ОС Linux тоже написана на Си. Поэтому, а также в соответствии с принципом свободного распространения исходных кодов, многие приложения для Linux распространяются в виде текстов на С (а в последнее время - и на С++). Естественно, что для установки и запуска такого приложения на исполнение, его необходимо предварительно скомпилировать. Для выполнения процедур компиляции обычно используется программа gcc (хотя существуют и некоторые альтернативные разработки). Примечание Изначально аббревиатура GCC имела смысл GNU C Compiler, но в апреле 1999 года сообщество GNU решило взять на себя более сложную миссию и начать создание компиляторов для новых языков с новыми методами оптимизации, поддержкой новых платформ, улучшенных runtime-библиотек и других изменений ( Поэтому сегодня GCC расшифровывается как GNU Compiler Collection (коллекция компиляторов GNU) и содержит в себе компиляторы для языков C, C++, Objective C, Chill, Fortran, Ada и Java, а также библиотеки для этих языков (libstdc++, libgcj, …). GNU-компилятор с языка С gcc, содержит в себе 4 основных компонента, соответствующие четырем этапам преобразования исходного кода в исполняемую программу

1. Обзор методов получения пленок и их свойства

2. Экзаменационные билеты по методам оптимизации за весенний семестр 2001 года

3. Обзор методов расчета рекламного бюджета

4. Методы оптимизации портфеля бескупонных облигаций

5. Обзор методов определения форм и частот колебаний узлов и деталей

6. Исследование методов оптимизации
7. Методы оптимизации при решении уравнений
8. Обзор методов графического представления моделей в экономике и управлении

9. Обзор методов диагностики агрессивности

10. Методы, применяемые на эмпирическом и теоретическом уровнях познания. Развитие методов познания

11. Линейное программирование как метод оптимизации

12. Процессор для ограниченного набора команд /часть 6 (7)

13. Процессор для ограниченного набора команд /2 (4)

14. Процессор для ограниченного набора команд /4 (4)

15. Процессор для ограниченного набора команд /часть 2 (7)

16. Процессор для ограниченного набора команд /часть 4 (7)

Перчатки виниловые одноразовые, размер L, 100 шт.
Виниловые одноразовые перчатки применяются во время разных видов работ: в пищевой сфере, косметологии, при уборке. Перчатки мягкие и
305 руб
Раздел: Перчатки
Горшок детский "Бегемотик", белый.
Этот удобный кресло-горшок поможет вам отучить ребенка от подгузников. Он имеет анатомическую форму и произведен из качественного и
354 руб
Раздел: Горшки обычные
Коробка для хранения обуви, 610x340x130 мм.
Материал: полипропилен. Размер: 610x340x130 мм.
550 руб
Раздел: Короба, чехлы для обуви

17. Обзор x86 процессоров

18. Обзор процессоров и шин ПВМ начиная с 386 машин

19. Решение задач линейной оптимизации симплекс – методом

20. Формы и методы поддержки предпринимательской деятельности в РФ

21. Оценка труда: уровни, подходы, методы

22. Социология религии: статус, предмет, уровни знаний и методы исследования
23. Основные методы формирования уровня цен
24. Оптимизация процесса обработки воды методом ультрафильтрации

25. Оптимизация отбора оптимальных признаков на основе приме-нения методов моделирования эволюции для задачи распозна-вания текста

26. Применение языков программирования высокого уровня для реализации численных методов

27. Оптимизация структуры учебного материала с позиций компетентностного метода

28. Методы синтеза и оптимизации

29. Оптимизация. Методы многомерного поиска

30. Разработка компьютерного лабораторного практикума "Теория оптимизации и численные методы"

31. Методы защиты и поддержки пациента во время операции

32. Сравнение как метод анализа. Виды и уровни сравнительных исследований

Набор для приготовления роллов "Мидори".
С набором "Мидори" Вы сможете приготовить роллы различной формы в домашних условиях. В комплект входят специальные
562 руб
Раздел: Принадлежности для суши
Настольная игра "Барабашка (Geistestesblitz)".
У вас в руках оказались фотокарточки, сделанные каким-то странным фотоаппаратом: фотографируя всего пять предметов, он постоянно путает их
1071 руб
Раздел: Внимание, память, логика
Бумага туалетная "Classic (Вейро)", 24 рулона, 17 метров x 9.5 см.
В комплекте: 24 рулона. Длина рулона: 17 метров. Ширина рулона: 9,5 см. С перфорацией. В одном рулоне: 136 листов.
396 руб
Раздел: Бумага туалетная

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

34. Электрохимические методы анализа и их современное аппаратурное оформление: обзор WEB–сайтов фирм–продавцов химико-аналитического оборудования

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

36. Статистические методы и приемы изучение уровня жизни населения РФ

37. Совершенствование форм и методов поддержки малого и среднего бизнеса

38. Методы безусловной многомерной оптимизации
39. Метод конечных элементов
40. Структурные уровни организации материи. Микро, макро, мега миры

41. Изучение миксомицетов среднего Урала, выращенных методом влажных камер

42. Методы исследования в цитологии

43. Роль микроэлементов в обменных процессах растений и на накоплении ими биологически активных веществ (Реферат (обзор литературы) () WinWord 97)

44. Методы психогенетики

45. Влияние 6-БАП на растения кукурузы при разном уровне засоления

46. Новейшие методы селекции: клеточная инженерия, генная инженерия, хромосомная инженерия

47. Зажигательные смеси, состав, средства применения и доставки, вызываемые повреждения, методы лечения и защиты

48. Статистика населения. Методы анализа динамики и численности и структуры населения

Одежда для куклы 42 см (теплый комбинезон).
Куклы тоже любят менять наряды! И для них создается стильная и модная одежда, похожая на одежду для настоящих малышей. Этот теплый
362 руб
Раздел: Для кукол от 25 см
Форма для выпечки силиконовая "Медвежонок", 26x23,5x4 см.
Форма для выпечки «Медвежонок» изготовлена из пищевого силикона, экологичного, прочного, и пластичного материала. Изделие можно
433 руб
Раздел: Формы и формочки для выпечки
Грязевая фреза для минимоек, для пистолета 375 серии.
Грязевая фреза для мойки высокого давления ЗУБР 70404, предназначен для расширения функциональности моек ЗУБР. Завихренный поток воды под
497 руб
Раздел: Мойки высокого давления

49. Испания (краткий обзор)

50. Обзор средств для автоматизации геодезических вычислений

51. Гидрохимический, атмохический и биогеохимический методы поисков

52. Добыча золота методами геотехнологии

53. Государственное регулирование экономики: формы и методы

54. Сущность, методы и формы государственного регулирования внешнеэкономической деятельности Российской Федерации
55. Государство и экономика: необходимость поддержки и регулирования
56. Нелегальная миграция в России и методы борьбы с ней

57. Предмет и метод гражданского права

58. Обзор музеев Санкт-Петербурга, связаных с А.С. Пушкиным

59. Формы и методы государственного регулирования экономики в Казахстане

60. Математические методы и модели в конституционно-правовом исследовании

61. Формы и методы выхода предприятий на внешний рынок

62. Теоретические аспекты между бюджетами всех уровней с помощью деятельности Федерального Казначейства

63. Теоретические аспекты между бюджетами всех уровней с помощью деятельности Федерального Казначейства

64. Биография Вильяма Шекспира (Shakespeare William), подробный обзор его творчества. Сюжет и содержание произведения "Ромео и Джульетта"

Стол детский складной "Первоклашка. Осень".
Материал: металл, пластик. Размер столешницы: 600x450 мм. Высота стола: 580 мм. Возраст: от 3 до 7 лет.
820 руб
Раздел: Столики
Дозатор для жидкого мыла сенсорный "Dettol (Детол)" + картридж "Зеленый чай и имбирь".
Дозатор для жидкого мыла Dettоl (сенсорный + кaртридж) представляет собой автоматическую сенсорную систему, обеспечивающую вакуумное
462 руб
Раздел: Настольные
Таблетки для посудомоечных машин "Paclan Brileo. Classic", 110 штук.
Таблетки обладают отличным моющим действием за счет входящих в состав "умных" энзимов (амилазы и протеазы). Отлично моют посуду,
690 руб
Раздел: Для посудомоечных машин

65. Учебное сотрудничество как средство оптимизации обучения иностранному языку

66. Специфика преподавания иностранного языка и метод проектов

67. Метод действенного анализа в режиссуре театра, кино и телевидения

68. Обзор книги К. Куманецкого "История культуры Древней Греции и Рима"

69. Русская здрава (методы оздоровления на Руси)

70. Методы исследования литературы
71. Методы изучения музыкальных произведений крупной формы в старших классах общеобразовательной школы
72. Метод комплексного археолого-искусствоведческого анализа могильников

73. Конвертер программы с подмножества языка Си в Паскаль с использованием LL(1) метода синтаксического анализа (выражения)

74. Методы компьютерной обработки статистических данных

75. Решение транспортной задачи методом потенциалов

76. Методичка по Internet Explore

77. Шифрование по методу UUE

78. Разработка верхнего уровня Информационной Системы Университета

79. Оценка методов и средств обеспечения безошибочности передачи данных в сетях

80. Обзор ресурсов Internet по социологии

Домик для кукол "Коттедж Конфетти".
Игрушка собирается ребёнком с помощью взрослого и предназначена для игры с куклами высотой до 30 см. В наборе: стена с окнами - 8 штук,
4433 руб
Раздел: Для мини-кукол и мини-пупсов
Защитные шторки для автомобиля на присосках Chicco Safe "Паравозик", с сумкой в комплекте, 2.
Предназначены для автомобиля, они защитят вашего малыша от солнечных лучей и перегрева. Крепятся к стеклу присосками. Рисунок в виде
880 руб
Раздел: Прочее
Магнит "FIFA 2018. Забивака с флагом".
Магнит с символикой чемпионата мира FIFA 2018. Материал: ПВХ.
301 руб
Раздел: Брелоки, магниты, сувениры

81. Процессоры нового поколения и перспективы их развития

82. Процессор Intel 286

83. 80286 процессор

84. Информационные потоки в ЭВМ. Алгоритм работы процессора

85. Принцип программного управления. Микропроцессор. Алгоритм работы процессора

86. Моя профессиональная деятельность на инженерном уровне (специальность 220200)
87. Разработка программной и аппаратной поддержки к методическим указаниям "Программирование микроконтроллеров"
88. История процессоров

89. PENTIUM Processor. Технический обзор

90. Компьютерная поддержка коммерческой деятельности фирмы

91. Полная параллельная поддержка для систем планирования, основанных на случаях

92. Реализация языкового процессора оператора FOR языка BASIC

93. Защита информации от несанкционированного доступа методом криптопреобразования /ГОСТ/

94. Обучение начальных курсов методам программирования на языке Turbo Pascal

95. Применение методов линейного программирования в военном деле. Симплекс-метод

96. Вычисление площади сложной фигуры методом имитационного моделирования (Windows)

Настольная игра "Упрямый Шарик".
Любимый игровой автомат теперь у вас дома! Упрямый Шарик - игра, знакомая многим с детства: нужно провести шарик по долгому и тернистому
976 руб
Раздел: Игры на ловкость
Игра настольная "Ктояжка".
Развлекательная настольная игра-угадайка для компании «Ктояжка» очень простая на первый взгляд, но тем не менее она требует от всех
328 руб
Раздел: Игры на ассоциации, воображение
Подставка для книг "Brauberg", большая.
Подставку возможно расширить по бокам для работы с большими книгами. Максимальная высота: 37 см, максимальная ширина: 33 см. Регулируемый
1112 руб
Раздел: Подставки, лотки для бумаг, футляры

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

98. Разработка программного обеспечения для оптимизации показателей надежности радиоэлектронных систем

99. Лекции по высокоуровневым методам информатики и программированию


Поиск Рефератов на сайте za4eti.ru Вы студент, и у Вас нет времени на выполнение письменных работ (рефератов, курсовых и дипломов)? Мы сможем Вам в этом помочь. Возможно, Вам подойдет что-то из ПЕРЕЧНЯ ПРЕДМЕТОВ И ДИСЦИПЛИН, ПО КОТОРЫМ ВЫПОЛНЯЮТСЯ РЕФЕРАТЫ, КУРСОВЫЕ И ДИПЛОМНЫЕ РАБОТЫ. 
Вы можете поискать нужную Вам работу в КОЛЛЕКЦИИ ГОТОВЫХ РЕФЕРАТОВ, КУРСОВЫХ И ДИПЛОМНЫХ РАБОТ, выполненных преподавателями московских ВУЗов за период более чем 10-летней работы. Эти работы Вы можете бесплатно СКАЧАТЬ.