A few months ago I finished my bachelor thesis at the Chair for Computer Architecture and Parallel Processing at KIT. My task was to find a way to get a memory pattern of a given OpenCL kernel program for one of many OpenCL devices. The result is a static kernel code analyser which gives you an abstract pattern of reads and writes for each bit of the memory.
I published my source code under GPLv3 licence on GitHub. Additionaly you can download my bachelor thesis and the appertaining presentation in German.
But you can also download the files here: