mirror of
https://github.com/wolfpld/tracy.git
synced 2024-11-10 02:31:48 +00:00
Document AMD GPUs power saving issues.
This commit is contained in:
parent
6819c28bcb
commit
5994629ccd
@ -1486,6 +1486,8 @@ The profiling results you will get can be unreliable or plainly wrong. It all de
|
||||
|
||||
For example, on Linux, the Intel GPU driver will report 64-bit precision of time stamps. Unfortunately, this is not true, as the driver will only provide timestamps with 36-bit precision, rolling over the exceeding values. Tracy can detect such problems and employ workarounds. This is, sadly, not enough to make the readings reliable, as this timer we can access through the API is not a real one. Deep down, the driver has access to the actual timer, which it uses to provide the virtual values we can get. Unfortunately, this hardware timer has a period which \emph{does not match} the period of the API timer. As a result, the virtual timer will sometimes overflow \emph{in midst} of a cycle, making the reported time values jump forward. This is a problem that only the driver vendor can fix.
|
||||
|
||||
Another problem discovered on AMD GPUs under Linux causes the timestamp register to be reset every time the GPU enters a low-power mode. This can happen virtually every frame if you are rendering with vertical synchronization disabled. Needless to say, the timestamp data is not very useful in this case. The solution to this problem is to navigate to the \texttt{/sys/devices/pci*/*/*/} directory corresponding to the GPU and set the \texttt{power\_dpm\_force\_performance\_level} value to \texttt{manual} and the \texttt{pp\_power\_profile\_mode} value to the number corresponding to the \texttt{COMPUTE} profile. Your mileage may vary, however -- on my system I only have one of these values available to set. Nevertheless, you will find a similar solution suggested by the system vendor in a Direct3D 12 section later in the manual.
|
||||
|
||||
If you experience crippling problems while profiling the GPU, you might get better results with a different driver, different operating system, or different hardware.
|
||||
\end{bclogo}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user