The Community for Technology Leaders
Parallel and Distributed Processing Symposium, International (2004)
Santa Fe, New Mexico
Apr. 26, 2004 to Apr. 30, 2004
ISBN: 0-7695-2132-0
pp: 260a
Michael C. Scherger , Kent State University
Darrell R. Ulm , University of Akron
Johnnie W. Baker , Kent State University
This paper describes a parallel solution of the sequential dynamic programming method for solving a NP class, 2D knapsack (or cutting-stock) problem which is the optimal packing of multiples of n rectangular objects into a knapsack of size L × W and are only obtainable with guillotine-type (side to side) cuts. Here, we describe and analyze this problem for the associative model. Since the introduction of associative SIMD computers over a quarter of a century ago, associative computing and the data-parallel paradigm remain popular. The MASC (Multiple instruction stream ASsociative Computer) parallel model supports a generalized version of an associative style of computing. This model supports data parallelism, constant time maximum and minimum operations, one or more instruction streams (ISs) which are sent to an equal number of partition sets of processors, and assignment of tasks to ISs using control parallelism. We solve this NP class problem with a parallel algorithm that runs in O(W(n+L+W)) time using L processors, where L ≥ W for a 2D knapsack problem with a capacity of L × W. The new multiple IS version using LW processors and max{L,M} ISs runs in O(n+L+W) given practical hardware considerations. Both of these results are cost optimal with respect to the best sequential implementation. Moreover, an efficient MASC algorithm for this well-known problem should give insight to how the associative model compares to other parallel models such as PRAM.
Michael C. Scherger, Darrell R. Ulm, Johnnie W. Baker, "Solving a 2D Knapsack Problem Using a Hybrid Data-Parallel/Control Style of Computing", Parallel and Distributed Processing Symposium, International, vol. 16, no. , pp. 260a, 2004, doi:10.1109/IPDPS.2004.1303328
97 ms
(Ver 3.3 (11022016))