{"title":"在应用程序循环中利用基于任务的并行性","authors":"Han Cui, N. Dahnoun","doi":"10.1109/MECO.2019.8760146","DOIUrl":null,"url":null,"abstract":"This paper investigates the potential of task-based parallelisation for application loops in the presence of cross-iteration dependencies. A novel task-based parallelisation scheme is implemented as an LLVM compiler pass that could automatically parallelise loops without programmer intervention. The parallelisation scheme is shown to be able to achieve significant performance improvements on computationally expensive applications with up to 61x speedup on 64 threads, and is capable of dealing with imbalanced workloads and arbitrary dependency patterns.","PeriodicalId":141324,"journal":{"name":"2019 8th Mediterranean Conference on Embedded Computing (MECO)","volume":"15 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-07-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Exploiting Task-based Parallelism in Application Loops\",\"authors\":\"Han Cui, N. Dahnoun\",\"doi\":\"10.1109/MECO.2019.8760146\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This paper investigates the potential of task-based parallelisation for application loops in the presence of cross-iteration dependencies. A novel task-based parallelisation scheme is implemented as an LLVM compiler pass that could automatically parallelise loops without programmer intervention. The parallelisation scheme is shown to be able to achieve significant performance improvements on computationally expensive applications with up to 61x speedup on 64 threads, and is capable of dealing with imbalanced workloads and arbitrary dependency patterns.\",\"PeriodicalId\":141324,\"journal\":{\"name\":\"2019 8th Mediterranean Conference on Embedded Computing (MECO)\",\"volume\":\"15 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2019-07-15\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2019 8th Mediterranean Conference on Embedded Computing (MECO)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/MECO.2019.8760146\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2019 8th Mediterranean Conference on Embedded Computing (MECO)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/MECO.2019.8760146","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Exploiting Task-based Parallelism in Application Loops
This paper investigates the potential of task-based parallelisation for application loops in the presence of cross-iteration dependencies. A novel task-based parallelisation scheme is implemented as an LLVM compiler pass that could automatically parallelise loops without programmer intervention. The parallelisation scheme is shown to be able to achieve significant performance improvements on computationally expensive applications with up to 61x speedup on 64 threads, and is capable of dealing with imbalanced workloads and arbitrary dependency patterns.