DGS while idle runs dgsCoreRender every frame. This should be unnecesary, since no DGS elements are on screen or even loaded.
You can check this by opening a clean server, starting DGS and IPB and search Lua timing (option d).

This should not be the case. Unless there is a DGS element created or something like debugdgs enabled, there should be no onClientRender or onClientPreRender functions running. They should be added after a DGS element has been created, or even better, when a DGS element is being rendered. This will make DGS perform MUCH better while is not loaded.
On high FPS it can lead for up to 1.5% CPU usage (AMD Ryzen 5 2600 on Windows 10), while on low FPS it gets like 0.4-0.5% CPU usage.
DGS while idle runs
dgsCoreRenderevery frame. This should be unnecesary, since no DGS elements are on screen or even loaded.You can check this by opening a clean server, starting DGS and IPB and search Lua timing (option d).
This should not be the case. Unless there is a DGS element created or something like
debugdgsenabled, there should be noonClientRenderoronClientPreRenderfunctions running. They should be added after a DGS element has been created, or even better, when a DGS element is being rendered. This will make DGS perform MUCH better while is not loaded.On high FPS it can lead for up to 1.5% CPU usage (AMD Ryzen 5 2600 on Windows 10), while on low FPS it gets like 0.4-0.5% CPU usage.