The power management code in the proprietary driver is huge - maybe 4x the size of the entire open source graphics stack. It's not written so that you can just take pieces out of it, unfortunately.
We realized a couple of years into the program that power management was going to be a big task, so we set an initial goal of making sure that drivers allowed users to trade off power draw vs performance, using hardware that was relatively common from one generation to the next. That's what the current PM code does, along with an initial attempt at dynamic power switching. There are a number of improvements which could be made using information that is already publicly available, but there hasn't been a lot of community interest in doing that work.
We probably need 10x the current effort to get to the next level. We have started some work internally, but it will take time.
In the meantime, previous posts suggest that Qaridarium has been tasked with improving the current power management code
We realized a couple of years into the program that power management was going to be a big task, so we set an initial goal of making sure that drivers allowed users to trade off power draw vs performance, using hardware that was relatively common from one generation to the next. That's what the current PM code does, along with an initial attempt at dynamic power switching. There are a number of improvements which could be made using information that is already publicly available, but there hasn't been a lot of community interest in doing that work.
We probably need 10x the current effort to get to the next level. We have started some work internally, but it will take time.
In the meantime, previous posts suggest that Qaridarium has been tasked with improving the current power management code
Comment