I think setting it to 3.00 AM might be the issue here.
When the Performance Monitor is on, every hour, on the hour (as in exactly at X o’clock) it will run a background task to update its metadata and thus acquiring a metadata lock on the server (and possibly a read lock on the }Stats* objects).
From my experience, this background task can take up to 2-3 minutes to complete on large models - the task itself is invisible in TM1Top/Pulse, but you can see other tasks waiting for it.
Anyway, when this happens I suspect that Pulse might not “feel like” waiting that long and then fails to update the statistics.
Perhaps try setting the update time to 2:58 AM and see if it helps.