Hi!
I started learning programming opengl several weeks ago. With a strong java background it isn't that hard. Nonetheless I want to write efficient code. Thus i am looking for resources how to optimize for amd hawaii architecture. Any hints?
Thanks for any help and input.
Regards
Marcus-from-europe
Hi,
Also you can learn a lot from: http://developer.amd.com/wordpress/media/2013/07/AMD_Sea_Islands_Instruction_Set_Architecture.pdf
Some easy hints:
- Don't use more than 128 vector registers.
- Schedule at least 4x more workitems than the number of streams in the device.
- use 24bit integer math if it is possible
- ensure that the kernel code is not larger than 32KB (for the main loop.)
THANKS realhet!
Not specific to Hawaii, but see also OpenGL Programming Resourcesjust in case there's something generally useful.
Oups, I just mismatched OpenGL with OpenCL. :S
Hey guys! Thank you so far. I am looking for anything which is similar to this one here: http://amd-dev.wpengine.netdna-cdn.com/wordpress/media/2012/10/ATI_OpenGL_Programming_and_Optimizati...
Unfortunately the linked document is outdated and not specific to the actual gpu architecture...
Unfortunately, I'm not aware of anything specific that AMD has produced on this topic since the manual you cited, either generic or for the actual gpu architecture yo're interested in. I'll dig around, but a preliminary hunt has turned up nothing.
Thank you very much for your help. Maybe AMD will release some specific manuals as soon as Vulkan evolves.
Found something interesting here: http://amd-dev.wpengine.netdna-cdn.com/wordpress/media/2013/05/GCNPerformanceTweets.pdf
also here are the slides for GCN architecture crash curse
these are from Layla Mah (@MissQuickstep) | Twitter
AMD Graphics & VR Architect
he twited those on feb-12-2014
also Graham Sellers
Graham Sellers (@grahamsellers) | Twitter
he is the opengl guy on amd
and author of the book "opengl super bible"
twit him, maybe he answer your question more directly