In a recent video on Sebs FinTech he interviewed the developer of lolminer (Lolliedieb) and went over how exactly the 100% LHR unlock works. He explains that this wasn't done through black magic like how nicehash had hinted at earlier this week, but had to do with the Nvidia Driver leak. Many miners are now incorporating this unlock in their software including NBMiner, T-Rex Miner, NiceHash and lolminer.
The Previous Unlocks:
The previous unlocks would jump between clocks to help prevent the tripping of the LHR driver and would average the hash rate out. The jumping between clocks or changing the GPU load would help trick the GPU into thinking it wasn't mining a crypto algorithm. Many developers spent a lot of time fine tuning this to find the best mix between high hash rate and low hash rate points to get a better average using counters. These counters would tick down and dictate at what speeds the cards were mining at.
What was discovered:
In the leaked portion of the drivers it was discovered that the internal parameters such as how much memory access can we have and how much can we mine were hard coded into the drivers. This LHR controller was put in place like many other Nvidia controllers that are inside of the drivers like the controller for thermal throttling. These controllers have certain routines that they follow to override the base driver and make changes based on the data they were monitoring. However if these default parameters were changed the Nvidia driver would just hang. But if the default values were sent back to the driver then the LHR countdown would not start. The GPU sees everything as normal and just carries on. So if we are mining and then call the Nvidia driver using the default parameters then the counter essentially resets and the lock never gets put into place.
The Simple Breakdown:
The LHR control module is looking for patterns in the memory being accessed. When it starts to notice a pattern similar to ETH then it starts a countdown. Once this countdown hits 0 the LHR controller function gets put into place and then limits the memory access. If the values inside of the driver were changed then the driver would hang and do absolutely nothing. However if the same default values for the GPU were sent back to the driver then the counter would reset.