johnmccutchan@google.com
57ea35671c
Add getClassList RPC
...
BUG=
Review URL: https://codereview.chromium.org//895093002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43414 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 17:59:45 +00:00
johnmccutchan@google.com
172baa03ff
Service isolate rework take 2
...
Review URL: https://codereview.chromium.org//889443002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43306 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 18:31:27 +00:00
johnmccutchan@google.com
db271b0477
Revert r43217, r43215, r43208, r43207, and r43202.
...
Reverting because of some isolate spawn issues (on Windows, and pub bots).
Review URL: https://codereview.chromium.org//867113003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43219 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-27 22:56:18 +00:00
johnmccutchan@google.com
66aa470fc6
* Create vm-service isolate at Dart_Initialize time.
...
* Remove Service create callback.
* Simplify creation of service isolate.
* Creation is done on thread pool.
* Use vm-service isolate for loading in standalone embedder.
* Remove import of dart:io from builtin library.
performance changes:
no service isolate:
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:27 | 100% | +12363 | - 0]
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:27 | 100% | +12363 | - 0]
always start service isolate (as a thread pool task):
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:45 | 100% | +12363 | - 0]
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:44 | 100% | +12363 | - 0]
service does I/O (calls to Dart_LoadScript block until service is running):
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:55 | 100% | +12363 | - 0]
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:55 | 100% | +12363 | - 0]
R=asiva@google.com
Review URL: https://codereview.chromium.org//584023004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43202 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-27 19:45:48 +00:00
koda@google.com
d4481420e0
Copy-on-write class table for concurrent reading.
...
Make ClassTable::At thread safe by keeping old copies of the class table.
They can be safely deallocated during the stop-the-world phase of GC.
This avoids making a copy for every sweeper task, and is the first step towards removing the fake Isolate workaround.
R=iposva@google.com
Review URL: https://codereview.chromium.org//816773005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43048 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-21 18:13:12 +00:00
koda@google.com
f346d2ec7a
Fix allocation stats bug on ARM; add unit test.
...
Also add sanity checks to ClassHeapStats.
Array allocation stub was using an address instead of a size for the allocation size.
R=zra@google.com
Review URL: https://codereview.chromium.org//747463002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41862 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-20 19:20:17 +00:00
iposva@google.com
2ee3263277
- Add and enable concurrent sweeper.
...
- Keep separate lists for normal sized executable and data pages.
R=koda@google.com
Review URL: https://codereview.chromium.org//503363005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39593 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-27 13:37:55 +00:00
koda@google.com
015211b474
Track per-class promotion stats.
...
This will be useful for allocation policy and heap growth policy.
Also include these stats in the VM service.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//487973002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39415 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-20 17:57:12 +00:00
koda@google.com
bd979f84d5
Send allocation stats with each class and show in class view.
...
For each class, if there are any allocations, shows current number of instances, shallow size, and the already existing link for retained size.
Also refactor code in ClassTable to reduce duplication.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//345543003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37566 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-20 20:17:42 +00:00
johnmccutchan@google.com
452545ddcd
Visual refresh of allocation profile page
...
- Redo layout of page.
- Show human readable strings for used, free, and external memory for each space.
- Track time of last forced GC/accumulator reset in isolate and display them in allocation profile page.
- Track allocation statistics on Class object itself.
- Make isolate's heap reporting use heap's PrintToJSON.
- Manually insert allocation profile table rows into dom (removes usage of template repeat).
- Add some timing information to allocation profile page update (to help diagnose slow downs).
Other changes:
- Upgrade to Polymer 0.11-dev (finally ends erroneous console spam).
- Replace enteredView/leftView with attached/detached (polymer change).
- Add <link> tag to polymer.html for each element (polymer change).
- Move <script> tag outside of element (uniformity, clarity).
- Remove unused collapsible-content element.
R=koda@google.com
Review URL: https://codereview.chromium.org//342513004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37456 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-18 17:39:37 +00:00
turnidge@google.com
9243ffc4ff
Always use the same json for null in the vm service.
...
PrintToJSONStream -> PrintJSON.
ALSO:
Fix <em> tags in the Observatory.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//257053003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35532 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-29 18:10:02 +00:00
koda@google.com
00ae3f7848
Fix accumulated size stats for fixed-size instances.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//249843003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35321 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 18:17:03 +00:00
koda@google.com
f6fa809628
Check for class id overflow to exit rather than crash.
...
BUG=dart:18284
R=iposva@google.com , rmacnak@google.com
Review URL: https://codereview.chromium.org//243133004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35170 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-18 16:42:01 +00:00
koda@google.com
9a8671276b
Add class and address information to heap map; display on hover.
...
Display a string like "String @ 0xe97c3328" while hovering over the map.
Also add page separators (black).
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//204103009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34195 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-20 18:56:45 +00:00
johnmccutchan@google.com
6edd276df8
Switch Observatory to use only ServiceObject instances.
...
All fetched objects are upgraded to a ServiceObject.
ServiceObjectCache.
Uniform updating / refreshing.
Fix UTF8 string escaping in TextBuffer (should fix invalid character bug https://code.google.com/p/dart/issues/detail?id=16590 )
R=turnidge@google.com
Review URL: https://codereview.chromium.org//192443004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33541 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-11 17:48:09 +00:00
asiva@google.com
a01ab16991
1. When reading a full snapshot use the class id from the snapshot instead
...
of generating a new one. This ensures that assumptions made about the
class id when generating a snapshot will still hold in the version that
runs from a snapshot.
2. remove ObjectHistogram code as it is not used anymore and has been replaced
by VM service.
R=johnmccutchan@google.com , regis@google.com
Review URL: https://codereview.chromium.org//187133004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33340 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-05 19:24:02 +00:00
johnmccutchan@google.com
0f79171efb
Add user resetable accumulator to allocation profiler.
...
Display aggregate of new and old space in a separate table.
Speed up display of tables by 10x.
Fix heap display bug (heap stats were always for new space).
Keep sort across refreshes.
R=turnidge@google.com
Review URL: https://codereview.chromium.org//173013004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33220 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-03 15:39:06 +00:00
johnmccutchan@google.com
9ca09b50e7
Track live instance and allocation counts for classes.
...
R=iposva@google.com
Review URL: https://codereview.chromium.org//51653006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31978 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-22 19:21:22 +00:00
johnmccutchan@google.com
c86bdc5bcf
Expose field data, use class id, and merge all collections into "objects"
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//24075002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27684 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-20 00:59:42 +00:00
jacobr@google.com
605b33c1bc
fix cpp11 compile errors
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//23072026
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26387 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-20 20:24:11 +00:00
rmacnak@google.com
303a29b5ba
Move Null class out of the VM isolate.
...
BUG=http://dartbug.com/12071
BUG=http://dartbug.com/12128
BUG=http://dartbug.com/12319
BUG=http://dartbug.com/12337
R=iposva@google.com
Review URL: https://codereview.chromium.org//22638011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25982 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-09 21:54:30 +00:00
asiva@google.com
703bad2d2a
Revert change 23636 as it is causing issues on dartium. Will resubmit after investigating the dartium failure.
...
Review URL: https://codereview.chromium.org//16378004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23641 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-05 17:28:01 +00:00
asiva@google.com
bd14296eb7
Fix for issue 1755.
...
Use 'new' in all the snapshot reallocation functions instead of realloc.
This would result in program termination when allocation fails and will
ensure that a NULL will not be returned.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//16271010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23636 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-05 16:21:04 +00:00
iposva@google.com
6c4ac09cb9
- Remove heap tracing.
...
Review URL: https://codereview.chromium.org//14179015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21844 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-22 21:43:57 +00:00
cshapiro@google.com
49f6f9f36d
Merge the Merlin heap tracing to top-of-trunk.
...
Review URL: https://codereview.chromium.org//11428067
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16199 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-15 19:58:45 +00:00
cshapiro@google.com
da14bf70a7
Add attributions so printf like functions can have their arguments checked.
...
This change also corrects some misuses of format strings and format
arguments that discovered by the compiler checks.
Review URL: https://chromiumcodereview.appspot.com//10869063
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@11912 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-06 00:58:25 +00:00
regis@google.com
3790edb5e1
Move class hierarchy analysis to its own source.
...
Review URL: https://chromiumcodereview.appspot.com//10827450
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@11097 260f80e4-7a28-3924-810f-c04153c831b5
2012-08-21 21:09:28 +00:00
regis@google.com
34a5754f3e
Add HasSubclasses function to class hierarchy analysis.
...
Review URL: https://chromiumcodereview.appspot.com//10829446
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@11008 260f80e4-7a28-3924-810f-c04153c831b5
2012-08-21 00:16:46 +00:00
regis@google.com
fea5f83714
Implement class hierarchy analysis in the VM.
...
Add test.
Review URL: https://chromiumcodereview.appspot.com//10828399
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@11006 260f80e4-7a28-3924-810f-c04153c831b5
2012-08-20 23:38:09 +00:00
asiva@google.com
d4d781d636
- Unify class ids and snapshot object ids list so that we don't have disparate
...
and sometimes confusing values.
- Remove instance_kind_ field from RawClass.
- Rename all class id names to have a Cid suffix.
- Remove code from object.h and object_store.h which dealt with object ids
of predefined classes for snapshots.
Review URL: https://chromiumcodereview.appspot.com//10827209
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@10418 260f80e4-7a28-3924-810f-c04153c831b5
2012-08-08 19:46:23 +00:00
vegorov@google.com
00bd7303e5
Do not reuse tags_ field to store next_ pointer of FreeListElement.
...
Make tags_ field be valid (i.e. encode size and class id) for free list elements.
R=iposva@google.com
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10538022
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8437 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-08 13:11:11 +00:00
iposva@google.com
ff35c8a764
- Get handle vtable from a static table for predefined classes.
...
Review URL: https://chromiumcodereview.appspot.com//10540045
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8387 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-07 11:24:25 +00:00
iposva@google.com
bee192cbe4
- Rename class index to class id.
...
- Remove unused method.
Review URL: https://chromiumcodereview.appspot.com//10441111
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8148 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-31 12:41:37 +00:00
iposva@google.com
a59c00c448
- Grow the class table as needed instead of preallocating.
...
Review URL: https://chromiumcodereview.appspot.com//10311006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7235 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-02 13:22:02 +00:00
iposva@google.com
d8c7c1ada6
- Add a class index to the classes.
...
- Add a class table which assigns individual ids to classes.
Review URL: https://chromiumcodereview.appspot.com//9965042
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7183 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 09:20:40 +00:00