Лабораторная работа №1,2,3 по дисциплине: Оптимизирующие компиляторы. Вариант №02
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
ЛАБОРАТОРНАЯ РАБОТА №1
«ОПРЕДЕЛЕНИЕ ВРЕМЕНИ РАБОТЫ ПРИКЛАДНЫХ ПРОГРАММ»
Цели работы
1. Изучение методики измерения времени работы подпрограммы.
2. Изучение приемов повышения точности измерения времени работы подпрограммы.
3. Изучение способов измерения времени работы подпрограммы.
4. Измерение времени работы подпрограммы в прикладной программе.
5. ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать размерность массива N такой, чтобы время работы программы более медленным алгоритмом было порядка 5 секунд.
4. Оценить (на 5-10 тестах) относительное быстродействие алгоритмов.
5. Составить отчет по лабораторной работе. Отчет должен содержать следующее:
6. ВАРИАНТЫ ЗАДАНИЙ
№ Алгоритм 1 Алгоритм 2
2 Перемешиванием Выбором
ЛАБОРАТОРНАЯ РАБОТА №2
«ИЗУЧЕНИЕ ОПТИМИЗИРУЮЩЕГО КОМПИЛЯТОРА»
Цели работы
1. Изучение основных функций оптимизирующего компилятора, и некоторых примеров оптимизирующих преобразований и уровней оптимизации.
2. Получение базовых навыков работы с компилятором GCC.
3. Исследование влияния оптимизационных настроек компилятора GCC на время исполнения программы.
В лабораторной работе описаны основные возможности компилятора GCC/CNU, являющегося классическим образцом оптимизирующего компилятора. При выполнении задания в ОС Windows рекомендуется QT (https://www.qt.io/) - бесплатный IDE для C++ с компилятором MinGW (программный порт GCC под Windows).
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать значение параметра N таким, чтобы время работы программы было порядка 30-60 секунд.
4. Программу скомпилировать компилятором GCC с уровнями оптимизации -O0, -O1, -O2, -O3, -Os, -Ofast, -Og под архитектуру процессора x86.
5. Для каждого из семи вариантов компиляции измерить время работы программы при нескольких значениях N.
№ Алгоритм 1 Алгоритм 2
2 Перемешиванием Выбором
Лабораторная работа № 3.
Оптимизация временной сложности алгоритма
Цели работы
1. Изучение основных понятий, связанных с оценкой временной сложности алгоритмов .
2. Изучение практических приемов оптимизации кода.
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. В соответствии с вариантом задания, реализовать алгоритмы так, чтобы их временная сложность соответствовала требуемой в постановке задачи или были проведены иные оптимизации (см. табл. 2). Решения представить в виде работающих программ на C++.
№ вар. Алгоритм 1 Алгоритм 2
2 2 9
2 Сортировка элементов вектора a[n] по возрастанию for (int i=0; i<n; i++)
for (int j=0;j<n; j++)
if (a[i]>a[j]) {
int t=a[i]; a[i]=a[j];
a[j]=t;
} O(n2) O(n2/2)
9 Поиск в матрице натуральных чисел, строки и столбцы которой упорядочены по возрастанию, элемента со значением find const int n=4,m=3;
int a[n][m]={
{10,20,30},{15,35,40},
{20,55,60},{40,80,90}
};
int find = 55;
bool found = false;
for (int i=0; i<n; i++)
for (int j=0; j<m; j++)
{
if (a[i][j]==find) {
found = true; break;
}
} O(n2) Меньше, чем O(n2), желательно, логарифмическое
«ОПРЕДЕЛЕНИЕ ВРЕМЕНИ РАБОТЫ ПРИКЛАДНЫХ ПРОГРАММ»
Цели работы
1. Изучение методики измерения времени работы подпрограммы.
2. Изучение приемов повышения точности измерения времени работы подпрограммы.
3. Изучение способов измерения времени работы подпрограммы.
4. Измерение времени работы подпрограммы в прикладной программе.
5. ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать размерность массива N такой, чтобы время работы программы более медленным алгоритмом было порядка 5 секунд.
4. Оценить (на 5-10 тестах) относительное быстродействие алгоритмов.
5. Составить отчет по лабораторной работе. Отчет должен содержать следующее:
6. ВАРИАНТЫ ЗАДАНИЙ
№ Алгоритм 1 Алгоритм 2
2 Перемешиванием Выбором
ЛАБОРАТОРНАЯ РАБОТА №2
«ИЗУЧЕНИЕ ОПТИМИЗИРУЮЩЕГО КОМПИЛЯТОРА»
Цели работы
1. Изучение основных функций оптимизирующего компилятора, и некоторых примеров оптимизирующих преобразований и уровней оптимизации.
2. Получение базовых навыков работы с компилятором GCC.
3. Исследование влияния оптимизационных настроек компилятора GCC на время исполнения программы.
В лабораторной работе описаны основные возможности компилятора GCC/CNU, являющегося классическим образцом оптимизирующего компилятора. При выполнении задания в ОС Windows рекомендуется QT (https://www.qt.io/) - бесплатный IDE для C++ с компилятором MinGW (программный порт GCC под Windows).
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать значение параметра N таким, чтобы время работы программы было порядка 30-60 секунд.
4. Программу скомпилировать компилятором GCC с уровнями оптимизации -O0, -O1, -O2, -O3, -Os, -Ofast, -Og под архитектуру процессора x86.
5. Для каждого из семи вариантов компиляции измерить время работы программы при нескольких значениях N.
№ Алгоритм 1 Алгоритм 2
2 Перемешиванием Выбором
Лабораторная работа № 3.
Оптимизация временной сложности алгоритма
Цели работы
1. Изучение основных понятий, связанных с оценкой временной сложности алгоритмов .
2. Изучение практических приемов оптимизации кода.
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. В соответствии с вариантом задания, реализовать алгоритмы так, чтобы их временная сложность соответствовала требуемой в постановке задачи или были проведены иные оптимизации (см. табл. 2). Решения представить в виде работающих программ на C++.
№ вар. Алгоритм 1 Алгоритм 2
2 2 9
2 Сортировка элементов вектора a[n] по возрастанию for (int i=0; i<n; i++)
for (int j=0;j<n; j++)
if (a[i]>a[j]) {
int t=a[i]; a[i]=a[j];
a[j]=t;
} O(n2) O(n2/2)
9 Поиск в матрице натуральных чисел, строки и столбцы которой упорядочены по возрастанию, элемента со значением find const int n=4,m=3;
int a[n][m]={
{10,20,30},{15,35,40},
{20,55,60},{40,80,90}
};
int find = 55;
bool found = false;
for (int i=0; i<n; i++)
for (int j=0; j<m; j++)
{
if (a[i][j]==find) {
found = true; break;
}
} O(n2) Меньше, чем O(n2), желательно, логарифмическое
Дополнительная информация
Уважаемый студент, дистанционного обучения,
Оценена Ваша работа по предмету: Оптимизирующие компиляторы
Вид работы: Лабораторная работа 1-3
Оценка: Зачет
Дата оценки: 17.07.2020
Рецензия:Уважаемый ,
Зырянов Кирилл Игоревич
Помогу с вашим вариантом, другой работой или дисциплиной.
E-mail: sneroy20@gmail.com
Оценена Ваша работа по предмету: Оптимизирующие компиляторы
Вид работы: Лабораторная работа 1-3
Оценка: Зачет
Дата оценки: 17.07.2020
Рецензия:Уважаемый ,
Зырянов Кирилл Игоревич
Помогу с вашим вариантом, другой работой или дисциплиной.
E-mail: sneroy20@gmail.com
Похожие материалы
Оптимизирующие компиляторы. Лабораторная работа 1. Вариант 1.
nik200511
: 12 февраля 2020
ЛАБОРАТОРНАЯ РАБОТА №1
«ОПРЕДЕЛЕНИЕ ВРЕМЕНИ РАБОТЫ ПРИКЛАДНЫХ ПРОГРАММ»
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать размерность массива N такой, чтобы время работы программы более медленным алгоритмом было порядка 5 секунд.
4. Оценить (на 5-10 тестах) относительное быстродействие алгоритмов.
№ Алгоритм 1 Алгоритм 2
1
322 руб.
Контрольная работа по дисциплине: Оптимизирующие компиляторы. Вариант №02
IT-STUDHELP
: 21 июля 2020
Контрольная работа представляет собой опрос. Список вопросов выбирается по последней цифре пароля из 140 штук по 14 вопросов каждому студенту (например, если у вас пароль заканчивается на цифру 5, то вы выбираете темы под номерами 5, 15, 25, 35, …, 135).
Контрольная работа должна содержать обязательно исходные данные (номер и текст вопроса)
Вопросы по теме 1
2. Каковы преимущества компилятора перед интерпретатором.
12. Какие действия производятся в фазе семантического анализа?
22. Что такое обл
600 руб.
Оптимизирующие компиляторы. Лабораторные работы №1-3. Вариант №1.
nik200511
: 12 февраля 2020
ЛАБОРАТОРНАЯ РАБОТА №1
«ОПРЕДЕЛЕНИЕ ВРЕМЕНИ РАБОТЫ ПРИКЛАДНЫХ ПРОГРАММ»
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать размерность массива N такой, чтобы время работы программы более медленным алгоритмом было порядка 5 секунд.
4. Оценить (на 5-10 тестах) относительное быстродействие алгоритмов.
№ Алгоритм 1 Алгоритм 2
1
960 руб.
Оптимизирующие компиляторы. Лабораторные работы №№1-3. Вариант №1.
SNF
: 12 февраля 2020
ЛАБОРАТОРНАЯ РАБОТА №1
«ОПРЕДЕЛЕНИЕ ВРЕМЕНИ РАБОТЫ ПРИКЛАДНЫХ ПРОГРАММ»
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать размерность массива N такой, чтобы время работы программы более медленным алгоритмом было порядка 5 секунд.
4. Оценить (на 5-10 тестах) относительное быстродействие алгоритмов.
№ Алгоритм 1 Алгоритм 2
1
2343 руб.
Оптимизирующие компиляторы. Лабораторная работа №2. Вариант №1.
nik200511
: 12 февраля 2020
ЛАБОРАТОРНАЯ РАБОТА №2.
«ИЗУЧЕНИЕ ОПТИМИЗИРУЮЩЕГО КОМПИЛЯТОРА»
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать значение параметра N таким, чтобы время работы программы было порядка 30-60 секунд.
4. Программу скомпилировать компилятором GCC с уровнями оптимизации -O0, -O1, -O2, -O3, -Os, -Ofast, -Og под архитектуру проце
322 руб.
Оптимизирующие компиляторы. Лабораторная работа №3. Вариант №1.
nik200511
: 12 февраля 2020
Лабораторная работа № 3.
Оптимизация временной сложности алгоритма
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. В соответствии с вариантом задания, реализовать алгоритмы так, чтобы их временная сложность соответствовала требуемой в постановке задачи или были проведены иные оптимизации (см. табл. 2). Решения представить в виде работающих программ на C++.
Варианты заданий взять из табл. 2.
Таблица 2. Варианты заданий
№ вар. Алгоритм 1 Алгоритм 2
1 1 10
Таблица 2. Варианты задания
№ Алгоритм Реализация на
322 руб.
Оптимизирующие компиляторы. Билет №25
IT-STUDHELP
: 5 июля 2020
Билет №25
Тема 1
1. компилятор – это программа, которая ...
Непосредственно выполняет операции, указанные в исходной программе, над входными данными, предоставляемыми пользователем
Позволяет вводить и редактировать исходный текст программы
Транслирует (переводит) исходный текст его в эквивалентный текст на другом языке – целевом
Транслирует исходный текст его в эквивалентный текст на другом языке и выполняет его
3. Препроцессор может...
выполнять предварительную сборку исходной программы и рас
420 руб.
Оптимизирующие компиляторы. Билет №11
IT-STUDHELP
: 5 июля 2020
Билет №11
Тема 1
2. Интерпретатор ...
Как правило, работает быстрее, чем другие виды трансляторов
Непосредственно выполняет операции, указанные в исходной программе, над входными данными, предоставляемыми пользователем.
Транслирует (переводит) исходный текст его в эквивалентный текст на другом языке – целевом.
Является основным средством отладки приложений
16. Лексемы можно определить, как...
директивы, подключающие дополнительные внешние библиотеки
значащие последовательности символов исходн
440 руб.
Другие работы
Лабораторные работы 1-3 по дисциплине: Операционные системы (Unix). Вариант №13, 23
IT-STUDHELP
: 7 июня 2023
Лабораторная работа No1
Задание к лабораторной работе No1
1. Создать файл a1 с помощью команды cat; ввести в файл текст из 6-ти строк вида (строка начинается с цифры порядкового номера строки):
1. my name is ...
2. my surname is ...
3. login is ...
4. <текст произвольного содержания (не менее 2-х слов)>
5. <текст произвольного содержания (не менее 2-х слов)>
6. <текст произвольного содержания (не менее 2-х слов)>
2. Создать файл a2 с помощью команды touch; в редакторе vi ввести
900 руб.
Диагностика и неразрушающий контроль авиационной техники
Svetoff
: 4 мая 2018
Задача No1.
Цель задачи: найти точкупересечения функции (диагностической модели) с линией предельного значения параметра, что позволит спрогнозировать предельную наработку объекта (системы).
Исходные данные:
диагностический параметр – содержание Fe в масле;
среднее значение содержания Fe в масле на 1-ом сечении = 2,0 г/т;
интервал наработки ∆t = 0 – 6000 ч;
количество сечений n = 7;
содержание Fe в масле с наработкой увеличивается (тренд положительный «+»);
среднее значение содержания Fe в масл
400 руб.
Индивидуальное жилое здание с мансардой
Aronitue9
: 6 мая 2015
Введение.
Инженерная подготовка территории.
Общая часть.
Расчет для определения природных уклонов.
Расчеты для определения красных отметок углов зданий и чистого пола первого этажа.
Расчеты для построения проектных горизонталей на территории участка и прилигающих дорог.
Планировочнные характеристики проектируемого объекта.
Устройство водоотвода.
Архитектурно-конструктивная часть.
Общая часть.
Архитектурно-планировочное решение.
Характеристика зданий.
Конструктивная схема зданий.
Экспликация поме
455 руб.
Социальные и этические вопросы информационных технологий. Экзамен. Билет № 6.
nik200511
: 29 декабря 2015
1. Тематическая структура Рунета
Тематическая структура Рунета.
Рунет — русскоязычный сектор Всемирной паутины, который ...
Учитывая наличие высокого интеллектуального потенциала ...
В Рунете существует целый ряд...
Cписок используемой литературы
...
178 руб.