49796451cb9d1dae580618eb320ef3c5e6d90cd4 |
10-Aug-2016 |
Chih-Hung Hsieh <chh@google.com> |
Fix clang-tidy warnings in libs/hwui. * Add explicit keyword to conversion constructors. Bug: 28341362 * Use const reference type for read-only parameters. Bug: 30407689 Test: build with WITH_TIDY=1 Change-Id: Iab3e6636f60a70cb124f29dc19f20f842fa8dfda
askManager.h
|
05160d70d14180fef3782a63dff2e822b51c3cf5 |
22-Jul-2016 |
Chih-Hung Hsieh <chh@google.com> |
resolve merge conflicts of 5152fd9 to stage-aosp-master Change-Id: I2066125eb4076dbc9e8996bb1fa87735aa6040d3
|
faecb78a6b11c780db47bc940ca7662899ab5d5e |
21-Jul-2016 |
Chih-Hung Hsieh <chh@google.com> |
Fix google-explicit-constructor warnings in frameworks/base * Add explicit keyword to conversion constructors. * Add NOLINT to implicit conversion constructors. Bug: 28341362 Test: build with clang-tidy Change-Id: Ie4d37072ab57d1662d18db4de1c8577247f43337
arrier.h
uture.h
ignal.h
askManager.h
askProcessor.h
|
ded1d3c45be0307b175bd0cace12749e39814b84 |
03-May-2016 |
John Reck <jreck@google.com> |
Remove high-overhead low-signal trace section Bug: 28519669 This trace tag makes shadows look way more expensive than they actually are, particularly troublesome when tracing things with large number of shadows. Change-Id: Ib6558b1388edd4b006ec15127470cb9ab563f954
ask.h
|
38f6c034d153bb648d45bce09d80a69ba3e03360 |
17-Mar-2016 |
John Reck <jreck@google.com> |
Move updating window position off RT Bug: 27385141 Change-Id: I6c75b5f1d9ef55ef64dde050f71d0e28fb8714bf
arrier.h
|
b251a2f51e636d036598ad27473b9cc55fdac1d7 |
08-Feb-2016 |
Chris Craik <ccraik@google.com> |
Revert "Revert "TaskManager bench"" This reverts commit 9640477e3cc075b0f303e817a3ebcc72d7bc878b. Change-Id: I3aa8f2830b43b9c7b211c5792a311d0bc698c51a
askManager.cpp
askManager.h
|
9640477e3cc075b0f303e817a3ebcc72d7bc878b |
05-Feb-2016 |
Daniel Chapin <chapin@google.com> |
Revert "TaskManager bench" This reverts commit 02db03ca0584371504fd29ced77c00d601cb0971. Change-Id: I86bdf5e6774e99f9add59a657bfc50d45ebfda1d
askManager.cpp
askManager.h
|
02db03ca0584371504fd29ced77c00d601cb0971 |
04-Feb-2016 |
Chris Craik <ccraik@google.com> |
TaskManager bench bug:26964750 Change-Id: Ibda0cd2e5e64331a4367d4985d6acfd6f3baeda1
askManager.cpp
askManager.h
|
272a685f17cc4828257e521a6f62b7b17870f75e |
30-Jul-2015 |
John Reck <jreck@google.com> |
Replace most usages of utils/Vector.h Change-Id: I540d1b3523244d6c71fc52d6fb30555271c25644
askManager.cpp
askManager.h
|
c452654a4571ef010a00cef79f82b6b2179704f6 |
07-Jul-2015 |
John Reck <jreck@google.com> |
Restrict number of hwuiTask threads Bug: 22324907 Change-Id: I0013557ede15949a5bd6f3f75bc5dd023a9f945b
askManager.cpp
|
dee66b6d99dec8bc97843542d5388e50ebd0f6ee |
20-Apr-2015 |
Chris Craik <ccraik@google.com> |
Simplify TaskManager fallback path Change-Id: Ie3833449f7fe6aa69b9f71eb8bab1bef0fe434aa
askProcessor.h
|
bf29ee2a49cfa6e87e535dcb1476ff1336f8bdf9 |
24-Mar-2015 |
John Reck <jreck@google.com> |
Shave another 10us off of hwuitask pthread_cond_signal does not need the mutex to be held to signal. This results in the thread waking up trying to grab the lock, failing, the signaling thread to wake up, release the lock, immediately get preempted for the signaled thread which can now proceed. Release the mutex before signaling to avoid the ping-pong scheduling issue, which shaves another 10us off of this Change-Id: Ie6bccca031ba6528f357eae8352b74626a6318c7
ignal.h
|
815f2a093a4b44863fe9ffdb1986a2d5425ffef8 |
24-Mar-2015 |
John Reck <jreck@google.com> |
Shave 10us off of hwuitask This prevents an issue where if the signal schedules hwuiTask it will immediately block and go back to sleep due to mLock still being held. This costs 10us in thread scheduling ping-ponging bouncing between hwuiTask and RenderThread Change-Id: I47595c1bf5736576483a6aa7aada0b1be1e04268
askManager.cpp
|
3f5175fccd39c341064e8bd86cb03dba4bc6881c |
04-Feb-2015 |
John Reck <jreck@google.com> |
resolved conflicts for merge of c7e6b93a to master Change-Id: I4b791f37193727a0306214645f2f98cdf218cad0
|
5ad36d4591e7b3b1b74f0a213d18384f53734ab2 |
04-Feb-2015 |
John Reck <jreck@google.com> |
Merge "Fix ANR caused by hwuiTask thread"
|
026111bc56498d6ac463b335d91e2ee5e06901be |
28-Jan-2015 |
Yabin Cui <yabinc@google.com> |
am f7049289: am 3812e68e: Merge "kill HAVE_PTHREADS." automerge: 3a10a67 * commit '3a10a672f05735be46256617b8a61cdb1e589008': kill HAVE_PTHREADS.
|
1610486d371b867c0a842ede38e64774c18ba5d9 |
27-Jan-2015 |
Yabin Cui <yabinc@google.com> |
kill HAVE_PTHREADS. Bug: 19083585 Change-Id: Ib466949bb6cd6d1bbc4680e989f0f9fae62ca564
askManager.cpp
|
c3c58e015fa30a0ad87d4af2b95b7071baa8ffe4 |
12-Jan-2015 |
Sangkyu Lee <sk82.lee@lge.com> |
Fix ANR caused by hwuiTask thread If hwuiTask thread is exited while HWUI renders something, some tasks can remain unfinished forever. This can make ANR problem if RenderThread waits this kind of tasks. According to the current implementation, hwuiTask threads are exited when HWUI receives trimMemory() callback with level >= 20 and some applications such as SystemUI can receive trimMemory() with level >= 20 even though they renders something yet. (For instance, when RecentsActivity in SystemUI is finished, HWUI receives trimMemory() callback with level >= 20 but SystemUI should still render the status bar and navigation bar.) This patch prevents the tasks from remaining unfinished and make the tasks executed immediately if they cannot be added to their TaskProcessors. Change-Id: I5bd26439aa5f183b1a7c1ce466362e27554b4d16
askManager.cpp
askProcessor.h
|
e84a208317e0ed388fcdad1e6743c7849acb51b0 |
22-Dec-2014 |
Chris Craik <ccraik@google.com> |
Add overrides and switch to nullptr keyword Changes generated with clang-modernize. Additionally, fixed some struct-vs-class usage to make clang happy. Change-Id: Ic6ef2427401ff1e794d26f21f7b44868fc75fb72
askManager.h
askProcessor.h
|
21be43e142a6fcb3283d7b2da14eb39b690cf643 |
14-Aug-2014 |
John Reck <jreck@google.com> |
Fix hwuitask & RT priorities Bug: 15993695 Change-Id: Ib6f07237cb834e8d10f3074f8fb206d27f91859a
askManager.cpp
askManager.h
|
6ac174b97246ed40fe780b29561603b61770fa17 |
17-Jun-2014 |
Chris Craik <ccraik@google.com> |
Clean up tessellation cache in prep for other tesselation types bug:15536396 Also fixes compilation warning, avoids SkPaint deep copy Change-Id: I74334f08b1d34c6789aabf968ff62db5bacbed1b
ask.h
|
05f3d6e5111fd08df5cd9aae2c3d28399dc0e7f5 |
03-Jun-2014 |
Chris Craik <ccraik@google.com> |
Tessellate on worker threads Tessellate and cache (where possible) shadow and round rect tessellation tasks. Change-Id: I2cfda8e11d83d51ea74af871235cf26e8f831d40
askManager.cpp
|
0a8c51b1d0d66d6060afcec1eab33091d49332ae |
22-Aug-2013 |
Romain Guy <romainguy@google.com> |
Properly account for created paths in the cache Change-Id: I47b89b3085cefab6daac9194e7bfd3c140b37fa2
askManager.cpp
|
78dd96d5af20f489f0e8b288617d57774ec284f7 |
03-May-2013 |
Romain Guy <romainguy@google.com> |
Add an on-screen overdraw counter The counter can be enabled by setting the system property called debug.hwui.overdraw to the string "count". If the string is set to "show", overdraw will be highlighted on screen instead of printing out a simple counter. Change-Id: I9a9c970d54bffab43138bbb7682f6c04bc2c40bd
askManager.h
|
c5cbee7d78513527e89450e6369a30a04b2d5e7a |
21-Mar-2013 |
Romain Guy <romainguy@google.com> |
Stop worker threads on memory trim & fix bad pointer access Change-Id: I6fe7e31aeb6dd41fa65ab952caed97bc2da510d7
askManager.cpp
askManager.h
|
5dc7fa709646799a5207a5d217f70aa02bf4a3aa |
12-Mar-2013 |
Romain Guy <romainguy@google.com> |
Add TaskManager API This API can be used to run arbitrary tasks on a pool of worker threads. The number of threads is calculated based on the number of CPU cores available. The API is made of 3 classes: TaskManager Creates and manages the worker threads. Task Describes the work to be done and the type of the output. A task contains a future used to wait for the worker thread to be done computing the result of the task. TaskProcessor The processor dispatches tasks to the TaskManager and is responsible for performing the computation required by each task. A processor will only be asked to process tasks sent to the manager through the processor. A typical use case: class MyTask: Task<MyType> class MyProcessor: TaskProcessor<MyType> TaskManager m = new TaskManager(); MyProcessor p = new MyProcessor(m); MyTask t = new MyTask(); p.add(t); // Waits until the result is available MyType result = t->getResult(); Change-Id: I1fe845ba4c49bb0e1b0627ab147f9a861c8e0749
uture.h
ask.h
askManager.cpp
askManager.h
askProcessor.h
|
ca89e2a68703bd428e8b66547d033a6ed35b3595 |
09-Mar-2013 |
Romain Guy <romainguy@google.com> |
Precache paths from a worker thread Change-Id: I3e7b53d67e0e03e403beaf55c39350ead7f1e309
arrier.h
uture.h
ignal.h
|