Jiali Liang, Lin Chen, Xiangyu Zhang, Yanhui Li, Yuming Zhou
{"title":"ProSpec: GPU内核的配置文件引导专门化","authors":"Jiali Liang, Lin Chen, Xiangyu Zhang, Yanhui Li, Yuming Zhou","doi":"10.1016/j.infsof.2025.107901","DOIUrl":null,"url":null,"abstract":"<div><div>General-purpose GPUs are widely used for computational acceleration in various fields. Designing high-performance GPU kernels is challenging due to dynamic kernel variables and complex GPU architectures.</div><div>Leveraging runtime profiling to identify value-related inefficiencies is effective for optimizing GPU kernels, but it faces several challenges: (1) high profiling overhead, (2) limited analysis of inter-variable correlations, and (3) lack of automated optimization mechanisms.</div><div>In this paper, we propose a profile-guided optimization technique named ProSpec for GPU Kernel Specialization. It offloads profile collection to CPUs, analyzes inefficiency patterns dependent on multiple hot values, and generates optimization feedback for automatic kernel specialization.</div><div>The prototype of ProSpec, implemented over the LLVM infrastructure, is evaluated on the Rodinia and Polybench benchmarks. It achieves a maximum speedup of 5.619x and an average of 1.417x on optimized applications, maintaining a low profiling overhead of around 1.01x.</div><div>Compared to state-of-the-art methods, ProSpec leads in the number of improved kernels and further optimizes half of those already optimized by other tools.</div></div>","PeriodicalId":54983,"journal":{"name":"Information and Software Technology","volume":"188 ","pages":"Article 107901"},"PeriodicalIF":4.3000,"publicationDate":"2025-09-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"ProSpec: Profile-guided Specialization for GPU Kernels\",\"authors\":\"Jiali Liang, Lin Chen, Xiangyu Zhang, Yanhui Li, Yuming Zhou\",\"doi\":\"10.1016/j.infsof.2025.107901\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><div>General-purpose GPUs are widely used for computational acceleration in various fields. Designing high-performance GPU kernels is challenging due to dynamic kernel variables and complex GPU architectures.</div><div>Leveraging runtime profiling to identify value-related inefficiencies is effective for optimizing GPU kernels, but it faces several challenges: (1) high profiling overhead, (2) limited analysis of inter-variable correlations, and (3) lack of automated optimization mechanisms.</div><div>In this paper, we propose a profile-guided optimization technique named ProSpec for GPU Kernel Specialization. It offloads profile collection to CPUs, analyzes inefficiency patterns dependent on multiple hot values, and generates optimization feedback for automatic kernel specialization.</div><div>The prototype of ProSpec, implemented over the LLVM infrastructure, is evaluated on the Rodinia and Polybench benchmarks. It achieves a maximum speedup of 5.619x and an average of 1.417x on optimized applications, maintaining a low profiling overhead of around 1.01x.</div><div>Compared to state-of-the-art methods, ProSpec leads in the number of improved kernels and further optimizes half of those already optimized by other tools.</div></div>\",\"PeriodicalId\":54983,\"journal\":{\"name\":\"Information and Software Technology\",\"volume\":\"188 \",\"pages\":\"Article 107901\"},\"PeriodicalIF\":4.3000,\"publicationDate\":\"2025-09-25\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Information and Software Technology\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/S095058492500240X\",\"RegionNum\":2,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q2\",\"JCRName\":\"COMPUTER SCIENCE, INFORMATION SYSTEMS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Information and Software Technology","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S095058492500240X","RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q2","JCRName":"COMPUTER SCIENCE, INFORMATION SYSTEMS","Score":null,"Total":0}
ProSpec: Profile-guided Specialization for GPU Kernels
General-purpose GPUs are widely used for computational acceleration in various fields. Designing high-performance GPU kernels is challenging due to dynamic kernel variables and complex GPU architectures.
Leveraging runtime profiling to identify value-related inefficiencies is effective for optimizing GPU kernels, but it faces several challenges: (1) high profiling overhead, (2) limited analysis of inter-variable correlations, and (3) lack of automated optimization mechanisms.
In this paper, we propose a profile-guided optimization technique named ProSpec for GPU Kernel Specialization. It offloads profile collection to CPUs, analyzes inefficiency patterns dependent on multiple hot values, and generates optimization feedback for automatic kernel specialization.
The prototype of ProSpec, implemented over the LLVM infrastructure, is evaluated on the Rodinia and Polybench benchmarks. It achieves a maximum speedup of 5.619x and an average of 1.417x on optimized applications, maintaining a low profiling overhead of around 1.01x.
Compared to state-of-the-art methods, ProSpec leads in the number of improved kernels and further optimizes half of those already optimized by other tools.
期刊介绍:
Information and Software Technology is the international archival journal focusing on research and experience that contributes to the improvement of software development practices. The journal''s scope includes methods and techniques to better engineer software and manage its development. Articles submitted for review should have a clear component of software engineering or address ways to improve the engineering and management of software development. Areas covered by the journal include:
• Software management, quality and metrics,
• Software processes,
• Software architecture, modelling, specification, design and programming
• Functional and non-functional software requirements
• Software testing and verification & validation
• Empirical studies of all aspects of engineering and managing software development
Short Communications is a new section dedicated to short papers addressing new ideas, controversial opinions, "Negative" results and much more. Read the Guide for authors for more information.
The journal encourages and welcomes submissions of systematic literature studies (reviews and maps) within the scope of the journal. Information and Software Technology is the premiere outlet for systematic literature studies in software engineering.