The work objective is to study the effect of the graphical processor unit computational cores load level and memory access pattern on the memory bus bandwidth and scaling acceleration. The research subject is the problem of scalability of the parallel computing performance and acceleration. The following hypothesis is checked: while processing images for multi-core shared-memory systems, Gustafson – Barsis’s law is more crucial than the memory access template at the underloading of the GPU cores. The research methodology is a computational experiment with further analysis of the obtained results. The conclusions are as follows. The suggested hypothesis is proved. For that, a series of experiments on various heterogeneous computational systems with OpenCL standard support is conducted. The application field of the results obtained includes the development of algorithms and software for the highly parallel computer systems. The memory access template starts to place certain restrictions on the algorithm efficiency only when the load level of the computa-tional cores is sufficient. Video cards with the private memory show more stable results in comparison to those which share memory with the central processing unit.
GPGPU, memory access pattern, OpenCL.
В настоящее время признано, что графические процессоры (graphical processing unit — GPU) явля-ются мощным инструментом решения задач, хорошо поддающихся распараллеливанию (General-purpose computing for graphics processing units, GPGPU — неспециализированные вычисления на графических процессорах). Однако лишь малая часть существующего программного обеспечения эффективно использует мощности графических процессоров.
В качестве причин могут быть названы относительная новизна (широкое распространение технологии GPGPU получили в 2008–2010 гг.) и существенное архитектурное отличие от процессоров приложений (большее количество ядер,малый суммарный объем кэш-памяти).
1. OpenCL Programming Guide for the CUDA Architecture. NVIDIA corporation. Santa Clara: NVIDIA, 200, 60 p.
2. AMD Accelerated Parallel Processing OpenCL Programming Guide. Advanced Micro Devices. Sunnyvale: ADM, 2013, 294 p.
3. Mali T600 Series OpenCL GPU Developer Guide. ARM. Available at: http://infocenter.arm.com/help/topic/com.arm.doc.dui0538e/DUI0538E_mali_t600_opencl_dg.pdf (accessed: 16.04.16).
4. Sukhinov, А.I. Dvumernye skhemy rasshchepleniya i nekotorye ikh prilozheniya. [Two-dimensional splitting schemes and some of their applications.] Moscow: MAKS Press, 2005, 408 p. (in Russian).
5. Nikolayev, I.A., Sukhinov, А.I., Kharina, O.D. O rasparallelivanii treugol´nykh iteratsionnykh metodov na spetsi-alizirovannoy mnogoprotsessornoy sisteme. [On parallel application of triangular iterative methods in a special-purpose multi-processor system.] Avtomatika i Telemekhanika, 1986, iss. 5, pp. 135-142 (in Russian). 6. Sukhinov, А.I. Lokal´no-dvumernye skhemy dlya resheniya mnogomernykh parabolicheskikh uravneniy na vychislitel´nykh sistemakh matrichnogo tipa. [Locally two-dimensional schemes for solving multidimensional parabolic equa-tions in computer systems of matrix type.] Izvestiya VUZ. Matematika, 1984, no. 11, pp. 45-53 (in Russian).
6. Padua, D., ed. Encyclopedia of Parallel Computing. New York: Springer, 2011, 2176 p.
7. Quinn, M.-J. Parallel Programming in C with MPI and OpenMP. New York: McGraw-Hill, 2003, 516 p.
8. AMD Graphic Core Next. Advanced Micro Devices. AMD Fusion Developer Summit 2013. Available at: http://developer.amd.com/wordpress/media/2013/06/2620_final.pdf (accessed 16.04.16).
9. Global Internet Phenomena Report. Sandvine. Available at: https://www.sandvine.com/trends/global-internet-phenomena/ (accessed: 16.04.16).