№ 25 (242), выпуск 9Страницы 52 - 63

Программирование графических процессов при помощи расширяемых языков

А.В. Адинец
В cтатье рассматривается система программирования ГПУ NUDA, созданная на основе расширяемого языка Nemerle. Она да'ет программисту контроль над процессом переноса программы на ГПУ, переложив механическую работу на компилятор. Макросы и аннотации облегчают перенос программ на ГПУ и повышают их производительность без ущерба для размера и читаемости исходного кода. На ряде архитектур ГПУ и задач удалось добиться повышения производительности в несколько раз по сравнению с исходным вариантом.
Полный текст
Ключевые слова
языки программирования, параллельное программирование, расширяемое программирование, метапрограммирование, графические процессоры, ГПУ.
Литература
1. TOP 500 List - November 2010. URL: http://top500.org/list/2010/11/100 (дата обращения 13.02.2011).
2. NVidia Corporation. NVidia CUDA C Programming Guide, Version 3.2.
3. Khronos Group. The OpenCL Specification, version 1.1, document revision 33. URL: http://www.khronos.org/registry/cl/specs/opencl-1.1.pdf (дата обращения 13.02.2011).
4. The Portland Group. PGI Accelerator Programming Model for Fortran & C, version 1.3. URL: http://www.pgroup.com/lit/whitepapers/pgi_accel_prog_model_1.3.pdf (дата обращения 13.02.2011).
5. Caps Enterprise. CAPS HMPP Workbench User Guide, version 2.3.1.
6. Wilson, G.V. Extensible Programming for the 21st Century / G.V. Wilson // ACM Queue. - January 2005. - V. 2. - P. 48 - 57.
7. Seibel, P. Practical Common Lisp / P. Seibel. - Apress, 2005.
8. Nemerle Homepage. URL: http://nemerle.org/ (дата обращения 13.02.2011).
9. Xoc, an extension-oriented compiler for systems programming / R. Cox, T. Bergan, A.T. Clements, F. Kaashoek, E. Kohler // Proceedings of the 13th international conference on Architectural support for programming languages and operating systems (ASPLOS XIII). - Washington, 2008. - P. 244 - 254.
10. Adinetz, A.V. NUDA Project web site / A.V. Adinetz, P. Shvets, V. Sitchikhin. - URL: http://nuda.sf.net/ (дата обращения 13.02.2011).