- https://doi.org/10.1109/aiccsa.2017.179
Performance Evaluation of a Parallel Algorithm for Determining All Optimal Solutions of the 1D Array Partitioning Problem
- Oct 1, 2017
- Hajer Salhi +2 more
We address the parallelization of the determination of all optimal solutions (DAOS) for the 1D array partitioning problem, an easy combinatorial optimization problem that may be solved by dynamic programming. It turns out that the designed DAOS algorithm is a polyhedral algorithm (PA), i.e. a FOR-loop nest with affine loop bounds, whose iteration space that has to be scanned may be of exponential cardinality in the array size hence too time consuming. Thus, after a cardinality reducing procedure leading to an improved PA (IPA), we propose to parallelize the IPA through a specific approach. This latter first consists in a dependence analysis within the IPA leading to detect that all its loops are parallel. We then apply a loop interchange on the IPA in order to have a new IPA whose first loop has the largest number of parallel iterations. Another alternative consists in moving to the first position the loop whose number of iterations is the closest to the number of available processors. We detail an analysis of the theoretical performances of the derived parallel IPA by proposing several versions fitting the number of available processors and reducing the overhead due to processor synchronizations.
- # Number Of Available Processors
- # Number Of Iterations
- # Polyhedral Algorithm
- # Iteration Space
- # Number Of Processors
- # Array Size
- # Specific Approach
- # Dynamic Programming
- # Easy Optimization
- # Optimal Solutions