Not a super technical answer but from what I've seen visually complete is a more 'accurate' form of the measure 'perceived render time' in that they are both trying to measure the same thing. Some of the differences include visually complete considers more criteria than perceived render time and makes use of more features for measuring such things available in modern browsers. It should be the time that the last 'visible element'' is loaded into the visible area of the page so it will exclude hidden elements and things outside of the main visible area of the page.
I checked and it looks like percieved render time is still present in 7.0 probably since existing dashboards and incidents may use it but in general it would be the better option to use visually complete if you are on 7+.
Here is the page for visually complete but it doesn't have much on how it is calculated:
Visually complete is a point-in-time metric that measures when the visual area of a page's content has finished loading while the perceived render time represents how long the initial visible page takes to load with usual text / image size ratios, this largely depends on the load time of the slowest image within the page's visible range.