Efficient parallel multi-way Quicksort algorithm

Efektivní paralelní vícecestný Quicksort algoritmus

Research Projects

Organizational Units

Journal Issue

Abstract

V této diplomové práci je představena nová verze paralelniho in-place Quicksort algoritmu MPQ-sort pro řazeni poli, s využitim OpenMP pro paralelizaci. Dosavadni implementace využivaji pro rozdělováni pouze jednoho pivota. MPQsort implementuje paralelni vicecestné rozdělováni a jedná se o prvni algoritmus svého druhu. V práci jsou diskutována sekvenčni vicecestná rozdělováni, následně paralelni dvoucestná rozdělováni a na jejich základě navržena a imple-mentována paralelni vicecestná varianta. Poté je provedeno experimentálni vyhodnoceni efek-tivity algoritmu a porovnáni s existujicimi implementacemi. V experimentech MPQsort dosa-huje dobrých výsledků a z uvažovaných algoritmů se umistil na druhém mistě v oblasti řazeni náhodných čisel. Naopak v připadě jiných typů uspořádáni dat dosahuje i nejlepšich výsledků.

A new version of the parallel in-place Quicksort algorithm MPQsort for array sorting is presented in this thesis, using OpenMP for parallelization. Current implementations use only one pivot for element partitioning. On the other hand, MPQsort implements parallel multi-way partitioning and so is the first algorithm of its kind. Sequential multi-way partitionings are discussed in the first part of the thesis, followed by parallel two-way partitioning. Based on the gathered information is designed and implemented parallel multi-way partitioning. Implementation was followed by an experimental evaluation of its efficiency and comparison with other implementations. MPQsort achieves good results in experiments and among the other considered algorithms ranked second in terms of sorting randomly generated numbers. Conversely, it sometimes achieves the best results for other types of data arrangements.

Description

Citation

Endorsement

Review

Supplemented By

Referenced By