Содержание
- 2. ВЫЧИСЛЕНИЕ ОПРЕДЕЛЕННОГО ИНТЕГРАЛА
- 3. Метод прямоугольников
- 4. Последовательность выполнения Последовательная версия. Базовая реализация алгоритма интегрирования Эффект применения компилятора Использование предварительных вычислений сложных функций
- 5. Базовый алгоритм Должен содержать код, несколько раз запускающий тестируемую реализацию алгоритма вычислений. Должен вычислять минимальное, максимальное
- 6. Распараллеливание базового алгоритма Геометрическая декомпозиция данных (разделение данных на части и применение к ним одного и
- 7. Геометрическая декомпозиция данных По столбцам По строкам Блочно 1 2 3
- 8. Оптимизация базового алгоритма Предварительное вычисление сложных математических функций (sin, cos, exp и др.). Алгоритмическая оптимизация (исключение
- 9. Распараллеливание оптимизированного алгоритма Распараллеливание с учетом уже полученных результатов: В данной задаче наилучшие результаты дает распараллеливание
- 10. Пример выполнения вычислений
- 11. Структура программы main() experiment() integral()
- 12. Пример выполнения вычислений Базовый алгоритм
- 13. Основная программа int main () { int i; double time, res, min_time, max_time, avg_time; int numbExp
- 14. Функция experiment double experiment(double *res) { double stime, ftime; double a1 = 0.0 ; double a1
- 15. Функция integral void integral(const double a1, const double b1, const double a2, const double b2, const
- 16. Пример выполнения вычислений Базовый алгоритм - распараллеливание
- 17. Распараллеливание по столбцам #pragma omp parallel for for(i = 0; i { for(j = 0; j
- 18. Распараллеливание по столбцам с учетом data race #pragma omp parallel for private (x, y, j) reduction(+:
- 19. Распараллеливание по строкам for(i = 0; i { #pragma omp parallel for private (x, y) reduction(+:
- 20. Блочное разделение данных omp_set_nested(true); #pragma omp parallel for for (i = 0; i { #pragma omp
- 21. Результаты вычислений
- 22. Влияние параметров распараллеливания циклов
- 23. Пример выполнения вычислений Оптимизированный алгоритм – распараллеливание
- 24. Использование предварительных вычислений сложных функций void integral(const double a1, const double b1, const double a2, const
- 25. Результаты вычислений
- 26. Загрузка ядер процессора Последовательный алгоритм Оптимизированный параллельный алгоритм Параллельный алгоритм
- 27. Пример выполнения вычислений Вычисление интеграла методом Монте-Карло
- 28. Метод Монте-Карло
- 29. Функция integral void integral(const double a1, const double b1, const double a2, const double b2, const
- 31. Скачать презентацию