Nowadays, GPU accelerators are commonly used to speed up general-purpose computing tasks on a variety of hardware. However, due to the diversity of GPU architectures and processed data, optimization of codes for a particular type of hardware and specific data characteristics can be extremely challenging. The autotuning of performance-relevant source-code parameters allows for automatic optimization of applications and keeps their performance portable. Although the autotuning process typically results in code speed-up, searching the tuning space can bring unacceptable overhead if (i) the tuning space is vast and full of poorly-performing implementations, or (ii) the autotuning process has to be repeated frequently because of changes in processed data or migration to different hardware. In this paper, we introduce a novel method for searching tuning spaces. The method takes advantage of collecting hardware performance counters (also known as profiling counters) during empirical tuning. Those counters are used to navigate the searching process towards faster implementations. The method requires the tuning space to be sampled on any GPU. It builds a problem-specific model, which can be used during autotuning on various, even previously unseen inputs or GPUs. Using a set of five benchmarks, we experimentally demonstrate that our method can speed up autotuning when an application needs to be ported to different hardware or when it needs to process data with different characteristics. We also compared our method to state of the art and show that our method is superior in terms of the number of searching steps and typically outperforms other searches in terms of convergence time.


翻译:目前,通常使用 GPU 加速器来加速各种硬件的通用计算任务。然而,由于 GPU 架构和处理过的数据的多样性,对特定类型硬件和具体数据特性的代码进行优化可能极具挑战性。 与性能相关的源代码参数的自动调整允许自动优化应用程序,并保持其可移植性能。 虽然自动调试过程通常导致代码速度加快,但如果(一) 调试空间广而满是不良执行,或者(二) 由于处理过的数据或向不同硬件迁移的变化,自动调试过程必须经常重复。 在本文件中,我们引入了一种搜索空间和特定硬件特性的新型方法。在实验性调整期间,该方法利用硬件性能计数器(也称为剖析反)来收集应用应用软件的自动优化。该方法需要将调控件空间抽查到任何 GPUPU 上,或者 (二) 建立问题性能调控件模型,在对各种时间进行自动调时可以使用, 将先前的输入或GPUPL 的精度调整过程比, 当我们的数据调速度需要用五种不同的方法来显示我们不同的硬件的方法时, 。使用该方法来显示我们不同的硬件的系统的方法, 。

0
下载
关闭预览

相关内容

【NeurIPS 2020】大规模分布式鲁棒优化方法
专知会员服务
26+阅读 · 2020年10月13日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
79+阅读 · 2020年7月26日
因果图,Causal Graphs,52页ppt
专知会员服务
249+阅读 · 2020年4月19日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
41+阅读 · 2019年10月9日
CCF推荐 | 国际会议信息10条
Call4Papers
8+阅读 · 2019年5月27日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
逆强化学习-学习人先验的动机
CreateAMind
16+阅读 · 2019年1月18日
强化学习的Unsupervised Meta-Learning
CreateAMind
18+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
meta learning 17年:MAML SNAIL
CreateAMind
11+阅读 · 2019年1月2日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
【推荐】RNN/LSTM时序预测
机器学习研究会
25+阅读 · 2017年9月8日
【学习】Hierarchical Softmax
机器学习研究会
4+阅读 · 2017年8月6日
Arxiv
0+阅读 · 2021年4月4日
Linear Systems can be Hard to Learn
Arxiv
0+阅读 · 2021年4月2日
Meta-Learning with Implicit Gradients
Arxiv
13+阅读 · 2019年9月10日
Arxiv
26+阅读 · 2019年3月5日
Meta-Learning with Latent Embedding Optimization
Arxiv
6+阅读 · 2018年7月16日
VIP会员
相关资讯
CCF推荐 | 国际会议信息10条
Call4Papers
8+阅读 · 2019年5月27日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
逆强化学习-学习人先验的动机
CreateAMind
16+阅读 · 2019年1月18日
强化学习的Unsupervised Meta-Learning
CreateAMind
18+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
meta learning 17年:MAML SNAIL
CreateAMind
11+阅读 · 2019年1月2日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
【推荐】RNN/LSTM时序预测
机器学习研究会
25+阅读 · 2017年9月8日
【学习】Hierarchical Softmax
机器学习研究会
4+阅读 · 2017年8月6日
Top
微信扫码咨询专知VIP会员