{"title":"求解最长公共子序列问题的并行化动态规划算法","authors":"Bchira Ben Mabrouk, Hamadi Hasni, Z. Mahjoub","doi":"10.1109/AICCSA.2010.5587006","DOIUrl":null,"url":null,"abstract":"We address in this paper the design and analysis of cost-optimal parallel algorithms for solving the problem of the longest common subsequence. Starting from the standard sequential dynamic programming algorithm which has the structure of a perfect nest of two embedded loops, we make use of a specific three-step parallelization approach consisting in (i) a dependence analysis within the nest ; (ii) the determination of a particular unimodular transformation leading to a new nest whose second loop is parallel ; (iii) the design of two linear time schedulings for the derived parallel algorithm when a given number of processors is available. The first scheduling is fitted to the nest structure while the second is greedy oriented and optimal. The makespans of the two schedulings are explicitly determined. This permits to establish a comparison showing their respective efficiencies.","PeriodicalId":352946,"journal":{"name":"ACS/IEEE International Conference on Computer Systems and Applications - AICCSA 2010","volume":"138 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2010-05-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"8","resultStr":"{\"title\":\"Parallelization of the dynamic programming algorithm for solving the longest common subsequence problem\",\"authors\":\"Bchira Ben Mabrouk, Hamadi Hasni, Z. Mahjoub\",\"doi\":\"10.1109/AICCSA.2010.5587006\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"We address in this paper the design and analysis of cost-optimal parallel algorithms for solving the problem of the longest common subsequence. Starting from the standard sequential dynamic programming algorithm which has the structure of a perfect nest of two embedded loops, we make use of a specific three-step parallelization approach consisting in (i) a dependence analysis within the nest ; (ii) the determination of a particular unimodular transformation leading to a new nest whose second loop is parallel ; (iii) the design of two linear time schedulings for the derived parallel algorithm when a given number of processors is available. The first scheduling is fitted to the nest structure while the second is greedy oriented and optimal. The makespans of the two schedulings are explicitly determined. This permits to establish a comparison showing their respective efficiencies.\",\"PeriodicalId\":352946,\"journal\":{\"name\":\"ACS/IEEE International Conference on Computer Systems and Applications - AICCSA 2010\",\"volume\":\"138 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2010-05-16\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"8\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"ACS/IEEE International Conference on Computer Systems and Applications - AICCSA 2010\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/AICCSA.2010.5587006\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"ACS/IEEE International Conference on Computer Systems and Applications - AICCSA 2010","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/AICCSA.2010.5587006","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Parallelization of the dynamic programming algorithm for solving the longest common subsequence problem
We address in this paper the design and analysis of cost-optimal parallel algorithms for solving the problem of the longest common subsequence. Starting from the standard sequential dynamic programming algorithm which has the structure of a perfect nest of two embedded loops, we make use of a specific three-step parallelization approach consisting in (i) a dependence analysis within the nest ; (ii) the determination of a particular unimodular transformation leading to a new nest whose second loop is parallel ; (iii) the design of two linear time schedulings for the derived parallel algorithm when a given number of processors is available. The first scheduling is fitted to the nest structure while the second is greedy oriented and optimal. The makespans of the two schedulings are explicitly determined. This permits to establish a comparison showing their respective efficiencies.