I am working on implementation of AES algorithm (ECB) in OpenCL. This is for my college diploma. So far I managed to implement AES in serial execution. And it is working very well. Now I need to transform that to work in parallel mode. I managed to build project and run it but it not calculating right.
I don’t know how to transform it work as fast as it can, to use all available thread on GPU.
Here is my source code. https://gist.github.com/bokibo/d8b4db599c15d7ffb97ccd542ce143d7
I have three file, aes.cpp the main file for project, device.cl is kernel file for parallel execution and const.h is header file for constants I used.
device.cl is file I need to change for encryption to work. Can someone explain me how to implement operations add round key, subbytes, mixcolumns in parallel mode?
I am reading how to multiple matrix in OpenCL, hope that will help me somehow.