summaryrefslogtreecommitdiffstats
path: root/runtime/thread_pool.h
Commit message (Collapse)AuthorAgeFilesLines
* Enable annotalysis on clang ART builds.Ian Rogers2014-03-061-1/+0
| | | | | | | | | | | Fix clang build errors aswell as restructure locking/mutex code for correct thread safety analysis support. Reorder make dependencies so that host builds build first as they should provide better compilation errors than target. Remove host's use of -fno-omit-frame-pointer as it has no value with correct use of CFI, which we should have. Change-Id: I72cea8da9a3757b1a0b3acb4081feccb7c6cef90
* Manually manage thread pool stacks.Mathieu Chartier2013-11-131-4/+7
| | | | | | | | | | | | We now allocate the thread pool worker stack using a MemMap. This enables us to name the maps so that we get more descriptive output for debugging leaks. Appears to fix the mips build 5/5 successful clean-oat and builds. This is probably since glibc caches up to 40 MB of thread stacks before releasing them. Change-Id: I1df2de50cb95838aa0d272a09807021404ba410c
* Add more runtime options.Mathieu Chartier2013-08-211-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed HeapGCThreads to be split into two different options: -XX:ParallelGCThreads: Which specifies how many threads the GC may use when the mutators are suspended. -XX:ConcGCThreads: Which specifies how many threads the GC may use when the mutators are running. Added runtime options to specify long pause / long GC thresholds: -XX:LongPauseThreshold (default 5ms) -XX:LongGCThreshold (default 100ms) These thresholds were previously constants, but are now runtime options. If we exceed either of the thresholds, we print the GC message. Added a new runtime option: -XX:IgnoreMaxFootprint which makes it that the GC only does GC when the number of bytes allocated hits the growth limit. This causes GC to occur much less frequently and can be useful to measure how much of an impact GC has on performance. Changed the GC behaviour to use only one thread when we do not care about pauses to prevent jank that can be caused by 2 simultaneous GC on different processes fighting for CPU time. Added thread pool functionality for changing the maximum number of active workers. Fixed an accounting error where we didn't count large objects in the total freed. Bug: 9986416 Change-Id: I86afa358d93dcd3780e18ac5d85bdb1a130cb7e7
* Fix up TODO: c++0x, update cpplint.Mathieu Chartier2013-08-161-0/+3
| | | | | | | | | | | | Needed to update cpplint to handle const auto. Fixed a few cpplint errors that were being missed before. Replaced most of the TODO c++0x with ranged based loops. Loops which do not have a descriptive container name have a concrete type instead of auto. Change-Id: Id7cc0f27030f56057c544e94277300b3f298c9c5
* Fixing cpplint whitespace/blank_line, whitespace/end_of_line, ↵Brian Carlstrom2013-07-181-1/+1
| | | | | | whitespace/labels, whitespace/semicolon issues Change-Id: Ide4f8ea608338b3fed528de7582cfeb2011997b6
* Fix cpplint whitespace/blank_line issuesBrian Carlstrom2013-07-181-3/+1
| | | | Change-Id: Ice937e95e23dd622c17054551d4ae4cebd0ef8a2
* Fix cpplint runtime/explicit issuesBrian Carlstrom2013-07-171-2/+2
| | | | Change-Id: I352ba0b427f1ff9b22887693952b180eae0839ba
* Fix multiple inclusion guards to match new pathnamesBrian Carlstrom2013-07-171-3/+3
| | | | Change-Id: Id7735be1d75bc315733b1773fba45c1deb8ace43
* Create separate Android.mk for main build targetsBrian Carlstrom2013-07-121-0/+180
The runtime, compiler, dex2oat, and oatdump now are in seperate trees to prevent dependency creep. They can now be individually built without rebuilding the rest of the art projects. dalvikvm and jdwpspy were already this way. Builds in the art directory should behave as before, building everything including tests. Change-Id: Ic6b1151e5ed0f823c3dd301afd2b13eb2d8feb81