AnsweredAssumed Answered

gpu reset , within apu, A8-5500, linux

Question asked by atomicwobble on Jan 5, 2016
Latest reply on Jan 14, 2016 by atomicwobble

Hello All,


This a question about whether it is possible to restart the GPU within an A8-5500 (Radeon HD 7560D), if the bios does not dealt with it. This is an HP P7-1414 and they nobbled it to prevent using the iGPU and external PCIe together, and that is plain annoying. This is Linux, but I imagine this might help some Mac and Win folks too.


The machine is old so I'm happy to hack it. I managed to wake up the GPU interface (setpci -d 1022:1410 7C.l=0) before boot, and the PCI address 0:0:1 appears with a completely unknown PCI id (1022:1411), and the assignment of a PCI-PCI bridge. Clearly this is the logic that is the gatekeeper for the integrated package. The kernel will only go so far before it complains about an invalid bus (clearly, 2 buses no devices!). See Below.



lspci -H1 -t

pcilib: Bus 00 seen twice (firmware bug). Ignored.




           |            \-00.1








My goal is simply to use the GPU for calculations (~400Gflops?), so I'm not at all bothered about graphics. I'm *specifically* interested in comparing the performance over the integrated buses vs remote device (I have a Quadro plugged in remote, similar maths capability). The latency in particular.


I'm assuming that the wakeup protocol is probably in the display drivers, but I would appreciate some guidance if this is the right mechanism, or if there is a proper engineering guidance. I understand the value 7C.l=0x39d5e86b will reset  the Radeon ASIC, but I wonder if that's all that's needed, as flipping bit 0 is needed to make the GFX active again? This is from before the boot...


If this is not a fruitful line of investigation, because it may get roadblocked later on...I would appreciate a heads up!!


But it seems such a nice design to have the GPU so close to the CPU, as some calculations could benefit from this.