diff options
author | primiano@chromium.org <primiano@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-07-22 07:40:52 +0000 |
---|---|---|
committer | primiano@chromium.org <primiano@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-07-22 07:40:52 +0000 |
commit | bbd151d93cbe95f5c4110ea30e501771497c0294 (patch) | |
tree | df4286d2d0096b1c4d7d98e43fbad473bd591f13 /tools/deep_memory_profiler | |
parent | a7097a656664177b9de0d2b6c44d4533f1a804dc (diff) | |
download | chromium_src-bbd151d93cbe95f5c4110ea30e501771497c0294.zip chromium_src-bbd151d93cbe95f5c4110ea30e501771497c0294.tar.gz chromium_src-bbd151d93cbe95f5c4110ea30e501771497c0294.tar.bz2 |
Adding android.webview policy to deep memory profiler.
This change basically introduce a new DMP profile which is merging
android.browser and android.renderer rules, in order to be used
for single-process WebView instances.
NOTRY=true
Review URL: https://chromiumcodereview.appspot.com/19541008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212848 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/deep_memory_profiler')
-rw-r--r-- | tools/deep_memory_profiler/policies.json | 4 | ||||
-rw-r--r-- | tools/deep_memory_profiler/policy.android.webview.json | 639 |
2 files changed, 643 insertions, 0 deletions
diff --git a/tools/deep_memory_profiler/policies.json b/tools/deep_memory_profiler/policies.json index 753ac3a..775045a 100644 --- a/tools/deep_memory_profiler/policies.json +++ b/tools/deep_memory_profiler/policies.json @@ -7,6 +7,10 @@ "file": "policy.android.renderer.json", "format": "json" }, + "android.webview": { + "file": "policy.android.webview.json", + "format": "json" + }, "sourcefile": { "file": "policy.sourcefile.json", "format": "json" diff --git a/tools/deep_memory_profiler/policy.android.webview.json b/tools/deep_memory_profiler/policy.android.webview.json new file mode 100644 index 0000000..d3611ce --- /dev/null +++ b/tools/deep_memory_profiler/policy.android.webview.json @@ -0,0 +1,639 @@ +{ + "components": [ + "second", + "mmap-profiler", + "mmap-type-profiler", + "mmap-tcmalloc", + "FROM_HERE_FOR_TOTAL", + "mustbezero", + "unhooked-absent", + "unhooked-ashmem-dalvik-heap", + "unhooked-ashmem-dalvik-LinearAlloc", + "unhooked-ashmem-dalvik-aux-structure", + "unhooked-ashmem-dalvik-bitmap", + "unhooked-ashmem-dalvik-other", + "unhooked-pvrsrvkm", + "unhooked-system-dex", + "unhooked-chrome-dex", + "unhooked-other-ashmem", + "unhooked-anonymous", + "unhooked-file-exec-lib-chrome", + "unhooked-file-exec", + "unhooked-file-nonexec-lib-chrome", + "unhooked-file-nonexec", + "unhooked-stack", + "unhooked-other", + "no-bucket", + "mmap-v8-heap-newspace", + "mmap-v8-heap-coderange", + "mmap-v8-heap-pagedspace", + "mmap-v8-other", + "mmap-gpu-mappedmemorymanager", + "mmap-gpu-command-ringbuffer", + "mmap-gpu-transfer-ringbuffer", + "mmap-gpu-gles2-createbuffer", + "mmap-skia-font", + "mmap-catch-all", + "tc-disk_cache-backing", + "tc-disk_cache-other", + "tc-sqlite3MemAlloc", + "tc-angle", + "tc-crypto", + "tc-net-iobuffer", + "tc-stl-string", + "tc-stl-rbtree", + "tc-stl-vector", + "tc-stl-hashtable", + "tc-stl-node", + "tc-webcore-fontcache", + "tc-skia", + "tc-renderobject", + "tc-renderstyle", + "tc-webcore-sharedbuf", + "tc-webcore-XHRcreate", + "tc-webcore-XHRreceived", + "tc-webcore-docwriter-add", + "tc-webcore-node-and-doc", + "tc-webcore-node-factory", + "tc-webcore-element-wrapper", + "tc-webcore-stylepropertyset", + "tc-webcore-style-createsheet", + "tc-webcore-cachedresource", + "tc-webcore-script-execute", + "tc-webcore-events-related", + "tc-webcore-document-write", + "tc-webcore-node-create-renderer", + "tc-webcore-render-catch-all", + "tc-webcore-setInnerHTML-except-node", + "tc-wtf-StringImpl-user-catch-all", + "tc-wtf-HashTable-user-catch-all", + "tc-webcore-everything-create", + "tc-webkit-from-v8-catch-all", + "tc-webkit-catch-all", + "tc-v8-catch-all", + "tc-toplevel-string", + "tc-std-treemap", + "tc-std-hashmap", + "tc-std-vector", + "tc-std-other", + "tc-catch-all", + "tc-unused", + "UNTIL_HERE_FOR_TOTAL", + "total-exclude-profiler", + "total", + "absent", + "anonymous", + "file-exec", + "file-nonexec", + "stack", + "other", + "mmap-total-log", + "mmap-no-log", + "mmap-total-record", + "other-total-log", + "tc-total-log", + "tc-no-log", + "tc-total-record", + "tc-total" + ], + "rules": [ + { + "name": "second", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "mmap-profiler", + "stacktrace": ".*(ProfilerMalloc|MemoryRegionMap::).*", + "allocator": "mmap" + }, + { + "name": "mmap-type-profiler", + "stacktrace": ".*(TypeProfilerMalloc).*", + "allocator": "mmap" + }, + { + "name": "mmap-tcmalloc", + "stacktrace": ".*(DoAllocWithArena|SbrkSysAllocator::Alloc|MmapSysAllocator::Alloc|LowLevelAlloc::Alloc|LowLevelAlloc::AllocWithArena).*", + "allocator": "mmap" + }, + { + "name": "FROM_HERE_FOR_TOTAL", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "mustbezero", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "unhooked-absent", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "unhooked-ashmem-dalvik-heap", + "mappedpathname": "/dev/ashmem/dalvik-heap.*", + "allocator": "unhooked" + }, + { + "name": "unhooked-ashmem-dalvik-LinearAlloc", + "mappedpathname": "/dev/ashmem/dalvik-LinearAlloc.*", + "allocator": "unhooked" + }, + { + "name": "unhooked-ashmem-dalvik-aux-structure", + "mappedpathname": "/dev/ashmem/dalvik-aux-structure.*", + "allocator": "unhooked" + }, + { + "name": "unhooked-ashmem-dalvik-bitmap", + "mappedpathname": "/dev/ashmem/dalvik-bitmap.*", + "allocator": "unhooked" + }, + { + "name": "unhooked-ashmem-dalvik-other", + "mappedpathname": "/dev/ashmem/dalvik.*", + "allocator": "unhooked" + }, + { + "name": "unhooked-pvrsrvkm", + "mappedpathname": "/dev/pvrsrvkm.*", + "allocator": "unhooked" + }, + { + "name": "unhooked-system-dex", + "mappedpathname": "/data/dalvik-cache/system.*.dex.*", + "allocator": "unhooked" + }, + { + "name": "unhooked-chrome-dex", + "mappedpathname": "^/.*?(chrome|content).*?apk@classes.dex", + "allocator": "unhooked" + }, + { + "name": "unhooked-other-ashmem", + "mappedpathname": "/dev/ashmem/.*", + "allocator": "unhooked" + }, + { + "name": "unhooked-anonymous", + "mappedpathname": "^$", + "allocator": "unhooked" + }, + { + "name": "unhooked-file-exec-lib-chrome", + "mappedpathname": "^/.*?(chromeview|content).*", + "mappedpermission": "..x.", + "allocator": "unhooked" + }, + { + "name": "unhooked-file-exec", + "mappedpathname": "^/.*", + "mappedpermission": "..x.", + "allocator": "unhooked" + }, + { + "name": "unhooked-file-nonexec-lib-chrome", + "mappedpathname": "^/.*?(chromeview|content).*", + "allocator": "unhooked" + }, + { + "name": "unhooked-file-nonexec", + "mappedpathname": "^/.*", + "allocator": "unhooked" + }, + { + "name": "unhooked-stack", + "mappedpathname": ".stack.", + "allocator": "unhooked" + }, + { + "name": "unhooked-other", + "mappedpathname": ".*", + "allocator": "unhooked" + }, + { + "name": "mmap-v8-heap-newspace", + "stacktrace": ".*v8::internal::NewSpace::SetUp.*", + "allocator": "mmap" + }, + { + "name": "mmap-v8-heap-coderange", + "stacktrace": ".*v8::internal::CodeRange::SetUp.*", + "allocator": "mmap" + }, + { + "name": "mmap-v8-heap-pagedspace", + "stacktrace": ".*v8::internal::PagedSpace::AllocateRaw.*", + "allocator": "mmap" + }, + { + "name": "mmap-v8-other", + "stacktrace": ".*v8::.*", + "allocator": "mmap" + }, + { + "name": "mmap-gpu-mappedmemorymanager", + "stacktrace": ".*gpu::MappedMemoryManager::Alloc.*", + "allocator": "mmap" + }, + { + "name": "mmap-gpu-command-ringbuffer", + "stacktrace": ".*gpu::CommandBufferHelper::AllocateRingBuffer.*", + "allocator": "mmap" + }, + { + "name": "mmap-gpu-transfer-ringbuffer", + "stacktrace": ".*gpu::TransferBuffer::AllocateRingBuffer.*", + "allocator": "mmap" + }, + { + "name": "mmap-gpu-gles2-createbuffer", + "stacktrace": ".*gpu::gles2::BufferTracker::CreateBuffer.*", + "allocator": "mmap" + }, + { + "name": "mmap-skia-font", + "stacktrace": ".*SkTypeface::openStream.*", + "allocator": "mmap" + }, + { + "name": "mmap-catch-all", + "stacktrace": ".*", + "allocator": "mmap" + }, + { + "name": "tc-disk_cache-backing", + "stacktrace": ".*disk_cache::BackendImpl::InitBackingStore.*", + "allocator": "malloc" + }, + { + "name": "tc-disk_cache-other", + "stacktrace": ".*disk_cache::.*", + "allocator": "malloc" + }, + { + "name": "tc-sqlite3MemAlloc", + "stacktrace": ".*sqlite3MemMalloc.*", + "allocator": "malloc" + }, + { + "name": "tc-angle", + "stacktrace": ".*TPoolAllocator::allocate.*", + "allocator": "malloc" + }, + { + "name": "tc-crypto", + "stacktrace": ".*(CRYPTO_malloc|CRYPTO_realloc).*", + "allocator": "malloc" + }, + { + "name": "tc-net-iobuffer", + "stacktrace": ".*net::IOBuffer::IOBuffer.*", + "allocator": "malloc" + }, + { + "name": "tc-stl-string", + "stacktrace": ".*std::basic_string::.*", + "allocator": "malloc" + }, + { + "name": "tc-stl-rbtree", + "stacktrace": ".*std::priv::_Rb_tree::.*", + "allocator": "malloc" + }, + { + "name": "tc-stl-vector", + "stacktrace": ".*std::priv::_Impl_vector::.*", + "allocator": "malloc" + }, + { + "name": "tc-stl-hashtable", + "stacktrace": ".*std::hashtable::.*", + "allocator": "malloc" + }, + { + "name": "tc-stl-node", + "stacktrace": ".*std::priv::_Impl_vector::.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-fontcache", + "stacktrace": ".*WebCore::FontCache::getCachedFontData.*", + "allocator": "malloc" + }, + { + "name": "tc-skia", + "stacktrace": ".* Sk[A-Za-z_]+::.*", + "allocator": "malloc" + }, + { + "name": "tc-renderobject", + "stacktrace": ".*WebCore::RenderArena::allocate.*", + "allocator": "malloc" + }, + { + "name": "tc-renderstyle", + "stacktrace": ".*WebCore::RenderStyle::create.*", + "allocator": "malloc" + }, + { + "name": "tc-renderstyle", + "stacktrace": ".*WebCore::RenderStyle::clone.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-sharedbuf", + "stacktrace": ".*WebCore::SharedBuffer::create.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-sharedbuf", + "stacktrace": ".*WebCore::SharedBuffer::buffer.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-sharedbuf", + "stacktrace": ".*WebCore::SharedBuffer::append.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-XHRcreate", + "stacktrace": ".*WebCore::XMLHttpRequest::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-XHRreceived", + "stacktrace": ".*WebCore::XMLHttpRequest::didReceiveData.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-docwriter-add", + "stacktrace": ".*WebCore::DocumentWriter::addData.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-node-and-doc", + "stacktrace": ".*WebCore::HTML[a-zA-Z0-9_]*Element::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-node-and-doc", + "stacktrace": ".*WebCore::Text::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-node-and-doc", + "stacktrace": ".*WebCore::Comment::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-node-and-doc", + "stacktrace": ".*WebCore::HTMLDocument::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-node-and-doc", + "stacktrace": ".*WebCore::CSSStyleRule::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-node-and-doc", + "stacktrace": ".*WebCore::Attribute::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-node-and-doc", + "stacktrace": ".*WebCore::DOMWindow::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-node-factory", + "stacktrace": ".*WebCore::HTML[a-zA-Z0-9_]*Factory::create[a-zA-Z0-9_]*Element.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-element-wrapper", + "stacktrace": ".*WebCore::createHTML[a-zA-Z0-9_]*ElementWrapper.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-stylepropertyset", + "stacktrace": ".*WebCore::StylePropertySet::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-style-createsheet", + "stacktrace": ".*WebCore::StyleElement::createSheet.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-cachedresource", + "stacktrace": ".*WebCore::CachedResource::data .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-cachedresource", + "stacktrace": ".*WebCore::CachedResource::load .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-script-execute", + "stacktrace": ".*WebCore::ScriptElement::execute.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-events-related", + "stacktrace": ".*WebCore::createAttributeEventListener.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-events-related", + "stacktrace": ".*WebCore::V8LazyEventListener::create.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-events-related", + "stacktrace": ".*WebCore::V8EventListener::create.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-events-related", + "stacktrace": ".*WebCore::Event::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-events-related", + "stacktrace": ".*WebCore::EventListener::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-document-write", + "stacktrace": ".*WebCore::Document::write.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-node-create-renderer", + "stacktrace": ".*WebCore::Node::createRendererIfNeeded.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-render-catch-all", + "stacktrace": ".*WebCore::RenderLayer.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-render-catch-all", + "stacktrace": ".*WebCore::RenderBlock.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-render-catch-all", + "stacktrace": ".*WebCore::RenderWidget.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-render-catch-all", + "stacktrace": ".*WebCore::RenderView.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-render-catch-all", + "stacktrace": ".*WebCore::RenderViewImpl.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-render-catch-all", + "stacktrace": ".*WebCore::RenderStyle.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-render-catch-all", + "stacktrace": ".*WebCore::RenderText.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-render-catch-all", + "stacktrace": ".* RendererMain .*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-setInnerHTML-except-node", + "stacktrace": ".*WebCore::HTMLElement::setInnerHTML.*", + "allocator": "malloc" + }, + { + "name": "tc-wtf-StringImpl-user-catch-all", + "stacktrace": ".*WTF::StringImpl::create .*", + "allocator": "malloc" + }, + { + "name": "tc-wtf-StringImpl-user-catch-all", + "stacktrace": ".*WTF::StringImpl::createUninitialized.*", + "allocator": "malloc" + }, + { + "name": "tc-wtf-HashTable-user-catch-all", + "stacktrace": ".*WTF::HashTable::allocateTable.*", + "allocator": "malloc" + }, + { + "name": "tc-webcore-everything-create", + "stacktrace": ".*WebCore::[a-zA-Z0-9_]*::create .*", + "allocator": "malloc" + }, + { + "name": "tc-webkit-from-v8-catch-all", + "stacktrace": ".*(WTF::|WebCore::|WebKit::).*v8::.*", + "allocator": "malloc" + }, + { + "name": "tc-webkit-catch-all", + "stacktrace": ".*(WTF::|WebCore::|WebKit::).*", + "allocator": "malloc" + }, + { + "name": "tc-v8-catch-all", + "stacktrace": ".*v8::.*", + "allocator": "malloc" + }, + { + "name": "tc-toplevel-string", + "stacktrace": "std::basic_string::_Rep::_S_create", + "allocator": "malloc" + }, + { + "name": "tc-std-treemap", + "stacktrace": ".*::allocate std::(_Rb_tree|__1::__tree).*", + "allocator": "malloc" + }, + { + "name": "tc-std-hashmap", + "stacktrace": ".*(std::vector::reserve __gnu_cxx::hashtable|::allocate std::_Hashtable|::allocate std::__1::__hash_table).*", + "allocator": "malloc" + }, + { + "name": "tc-std-vector", + "stacktrace": ".*std::(_Vector_base::_M_allocate|__1::vector::allocate).*", + "allocator": "malloc" + }, + { + "name": "tc-std-other", + "stacktrace": ".*(__gnu_cxx::new_allocator::allocate|std::__1::allocator::allocate).*", + "allocator": "malloc" + }, + { + "name": "tc-catch-all", + "stacktrace": ".*", + "allocator": "malloc" + }, + { + "name": "UNTIL_HERE_FOR_TOTAL", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "total-exclude-profiler", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "total", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "absent", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "anonymous", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "file-exec", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "file-nonexec", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "stack", + "stacktrace": "optional", + "allocator": "optional" + }, + { + "name": "other", + "stacktrace": "optional", + "allocator": "optional" + } + ], + "version": "POLICY_DEEP_3" +} |