summaryrefslogtreecommitdiffstats
path: root/libs/hwui/Caches.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGESteve Block2012-01-061-1/+1
| | | | | | | See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
* Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGESteve Block2012-01-031-3/+3
| | | | | | | See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
* Properly restore the GL scissor after a GL draw functorRomain Guy2012-01-031-0/+4
| | | | | | Bug #5781254 Change-Id: I1dc4809563a793b6b579814951d4d73b4c34bf32
* Generate even fewer GL commandsRomain Guy2011-12-141-0/+13
| | | | Change-Id: I0f4dcacb03ef5ee7f6ebd501df98bfead5f0a7f8
* <Insert something improper about OpenGL>Romain Guy2011-12-131-0/+1
| | | | Change-Id: Ib645376093838156771588adc76a718da0ceb0db
* Further reduce the number of GL commands sent to the driverRomain Guy2011-12-131-0/+10
| | | | Change-Id: Id922b2a166ea4573b767c27d3195e11c70320b23
* Reduce the number of GL commands generated by the UIRomain Guy2011-12-131-2/+37
| | | | | | | | This optimization along with the previous one lets us render an application like Gmail using only 30% of the number of GL commands previously required Change-Id: Ifee63edaf495e04490b5abd5433bb9a07bc327a8
* Optimize state changesRomain Guy2011-12-121-4/+34
| | | | Change-Id: Iae59bc8dfd6427d0967472462cc1994987092827
* Terminate EGL when an app goes in the backgroundRomain Guy2011-11-101-9/+35
| | | | | | | | This does not happen on high end gfx devices. This happens only if only one EGL context is initialized in the current process. Change-Id: Ibd1737efdf84eef8a84108b05795440d1ae9964e
* Memory optimizations for libhwuiRomain Guy2011-11-041-0/+3
| | | | | | | | | | | Bug #5566149 Lazily initialize font renderers Keep 60% of the texture cache when an app goes to the background Delete least used font renderer when going to the background Delete all font renderers on full memory trim Change-Id: I3c2454d46dc1107ec0f0f72a9ce69cbbcc8825e7
* Reduce the amount of data cached by the gradients cache.Romain Guy2011-08-011-1/+0
| | | | Change-Id: I8546f5a5ecf38031c9a40bdcc434d4c7f22da63d
* Destroy layers and flush layers cache when a window is destroyed.Romain Guy2011-07-271-1/+3
| | | | Change-Id: I3fa1bc3ff50fb99e3d2e490925bd6b0a0f809fff
* Trim OpenGLRenderer's memory usage whenever possibleRomain Guy2011-07-181-0/+34
| | | | Change-Id: I9225077184f374b1a43300add15cc1d5b6869d1c
* Fix debugging for hwui cachesKenny Root2011-07-131-1/+0
| | | | | | | | | Debugging code attempted to delete a stack item. Also, the flag fields weren't exactly clear, so rewrite it so it's clear that kDebugMoreCaches is a combined flag. Change-Id: If42b7f0f754919343301da5656aee5943cc9bd4a
* Code cleanupRomain Guy2011-06-241-1/+1
| | | | Change-Id: I64c346004e0adf9a776d0315534d4fe445f0c0ca
* Prettify memory dump.Romain Guy2011-05-271-1/+1
| | | | Change-Id: I071c6a04a144a96955d85f56dffc6162288ee33e
* Add logging of graphics acceleration info to bugreportsChet Haase2011-04-011-18/+31
| | | | Change-Id: I9fa4cda6ccf92df9d1c644ccdc0e7274a30106e0
* Fixes cache misses and extra allocations.Romain Guy2011-02-031-0/+11
| | | | | | Bug #3421454 Change-Id: If4d5c960a7e4c581a9d213073e658284b4e1c497
* Allocate layers from the layers pool.Romain Guy2011-02-021-6/+2
| | | | | | | | | | | Bug #3413433 This change will be beneficial to Launcher to avoid hiccups when swiping pages of icons. When a layer is discarded, it is kept in the layers pool instead of being destroyed right away. This favors memory reuse over allocations. Change-Id: Ifb6944ba83d6ceb67c331527c0827b26ce648eb1
* Add rounded rects and circles support to OpenGLRenderer.Romain Guy2011-01-191-0/+4
| | | | Change-Id: I6cedf2b495d58de7c0437096809fa9e4518a1b8c
* Cleanup implementation of hardware layers.Romain Guy2011-01-131-17/+10
| | | | | | | | | | The new implementation relies on OpenGLRenderer's existing layer code instead of duplicating it. The new code is much cleaner, with simpler and better APIs and allows tracking of drawn regions inside layers. Region tracking is not yet enabled but this will be done in a future CL. Change-Id: Ie826121a2227de8252c77b992a61218defea5143
* Cleanup GL objects on the correct thread.Romain Guy2011-01-121-0/+26
| | | | Change-Id: Iddfea6e08a6591a4fab147151098ef27005f373d
* Composite layers as regions.Romain Guy2011-01-101-0/+4
| | | | | | | | | | This change detects what area of a layer was drawn into and generates a mesh to match this area exactly. This can be used to avoid blending empty pixels when the layer is composited. This change also adds proper layers support to lines rendering and implements layers composition in a more readable way. Change-Id: I4a5588b98b19bd66891ebdc39631b193c5e31999
* Free resources only from the GL context thread.Romain Guy2010-11-111-0/+10
| | | | | | | | | | Bug #3179882 Resources were freed following garbage collections on a worker thread. This worker thread had no EGL context, which would cause the renderer to incorrectly assume that the memory was liberated. Change-Id: Ifdb51f94ddf42641e8654522787bfac532976c7c
* Add new runtime debug flags.Romain Guy2010-11-101-0/+4
| | | | Change-Id: I07955de166a89b5053c6c13f250bb3e2936ca86e
* Move all debug flags in a single place.Romain Guy2010-11-101-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | This change also adds a new memory usage flag. When turned on, the following is printed after every frame: D/OpenGLRenderer( 3723): Current memory usage / total memory usage (bytes): D/OpenGLRenderer( 3723): TextureCache 3766680 / 20971520 D/OpenGLRenderer( 3723): LayerCache 3538944 / 8388608 D/OpenGLRenderer( 3723): GradientCache 135168 / 524288 D/OpenGLRenderer( 3723): PathCache 41180 / 4194304 D/OpenGLRenderer( 3723): TextDropShadowCache 0 / 2097152 D/OpenGLRenderer( 3723): FontRenderer 0 262144 / 262144 D/OpenGLRenderer( 3723): FontRenderer 1 262144 / 262144 D/OpenGLRenderer( 3723): FontRenderer 2 262144 / 262144 D/OpenGLRenderer( 3723): Other: D/OpenGLRenderer( 3723): FboCache 2 / 12 D/OpenGLRenderer( 3723): PatchCache 31 / 512 D/OpenGLRenderer( 3723): Total memory usage: D/OpenGLRenderer( 3723): 8268404 bytes, 7.89 MB This should help tracking possibe memory issues. Change-Id: I83f483ca1d2dbef904829bce368e33fe5503e8d6
* Optimize FBO drawing with regions.Romain Guy2010-11-021-9/+39
| | | | | | | | | This optimization is currently disabled until Launcher is modified to take advantage of it. The optimization can be enabled by turning on RENDER_LAYERS_AS_REGIONS in the OpenGLRenderer.h file. Change-Id: I2fdf59d0f4dc690a3d7f712173ab8db3848b27b1
* Remove unnecessary GL calls.Romain Guy2010-10-261-0/+2
| | | | | | | This change batches calls to glScissor() and removes extra GL queries and glActiveTexture() calls. Change-Id: I1cd079d314f87cd9c088f95c8d4909c2f860f6aa
* Small cleanup.Romain Guy2010-10-251-5/+5
| | | | | | | Removes unnecessary forward class declaration, make Caches::currentBuffer private instead of public. Change-Id: Idba6325c8c602d89239e667cb8ec87e7943f8e75
* Fix Caches singleton to avoid resource leaksChet Haase2010-10-241-0/+77
The declaration of Singleton objects must be in CPP files (not header files) to avoid creating separate instances of what is supposedly a single object. Change-Id: Ie903384824a458b5572f3ce5b6cfb359c18a9c44