On Thursday, May 1, 2014 8:51:43 AM UTC-7, Maksym Kreshchuk wrote: > > I am porting Android 4.4 to OMAP4 platform. >
Hmm. > After some investigation I found out that DispSync model does a lot of > calculation on CPU. > It calls a few trig functions every once in a while. That shouldn't be "a lot". > For example, in case of videoplayback I got next results: > > 1. > > DispSync generates ~60 CPU interruption per second. It's ~15% of all > CPU interruptions. > 2. > > I changed HWC HAL to pass empty display retire fences to > SurfaceFlinger and DispSync. It led to disable DispSync model and hardware > vsync. And I got reduce by ~30% time when CPU works on high frequency. > > DispSync is essentially "software VSYNC". While things are actively animating, it will wake up at the same rate as the display refresh. When nothing is updating the screen, it won't do anything. It does not cause anything to stay awake. Are you playing video at 30fps? What are you using for your player? This means that when use DispSync model power consumption on CPU is > increased and as a result we have higher power consumption on SoC and on > the whole device. > I assume the increased power consumption is due to the power management software not slowing the clocks because it thinks the device is busy? I can't find information why DispSync was added(except commit message in > repository). Maybe i was searching not good enough. > > Please tell me about advantages of DispSync model. > Without it, SurfaceFlinger composition and app rendering are both triggered by VSYNC events. This results in a minimum of two frames of latency between app rendering and display update. DispSync allows events to be triggered "out of phase" with VSYNC, reducing the minimum latency to about 1.5 frames. This is useful when you're trying to make the app responsive to touch events. -- -- unsubscribe: android-porting+unsubscr...@googlegroups.com website: http://groups.google.com/group/android-porting --- You received this message because you are subscribed to the Google Groups "android-porting" group. To unsubscribe from this group and stop receiving emails from it, send an email to android-porting+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.