We propose a GPU fine-grained load-balancing abstraction that decouples load balancing from work processing and aims to support both static and dynamic schedules with a programmable interface to implement new load-balancing schedules. Prior to our work, the only way to unleash the GPU's potential on irregular problems has been to workload-balance through application-specific, tightly coupled load-balancing techniques. With our open-source framework for load-balancing, we hope to improve programmers' productivity when developing irregular-parallel algorithms on the GPU, and also improve the overall performance characteristics for such applications by allowing a quick path to experimentation with a variety of existing load-balancing techniques. Consequently, we also hope that by separating the concerns of load-balancing from work processing within our abstraction, managing and extending existing code to future architectures becomes easier.
翻译:我们建议采用GPU微微重力平衡负载的抽象方法,这种方法可以使负载平衡与工作处理平衡,并旨在支持静态和动态时间表,同时提供可编程的界面,以实施新的负载平衡时间表。在我们工作之前,释放GPU在非正常问题上的潜力的唯一办法是通过具体应用、紧密结合的负载平衡技术实现工作量平衡。有了我们的负载平衡开放源框架,我们希望在开发GPU的不规则平行算法时提高程序员的生产率,并通过利用现有各种平载技术快速进行实验来改善这些应用的总体性能特征。因此,我们还希望通过将负担平衡的关切与我们抽象的处理工作分开,将现有的代码管理并扩展至未来的结构会更容易。