- •1. Конструкторський розділ
- •1.1 Технологія OpenCl
- •1.2 Специфікація відеокарти Radeon hd 4850
- •1.3 Архітектура чіпу rv770
- •1.4 Мультипроцесор
- •2. Алгоритмічний розділ
- •2.1 Постановка завдання
- •2.2 Вибирання засобів розробки програмного забезпечення
- •2.3 Алгоритм
- •2.4 Збірка програмного забезпечення
- •3. Технологічний розділ
- •3.1 Опис алгоритму
- •4. Тестувальний розділ
- •4.1 Тестування програми
- •5. Висновок
- •6. Список літератури
4. Тестувальний розділ
4.1 Тестування програми
Рис.4.1. Результати операцій над векторами і матрицями.
На Рис.4.1. показано, що операції виконував графічний процесор, перший вивід це додавання матриці, другий віднімання, третій най триваліший це добуток матриць. Нижче наведені такі ж дії але з векторами.
5. Висновок
Завдання курсової роботи було виконано, але програма була написана на графічному процесорі Nvidia gts 450 gddr3, тому що в результаті роботи 4850 не витримала навантаження. В ході роботи було реалізовано наступні алгоритми:
1. Додавання векторів(двох одномірних масивів) на мові openCL C.
2. Віднімання векторів(двох одномірних масивів) на мові openCL C.
3. Множення вектора на вектор(двох одномірних масивів)в результаті одне число на мові openCL C.
4. Множення вектора на скаляр(одного одномірного вектору на число) на мові openCL C.
5. Додавання матриць(двовимірних масивів) на мові openCL C.
6. Віднімання матриць(двовимірних масивів) на мові openCL C.
7. Множення матриць(двовимірних масивів) на мові openCL C.
В результаті виконаної роботи можна зробити висновок, що за допомогою GPGPU процесорів з підтримкою OpenCL, обробка досить великих об’ємів математичних даних є набагато швидшою ніж на CPU процесорі. Такої швидкості нам вдалося досягти завдяки паралельній обробці даних, що використовується на GPU процесорі.
6. Список літератури
1. http://www.khronos.org/opencl.html
2. http://www.cmsoft.com.br.html
3. Т. Бадд Об'єктно - орієнтоване програмування в дії - СПб.: Пітер 1997. – 464с.
4. http://opengl.gamedev.ru.html
5. М. Ласло Обчіслювальна Геометрія та комп'ютерна Графіка на С - М.: БІНОМ, 1997. – 304с
6. http://www.nvidia.ru/object/cuda_opencl_new_ru.html
7. Стівен Прата Язик програмування С. Лекції і вправи - Київ: DiaSoft, 2000.
8. Джефф Элджер. C++: Библиотека программиста. – Пітер, 2000.
9. Т.А. Павловська Програмування на мові високого рівня C / С - Москва, Санкт - Петербург, Мінськ, Київ 2002. – 450 ст.
10. Г. Шилт Теорія і практика С – СПб.: BHV, 1996. – 416 с.
11. (http://www.nvidia.com/object/product-geforce-gts-450-us.html
12. http://opencl.ru/design.html