کد مقاله کد نشریه سال انتشار مقاله انگلیسی نسخه تمام متن
431531 688570 2012 10 صفحه PDF دانلود رایگان
عنوان انگلیسی مقاله ISI
Data layout optimization for multi-valued containers in OpenCL
موضوعات مرتبط
مهندسی و علوم پایه مهندسی کامپیوتر نظریه محاسباتی و ریاضیات
پیش نمایش صفحه اول مقاله
Data layout optimization for multi-valued containers in OpenCL
چکیده انگلیسی

Scientific data is mostly multi-valued, e.g., coordinates, velocities, moments or feature components, and it comes in large quantities. The data layout of such containers has an enormous impact on the achieved performance, however, layout optimization is very time-consuming and error-prone because container access syntax in standard programming languages is not sufficiently abstract. This means that changing the data layout of a container necessitates syntax changes in all parts of the code where the container is used. Object oriented languages allow to solve this problem by hiding the data layout behind a class interface. However, the additional coding effort is enormous in comparison to a simple structure. A clever coding pattern, previously presented by the author, significantly reduces the code overhead, however, it relies heavily on advanced C++ features, a language that is not supported on most accelerators. This paper develops a concise macro based solution that requires only support for structures and unions and can therefore be utilized in OpenCL, a widely supported programming language for parallel processors. This enables the development of high performance code without an a-priori commitment to a certain layout and includes the possibility to optimize it subsequently. This feature is used to identify the best data layouts for different processing patterns of multi-valued containers on a multi-GPU system.


► A tool for easy switching between AoS and SoA data layouts.
► First solution without classes or templates, wide applicability through OpenCL.
► General vertical and horizontal parallelism in OpenCL kernels without vector syntax.
► Detailed performance analysis of sampling types and data layouts.

ناشر
Database: Elsevier - ScienceDirect (ساینس دایرکت)
Journal: Journal of Parallel and Distributed Computing - Volume 72, Issue 9, September 2012, Pages 1073–1082
نویسندگان
,