I am developing an application which runs pixel shaders on very large images. When I say 'very large' I mean sometimes 200 megapixels. They are photographic scans, from large format negatives. They are huge files.
When I run pixel shaders on these images, performance is very bad indeed, it's not really any better running shaders on my GTX 750 GPU than it is running them on the Core i5 CPU. I'm thinking that pixel shader performance in GPU should be better than on CPU perhaps?
Anyway, a 200MP image is 800MB of data, assuming 32 bit pixels (and sometimes they are 48 bit pixels!). So moving this image from main memory into graphics memory is not an insubstantial task, even for modern, fast PCIe 16x.
So, simple questions are, can I expect better performance from an AMD APU? With a hUMA architecture, there is no copying of the 800MB of data over the system bus, as GPU and CPU share the same memory.
Will .NET/WPF automatically use the capabilities of hUMA, or would it treat it like a regular GPU/CPU set up?
I don't own a AMD Kaveri system, but I'd certainly be interested if I can expect major performance differences.