- 18 Oct, 2018 1 commit
-
-
Alexei Filippov authored
Make heap profiler provide information about each sample currently alive. That information can be used to build diagrams of memory allocations over time. BUG=chromium:889545 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ibcbe2f5302263d0b3976ee4cd3601eff11375cae Reviewed-on: https://chromium-review.googlesource.com/c/1285130 Commit-Queue: Alexei Filippov <alph@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#56793}
-
- 08 Oct, 2018 1 commit
-
-
Alexei Filippov authored
Change-Id: I8843796be4a9da39fad96150593837189e452c07 Reviewed-on: https://chromium-review.googlesource.com/c/1262997Reviewed-by:
Ali Ijaz Sheikh <ofrobots@google.com> Commit-Queue: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#56450}
-
- 03 Oct, 2018 1 commit
-
-
Alexei Filippov authored
unordered_map is supposedly faster on deleting items. BUG=chromium:889545 Change-Id: Id92d9d663e8b9ab2978b8016ef5dccfc93dc104e Reviewed-on: https://chromium-review.googlesource.com/1255554Reviewed-by:
Ali Ijaz Sheikh <ofrobots@google.com> Commit-Queue: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#56354}
-
- 24 Jul, 2018 1 commit
-
-
Ross Mcilroy authored
Mark/IsIndependent is marked V8_DEPRECATE_SOON, but is still needed in some places. In order to allow us to warn on V8_DEPRECATE_SOON within V8, explicity disable deprecation warnings on these calls temporarily. BUG=v8:7754 Change-Id: I0a7f3aedc04412c120217ba83d2cf91aafff568d Reviewed-on: https://chromium-review.googlesource.com/1147751 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#54670}
-
- 23 Jul, 2018 1 commit
-
-
Stephan Herhut authored
api.h had an implicit dependency on objects-inl.h. Bug: v8:7490 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I56ef7abefed7205bdbff2aa5f451f1a843bef9f9 Reviewed-on: https://chromium-review.googlesource.com/1145191Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Stephan Herhut <herhut@chromium.org> Cr-Commit-Position: refs/heads/master@{#54616}
-
- 11 Jun, 2018 1 commit
-
-
Leszek Swirski authored
Whenever an Isolate is available on a variable, field, or method parameter, use that instead of GetIsolate(). Also convert simple cases of the one-argument handle constructor to either use an available Isolate, or use GetIsolate() if their first parameter is a variable. Bug: v8:7786 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I52805905a9ca8729615ead78859f43d5e8f605f1 Reviewed-on: https://chromium-review.googlesource.com/1092853 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53629}
-
- 04 Jun, 2018 1 commit
-
-
Ulan Degenbaev authored
This reverts 667555c6. This is a short-term fix for NodeJS regression caused by Scavenger not collecting weak handles that are marked as independent. Bug: chromium:847863, chromium:780749 Change-Id: Ia1c02e042d0e593c6f5badb82c4ef20b923d3806 Reviewed-on: https://chromium-review.googlesource.com/1082442Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#53502}
-
- 24 May, 2018 1 commit
-
-
Peter Marshall authored
This distinction doesn't matter, they aren't treated any differently to other strings. Change-Id: I524a0a1c4089284af97aa507afc5bd5985fe6631 Reviewed-on: https://chromium-review.googlesource.com/1071628Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#53329}
-
- 16 Mar, 2018 1 commit
-
-
Camillo Bruni authored
This CL ads a StartPosition and EndPosition accessors on SFI and ScopeInfo to facilitate future refactoring. In a future CL the start and end position are no longer stored directly on SFIs. This CL will temporarily increase memory since the position info is duplicated on the SFI and the ScopeInfo. Drive-by-fix: Clean up some constants in ScopeInfo Bug: v8:7066 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I1a8c5dd4e2156c007e04d92e72e478b915516e0d Reviewed-on: https://chromium-review.googlesource.com/955629Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#51987}
-
- 12 Feb, 2018 1 commit
-
-
Franziska Hinkelmann authored
Change-Id: Ic0e513e61e3bd1a8ac8f06a1f81c27d35a7d29af Reviewed-on: https://chromium-review.googlesource.com/911249Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Franziska Hinkelmann <franzih@chromium.org> Cr-Commit-Position: refs/heads/master@{#51253}
-
- 22 Jan, 2018 1 commit
-
-
Ali Ijaz Sheikh authored
Deoptimization may materialize values on the heap, which may get sampled by the heap profiler. Such samples have imprecise stack. Indicate this. BUG=v8:7314 Change-Id: I21ab079c36fc0492b05b546cc1d6a8e6c042aeb8 Reviewed-on: https://chromium-review.googlesource.com/877119 Commit-Queue: Ali Ijaz Sheikh <ofrobots@google.com> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#50775}
-
- 19 Jan, 2018 1 commit
-
-
Mike Stanton authored
Samples taken during deoptimization require care in the stack walk used to gather frames. The top N stack frames may not have JSFunction objects in place, because those frames represent inlined functions which may not have closures yet. Bug: v8:7314 Change-Id: Ib6488aee46a47d5341cab1b1c9c3851592ba6509 Reviewed-on: https://chromium-review.googlesource.com/870036 Commit-Queue: Ali Ijaz Sheikh <ofrobots@google.com> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ali Ijaz Sheikh <ofrobots@google.com> Cr-Commit-Position: refs/heads/master@{#50732}
-
- 04 Dec, 2017 1 commit
-
-
Michal Majewski authored
Bug: v8:6972 Change-Id: I3f5f2d5ebba3eaddd9e5390b7f299cdbc192ba6e Reviewed-on: https://chromium-review.googlesource.com/801714Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michał Majewski <majeski@google.com> Cr-Commit-Position: refs/heads/master@{#49823}
-
- 09 Nov, 2017 1 commit
-
-
Michael Lippautz authored
Removes the handling of the flag independent. The flag will be removed in a followup. The patch changes handling of V8::PersistentBase that are set to Weak: - The Scavenger ignores the flag independent. - The Scavenger keeps alive anything that is marked as Active. - The Scavenger is free to drop weak handles of non-Active object if they are otherwise dead. Active: - Any JSObject will always be marked Active. - Any JSApiObject will be marked Active if it has been modified (=has elements, properties, etc.) CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel Bug: chromium:780749 Change-Id: If1f547f2419930ad9400bd3b11bdbf609cb57649 Reviewed-on: https://chromium-review.googlesource.com/741801 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Kentaro Hara <haraken@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#49277}
-
- 18 Oct, 2017 1 commit
-
-
Clemens Hammacher authored
This CL fixes all occurences that don't require special OWNER reviews, or can be reviewed by Michi. After this one, we should be able to reenable the readability/check cpplint check. R=mstarzinger@chromium.org Bug: v8:6837, v8:6921 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: Ic81d68d5534eaa795b7197fed5c41ed158361d62 Reviewed-on: https://chromium-review.googlesource.com/721120 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#48670}
-
- 10 Aug, 2017 1 commit
-
-
Leszek Swirski authored
Rather than lumping in parsing, bytecode compilation and optimized compilation all into the same VM "compile" state, seperate them out into individual states. Additionally, add support for these states to tickprocessor and profview. Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I5be943e23cae042e32e9ccb24415c67c18658b4b Reviewed-on: https://chromium-review.googlesource.com/608973 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#47283}
-
- 11 Nov, 2016 1 commit
-
-
ulan authored
BUG=v8:5614 Review-Url: https://codereview.chromium.org/2496913002 Cr-Commit-Position: refs/heads/master@{#40931}
-
- 07 Sep, 2016 1 commit
-
-
ulan authored
Now callers of Heap::CollectGarbage* functions need to specify the reason as an enum value instead of a string. Subsequent CL will add stats counter for GC reason. BUG= Review-Url: https://codereview.chromium.org/2310143002 Cr-Commit-Position: refs/heads/master@{#39239}
-
- 10 Jun, 2016 1 commit
-
-
bmeurer authored
This switches Math.log to use an fdlibm based version of log, imported as base::ieee754::log, and use that consistently everywhere, i.e. change the Float64Log TurboFan operators on Intel to use the C++ implementation as well (same for Crankshaft). R=yangguo@chromium.org BUG=v8:5065,v8:5086 Review-Url: https://codereview.chromium.org/2053893003 Cr-Commit-Position: refs/heads/master@{#36880}
-
- 13 May, 2016 1 commit
-
-
alph authored
Review-Url: https://codereview.chromium.org/1967673002 Cr-Commit-Position: refs/heads/master@{#36253}
-
- 06 May, 2016 2 commits
-
-
alph authored
Review-Url: https://codereview.chromium.org/1952753003 Cr-Commit-Position: refs/heads/master@{#36085}
-
clemensh authored
This changes different locations to extract the reference to the wasm object and the function index from the stack trace, and make it available through all the APIs which process stack traces. The javascript CallSite object now has the new methods isWasm(), getWasmObject() and getWasmFunctionIndex(); the byte offset is available via getPosition(). Function names of wasm frames should be fully functional with this commit, position information works reliably for calls, but not for traps like unreachable or out-of-bounds accesses. R=titzer@chromium.org, yangguo@chromium.org Review-Url: https://codereview.chromium.org/1909353002 Cr-Commit-Position: refs/heads/master@{#36067}
-
- 04 May, 2016 2 commits
-
-
alph authored
BUG=v8:4959 LOG=N Review-Url: https://codereview.chromium.org/1949693003 Cr-Commit-Position: refs/heads/master@{#36042}
-
ofrobots authored
Sampling heap profiler keeps weak references. These should be marked independent so that the weak callback can be dispatched on new space collections. BUG=v8:4959 LOG=N R=ulan@chromium.org Review-Url: https://codereview.chromium.org/1945193002 Cr-Commit-Position: refs/heads/master@{#36012}
-
- 28 Apr, 2016 2 commits
-
-
alph authored
Review-Url: https://codereview.chromium.org/1919223003 Cr-Commit-Position: refs/heads/master@{#35884}
-
alph authored
Do not hold bare pointers to scripts during sampling heap tree construction, as string conversions may lead to an allocation that in turn could cause GC which renders all pointers invalid. Review-Url: https://codereview.chromium.org/1929813002 Cr-Commit-Position: refs/heads/master@{#35883}
-
- 06 Apr, 2016 2 commits
-
-
mattloring authored
If no objects allocated at a location are live when a profile is collected we report a zero count sample. This is confusing to those looking at the profiles and will leak memory. We now delete allocations once the number of sampled live objects for that location reaches zero. R=ofrobots@google.com BUG= Review URL: https://codereview.chromium.org/1828333002 Cr-Commit-Position: refs/heads/master@{#35305}
-
clemensh authored
This particularly changes the StackTraceFrameIterator such that is not only returs JavaScriptFrames, but also WasmFrames. Because of that, some methods (Summarize, function, receiver) were pulled up to the StandardFrame, with specializations in JavaScriptFrame and WasmFrame. R=jfb@chromium.org, titzer@chromium.org BUG= Review URL: https://codereview.chromium.org/1861283002 Cr-Commit-Position: refs/heads/master@{#35293}
-
- 31 Mar, 2016 1 commit
-
-
mattloring authored
If a script is unloaded between the collection of an allocation and the tranlation of an allocation profile, the profiler will segfault. With this change, we report unloaded scripts as having no line number,column number, or name. R=ofrobots@google.com BUG= Review URL: https://codereview.chromium.org/1846723002 Cr-Commit-Position: refs/heads/master@{#35147}
-
- 24 Mar, 2016 1 commit
-
-
alph authored
It might happen a script is gone during profiling. Handle that case. Review URL: https://codereview.chromium.org/1826953003 Cr-Commit-Position: refs/heads/master@{#35052}
-
- 25 Feb, 2016 2 commits
-
-
mattloring authored
It is possible for JS objects to be allocated while we are retrieving the profile. These JS objects can in turn end up getting sampled by the profiler. Adding these to the profile data structures invalidates the iterators that are presently in flight. This change prevents such concurrent modifications from affecting the retrieve operation. BUG= Review URL: https://codereview.chromium.org/1735733002 Cr-Commit-Position: refs/heads/master@{#34298}
-
ulan authored
BUG=chromium:589413 LOG=NO Review URL: https://codereview.chromium.org/1733333002 Cr-Commit-Position: refs/heads/master@{#34295}
-
- 24 Feb, 2016 1 commit
-
-
mattloring authored
Implements poisson unsampling. A poisson process is used to determine which samples to collect based on a sample rate. Unsampling will approximate the true number of allocations at each site taking into account that smaller allocations are less likley to be sampled. This work was originally being done in the agent that consumes profiles but it is more efficient to do it here and individual consumers of the API should not have to worry about the mathematical details of the sampling process. R=ofrobots@google.com BUG= Review URL: https://codereview.chromium.org/1706343002 Cr-Commit-Position: refs/heads/master@{#34234}
-
- 19 Feb, 2016 2 commits
-
-
mattloring authored
R=ofrobots@google.com BUG= Review URL: https://codereview.chromium.org/1712893002 Cr-Commit-Position: refs/heads/master@{#34161}
-
machenbach authored
Reland of Sampling heap profiler data structure changes (patchset #1 id:1 of https://codereview.chromium.org/1708363002/ ) Reason for revert: Failure keeps lurking around after the revert. I'll reland, sorry for the inconvenience! Original issue's description: > Revert of Sampling heap profiler data structure changes (patchset #10 id:180001 of https://codereview.chromium.org/1697903002/ ) > > Reason for revert: > [Sheriff] Speculative revert for cpu profiler crashes on chromebooks: > https://build.chromium.org/p/client.v8/builders/V8%20Arm%20-%20debug/builds/549 > https://build.chromium.org/p/client.v8/builders/V8%20Arm%20-%20debug/builds/550 > > Original issue's description: > > Sampling heap profiler data structure changes > > > > Previously, the sampling heap profiler stored a list of samples and then > > built a tree representation when the profile was queried by calling > > GetAllocationProfile. This change reduces duplication by removing stacks > > from all samples. Also, less information is stored in the tree > > maintained by the profiler and remaining information (script name, line > > no, etc) is resolved when a profile is requested. > > > > BUG= > > > > Committed: https://crrev.com/cdd55e2a3717723492d76f66810bf56b8de7f198 > > Cr-Commit-Position: refs/heads/master@{#34119} > > TBR=ofrobots@google.com,ulan@chromium.org,hpayer@chromium.org,mattloring@google.com > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG= > > Committed: https://crrev.com/4578e52aefb8c4727742ce2e254613e482fdad1f > Cr-Commit-Position: refs/heads/master@{#34128} TBR=ofrobots@google.com,ulan@chromium.org,hpayer@chromium.org,mattloring@google.com # Skipping CQ checks because original CL landed less than 1 days ago. Review URL: https://codereview.chromium.org/1714493003 Cr-Commit-Position: refs/heads/master@{#34140}
-
- 18 Feb, 2016 3 commits
-
-
machenbach authored
Revert of Sampling heap profiler data structure changes (patchset #10 id:180001 of https://codereview.chromium.org/1697903002/ ) Reason for revert: [Sheriff] Speculative revert for cpu profiler crashes on chromebooks: https://build.chromium.org/p/client.v8/builders/V8%20Arm%20-%20debug/builds/549 https://build.chromium.org/p/client.v8/builders/V8%20Arm%20-%20debug/builds/550 Original issue's description: > Sampling heap profiler data structure changes > > Previously, the sampling heap profiler stored a list of samples and then > built a tree representation when the profile was queried by calling > GetAllocationProfile. This change reduces duplication by removing stacks > from all samples. Also, less information is stored in the tree > maintained by the profiler and remaining information (script name, line > no, etc) is resolved when a profile is requested. > > BUG= > > Committed: https://crrev.com/cdd55e2a3717723492d76f66810bf56b8de7f198 > Cr-Commit-Position: refs/heads/master@{#34119} TBR=ofrobots@google.com,ulan@chromium.org,hpayer@chromium.org,mattloring@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1708363002 Cr-Commit-Position: refs/heads/master@{#34128}
-
mattloring authored
Previously, the sampling heap profiler stored a list of samples and then built a tree representation when the profile was queried by calling GetAllocationProfile. This change reduces duplication by removing stacks from all samples. Also, less information is stored in the tree maintained by the profiler and remaining information (script name, line no, etc) is resolved when a profile is requested. BUG= Review URL: https://codereview.chromium.org/1697903002 Cr-Commit-Position: refs/heads/master@{#34119}
-
ahaas authored
The BufferedRawMachineAssemblerTester caused problems for the Int64Lowering. Instead we construct a TF graph now which is compiled by Pipeline::GenerateCodeForTesting. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1702023002 Cr-Commit-Position: refs/heads/master@{#34107}
-
- 12 Feb, 2016 1 commit
-
-
mattloring authored
This change expands allocation sampling to include old, map, code, and large object spaces. This involved refactoring much of the observation logic out of NewSpace into Space and overriding as needed in sub-classes. Additionally, the sampling heap profiler now maintains a pair of heap observers. One observer is used for observing new space and resetting the inline allocation limit to be periodically notified of allocations. The other observes allocation across the other spaces where there is no additional work required to observe allocations. Tests have been updated to ensure that allocations are observed correctly for Paged and LargeObject spaces. R=ofrobots@google.com, hpayer@chromium.org, ulan@chromium.org BUG= Review URL: https://codereview.chromium.org/1625753002 Cr-Commit-Position: refs/heads/master@{#33959}
-
- 22 Jan, 2016 1 commit
-
-
ofrobots authored
Revert "Revert of [profiler] Implement POC Sampling Heap Profiler (patchset #12 id:220001 of https://codereview.chromium.org/1555553002/ )" This reverts commit 77df8659. BUG= Review URL: https://codereview.chromium.org/1618693004 Cr-Commit-Position: refs/heads/master@{#33473}
-