{"title":"On Determining Multiple Optimal Parenthesizations for Matrix Chain Products and Scheduling the Corresponding Task Graphs","authors":"Khaoula Bezzina, Bchira Ben Mabrouk, Z. Mahjoub","doi":"10.1109/HPCS.2017.61","DOIUrl":null,"url":null,"abstract":"We are interested in an easy combinatorial optimization problem having several applications in the real world, namely the matrix chain product problem that may be solved by a well known dynamic programming algorithm (DPA). Our contribution is two-fold. It first consists in the design of an approach based on the DPA for the determination of multiple optimal solutions i.e. optimal parenthesizations (OPs) which may be represented by binary in-trees (BITs). Since our aim is to efficiently parallelize the computation of the resulting product matrix, we define for this purpose a particular inter-OPs comparative criterion i.e. the cost of a critical path in each BIT. Afterwards, we design different schedulings for the corresponding BIT task graphs (TGs). The procedure begins by the construction of the earliest and latest level partitions (LPs) of the TG. Then, after choosing three granularity sizes, i.e coarse, medium and mixed coarse-medium grains, and given an arbitrary number of processors, the proposed schedulings follow a level-per-level scanning of LPs of the TG. In addition to the design of efficient schedulings, we also determine the minimum number of processors to schedule the TG in minimal time. Our contribution is validated by an experimental study achieved on a series of input data (chain lengths, matrix sizes and number of processors) permitting to establish fine comparisons between the determined OPs and the designed schedulings, thus illustrating the practical interest of the study.","PeriodicalId":115758,"journal":{"name":"2017 International Conference on High Performance Computing & Simulation (HPCS)","volume":"65 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2017 International Conference on High Performance Computing & Simulation (HPCS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/HPCS.2017.61","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1
Abstract
We are interested in an easy combinatorial optimization problem having several applications in the real world, namely the matrix chain product problem that may be solved by a well known dynamic programming algorithm (DPA). Our contribution is two-fold. It first consists in the design of an approach based on the DPA for the determination of multiple optimal solutions i.e. optimal parenthesizations (OPs) which may be represented by binary in-trees (BITs). Since our aim is to efficiently parallelize the computation of the resulting product matrix, we define for this purpose a particular inter-OPs comparative criterion i.e. the cost of a critical path in each BIT. Afterwards, we design different schedulings for the corresponding BIT task graphs (TGs). The procedure begins by the construction of the earliest and latest level partitions (LPs) of the TG. Then, after choosing three granularity sizes, i.e coarse, medium and mixed coarse-medium grains, and given an arbitrary number of processors, the proposed schedulings follow a level-per-level scanning of LPs of the TG. In addition to the design of efficient schedulings, we also determine the minimum number of processors to schedule the TG in minimal time. Our contribution is validated by an experimental study achieved on a series of input data (chain lengths, matrix sizes and number of processors) permitting to establish fine comparisons between the determined OPs and the designed schedulings, thus illustrating the practical interest of the study.