Параллельные методы сортировки
Заказать уникальный реферат- 23 23 страницы
- 10 + 10 источников
- Добавлена 07.05.2021
- Содержание
- Часть работы
- Список литературы
- Вопросы/Ответы
1. Параллельные методы сортировки………………………………………....…….4
2.Пузырьковая сортировка…………………………………………………………..7
4. Сортировка Шелла………………………………………………………….…...11
5. Быстрая сортировка…………………………………………………………..….15
Заключение……………………………………….…………………………………21
Список литературы……………………………………….…………………………23
Для иллюстрации параллельного быстрого алгоритма на рис. 10.6 показан пример сортировки данных при n = 16, p = 4 (т.е. каждый блок процессора содержит четыре элемента). Процессоры показаны прямоугольниками, сортируемые блоки данных показаны внутри прямоугольников. Значения блоков даются в начале и в конце каждой итерации сортировки. Взаимодействующие пары процессоров соединены двусторонними стрелками. Для разделения данных выбраны оптимальные значения сводных элементов. На первой итерации для всех процессоров использовалось значение 0. На второй итерации для пары процессоров (0, 1) поворотный элемент был равен 4, для пары (2, 3) значение было выбраноравным-5Рисунок Пример сортировки данных параллельным методом быстройсортировки Как и ранее, основной вычислительной подзадачей может быть операция сравнения-разделения. Количество подзадач совпадает с количеством используемых процессоров. Распределение подзадач между процессорами должно выполняться с учетом эффективного выполнения алгоритма для топологии сети гиперкуба.Оценим сложность описанного параллельного метода. Предположим, что у нас есть N-мерный гиперкуб (т.е.p=2N)иp
2. Проект V-Ray (http://parallel.ru/v-ray).
3. Jacobson T., Stubbendieck G. Dependency Analysis of FOR-Loop Structures for Automatic Parallelization of C Code (http://www.css.edu/depts/cis/mics_2003/MICS2003_Papers/Jacobson.PDF).
4. Karkowski I., Corporaal H. Overcoming the Limitations of the Traditional Loop Parallelization // Journal of Future Generation Computer Systems. 1998. № 13. P. 407-416.
5. Petersen P.M. Evaluation of Programs and Parallelizing Compilers Using Dynamic Analysis Techniques. Champaign, IL, USA: University of Illinois at Urbana-Champaign, 1993. 164 p.
6. Knuth, D. E. (1997). The Art of Computer Programming. Volume 3: Sorting and Searching, second edition. – Reading, MA: Addison-Wesley.
7. Kumar V., Grama, A., Gupta, A., Karypis, G. (1994). Introduction to Parallel Computing. - The Benjamin/Cummings Publishing Company, Inc. (2nd edn., 2003)
8. Quinn, M. J. (2004). Parallel Programming in C with MPI and OpenMP. – New York, NY: McGraw-Hill.
9. Akl, S. G. (1985). Parallel Sorting Algorithms. – Orlando, FL: Academic Press
10. Cormen, T.H., Leiserson, C. E. , Rivest, R. L. , Stein C. (2001). Introduction to Algorithms, 2nd Edition. - The MIT Press.
Вопрос-ответ:
Какие существуют параллельные методы сортировки?
Существуют различные параллельные методы сортировки, включая пузырьковую сортировку, сортировку Шелла и быструю сортировку.
Как работает пузырьковая сортировка?
Пузырьковая сортировка сравнивает пары соседних элементов и меняет их местами, если они находятся в неправильном порядке. Этот процесс продолжается до тех пор, пока все элементы не будут отсортированы.
Что такое сортировка Шелла?
Сортировка Шелла - это усовершенствованная версия пузырьковой сортировки. Она разбивает список на подсписки и сортирует их отдельно. Затем она последовательно объединяет подсписки, выполняя сортировку до тех пор, пока весь список не будет отсортирован.
Как работает быстрая сортировка?
Быстрая сортировка использует стратегию "разделяй и властвуй". Она выбирает опорный элемент из списка и разделяет его на две части - элементы, меньшие опорного, и элементы, большие опорного. Затем она рекурсивно применяет ту же операцию к подспискам до тех пор, пока весь список не будет отсортирован.
Как можно иллюстрировать параллельный быстрый алгоритм сортировки?
Пример сортировки данных с использованием параллельного быстрого алгоритма показан на рисунке 10.6. В этом примере представлены данные, содержащие n=16 элементов и p=4 блока процессора.
Каковы основные принципы параллельных методов сортировки?
Основными принципами параллельных методов сортировки являются разделение данных на части и их сортировка независимо друг от друга на отдельных процессорах, а затем объединение отсортированных частей.
Что такое пузырьковая сортировка?
Пузырьковая сортировка - это простой алгоритм сортировки, при котором элементы сравниваются попарно и меняются местами, если они находятся в неправильном порядке. Алгоритм повторяется до тех пор, пока не будет достигнут правильный порядок.
Что такое сортировка Шелла?
Сортировка Шелла - это улучшенная версия сортировки вставками. В этом методе элементы сортируются путем сравнения элемента с элементом, находящимся на определенном расстоянии от него. Постепенно уменьшая это расстояние, элементы приближаются к своим конечным позициям, пока не будет достигнуто полное упорядочение.
Что такое быстрая сортировка?
Быстрая сортировка - это эффективный алгоритм сортировки, работающий по принципу "разделяй и властвуй". Он выбирает опорный элемент, разбивает массив на две части - элементы меньше опорного и элементы больше опорного, а затем рекурсивно сортирует каждую из частей. В конце процесса получается отсортированный массив.