KMITL

Permanent URI for this communityhttps://dspace.kmitl.ac.th/handle/123456789/1

Browse

Search Results

Now showing 1 - 4 of 4
  • Some of the metrics are blocked by your 
    Item type:Publication,
    Optimizing MultiStack parallel (MSP) sorting algorithm
    (2021-06-02)
    Rattanatranurak, Apisit
    ;
    Kittitornkun, Surin
    Mobile smartphones/laptops are becoming much more powerful in terms of core count and memory capacity. Demanding games and parallel applications/algorithms can hopefully take advantages of the hardware. Our parallel MSPSort algorithm is one of those examples. However, MSPSort can be optimized and fine tuned even further to achieve its highest capabilities. To evaluate the effectiveness of MSPSort, two Linux systems are quad core ARM Cortex-A72 and 24-core AMD ThreadRipper R9-2920. It has been demonstrated that MSPSort is comparable to the well-known parallel standard template library sorting functions, i.e. Balanced QuickSort and Multiway MergeSort in various aspects such as run time and memory requirements.
  • Some of the metrics are blocked by your 
    Item type:Publication,
    A Parallel Multi-Deque Sorting Algorithm
    (2021-01-01)
    Kittitornkun, Surin
    ;
    Rattanatranurak, Apisit
    Parallel or multithreaded sorting algorithms have been proposed and researched for multicore and manycore CPU and GPU systems. Some of them are based on divide and conquer concept to exploit data parallelism as well as task parallelism at the same time. In this paper, a Multi-Deque Sort (MDQSort) is proposed and developed on top of our previous algorithm called Multi-Stack (MSP) Sort. Therefore, the MDQSort can easily enhance the performance while getting rid of weaknesses of MSPSort. As a result, MDQSort can be as competitive as the Standard Template Library parallel mode sorting algorithms on a 4-core ARM Cortex A72 Linux system in terms of run time, stability, CPU utilization and memory (RAM) utilization.
  • Some of the metrics are blocked by your 
    Item type:Publication,
    A MultiStack Parallel (MSP) partition algorithm applied to sorting
    (2020-09-09)
    Rattanatranurak, Apisit
    ;
    Kittitornkun, Surin
    The CPUs of smartphones are becoming multicore with huge RAM and storage to support a variety of multimedia applications in the near future. A MultiStack Parallel (MSP) sorting algorithm is proposed and named MSPSort to support manycore systems. It can be regarded as many threads of single-pivot interleaving block-based Hoare’s algorithm. Each thread performs compare-swap operations between left and right (stacked and interleaved) data blocks. A number of multithreading features of OpenMP and our own optimization strategies have been utilized. To simulate those smartphones, MSPSort is fine tuned and tested on four Linux systems, e.g. Intel i7-2600, Xeon X5670, AMD R7-1700 and R9-2920. Their memory configurations can be classified as either uniform or non-uniform memory access. The statistical results are satisfied compared to parallel-mode sorting algorithms of Standard Template Library, namely Balanced QuickSort and MultiWay MergeSort. Moreover, MSPSort looks promising to be developed further to improve both run time and stability.
  • Some of the metrics are blocked by your 
    Item type:Publication,
    A Parallel Triple-Pivot Sorting (PTPSort) Algorithm: Preliminary Results
    (2020-06-01)
    Rattanatranurak, Apisit
    ;
    Kittitornkun, Surin
    Parallel or multithreaded sorting algorithms can be useful for data science/analytics and other applications for manycore CPU systems. A Parallel Triple Pivot Sort (PTPSort) is devised based on the Hoare's partition algorithm. The input array is initially partitioned with two pivots, PLo and PHi in parallel with two threads. Subsequently, the middle pivot, PMi, is applied resulting in approximately two halves. Finally, four subarrays can be obtained from two independent threads partitioning each leftover half with PLo and PHi, respectively. The process is recursively forked as threads until the subarray is shorter than a cutoff threshold and then STLSorted in parallel. However, its preliminary execution time is a bit longer than that of our benchmark, a parallel original Hoare's algorithm, on a 24-thread AMD ThreadRipper 2920x Linux system.