|Summary:||Single corruption (artifacts) on engine reclocking|
|Product:||DRI||Reporter:||Rafał Miłecki <zajec5>|
|Component:||DRM/Radeon||Assignee:||Default DRI bug account <dri-devel>|
|Status:||NEW ---||QA Contact:|
|i915 platform:||i915 features:|
Description Rafał Miłecki 2010-01-31 09:17:09 UTC
Engine reclocking is too slow and so artifacts are visible when it happens. We need to make it faster.
Comment 1 Rafał Miłecki 2010-01-31 09:28:14 UTC
Created attachment 32948 [details] [review] Switch AtomBIOS parser to udelay Dave noticed we lost a lot of time when sleeping in AtomBIOS. Switching to udelay drastically improves this.
Comment 2 Rafał Miłecki 2010-01-31 09:30:52 UTC
Created attachment 32949 [details] [review] Switch engine clock setting to registers operations It may be good idea to perform sensible operations manually, without parsing AtomBIOS commands. Unfortunately it needs rewriting AtomBIOS code for each GPU generation.
Comment 3 Rafał Miłecki 2010-01-31 09:39:33 UTC
Created attachment 32950 [details] Full results of my speed test Currently reclocking engine takes averagely .005152s. That's way too long. Using Dave's patch I went down to averagely .000287s. With registers patch went down to averagely .000267s. Using both patches gave even nicer result: .000185s. Both + my patch hacked (to use "while" op): .000177s. In every case corruptions were gone. About hacked version of my patch, I switched to using "while" (just like AtomBIOS does) instead of waiting in "for" for bit in 0x600.