- 13 May, 2016 1 commit
-
-
cbruni authored
By fully annotating the API with runtime counters we can properly measure how much time we spend in total in v8. When --runtime-call-stats is specified we now disable the fast-paths for callbacks to properly measure them. As a drive-by-fix this CL unifies the LOG messages in api.cc. Additionally we added missing timers to gain better resolution in the parser and callbacks. BUG= Review-Url: https://codereview.chromium.org/1923893002 Cr-Commit-Position: refs/heads/master@{#36248}
-
- 11 May, 2016 3 commits
-
-
ishell authored
[runtime] Record runtime call stats for Map::TransitionTo*Property, Map::SetPrototype and property deletion to separate buckets. Review-Url: https://codereview.chromium.org/1973473002 Cr-Commit-Position: refs/heads/master@{#36176}
-
ishell authored
Now we are able to distinguish different kind of misses based on which handler/stub did we actually use. Review-Url: https://codereview.chromium.org/1969733002 Cr-Commit-Position: refs/heads/master@{#36175}
-
ishell authored
... by 1) avoiding accessing RuntimeCallStats instance, 2) avoiding calculating address of a counter field, 3) and using statically known pointer to a member counter instead. And in addition some code cleanup. BUG=chromium:596055 LOG=N Review-Url: https://codereview.chromium.org/1965133002 Cr-Commit-Position: refs/heads/master@{#36162}
-
- 23 Mar, 2016 3 commits
-
-
machenbach authored
Reland of [counters] adding runtime call timers for GC (patchset #1 id:1 of https://codereview.chromium.org/1827563003/ ) Reason for revert: Reverting doesn't help here :/ Will disable the test. Original issue's description: > Revert of [counters] adding runtime call timers for GC (patchset #4 id:60001 of https://codereview.chromium.org/1825093002/ ) > > Reason for revert: > [Sheriff] ASAN bot is really badass today: > https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20ASAN/builds/10844 > > Original issue's description: > > [counters] adding runtime call timers for GC > > > > Adding an additional timer for the GC to make the other runtime call counters > > more stable. > > > > BUG= > > > > Committed: https://crrev.com/9ec649638d553a891b0356155f4f15f3a260c1af > > Cr-Commit-Position: refs/heads/master@{#35033} > > TBR=ulan@chromium.org,cbruni@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG= > > Committed: https://crrev.com/a1521c90d54bf4cdaaf4c6ae549d297d5779ac08 > Cr-Commit-Position: refs/heads/master@{#35034} TBR=ulan@chromium.org,cbruni@chromium.org # 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/1826833002 Cr-Commit-Position: refs/heads/master@{#35035}
-
machenbach authored
Revert of [counters] adding runtime call timers for GC (patchset #4 id:60001 of https://codereview.chromium.org/1825093002/ ) Reason for revert: [Sheriff] ASAN bot is really badass today: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20ASAN/builds/10844 Original issue's description: > [counters] adding runtime call timers for GC > > Adding an additional timer for the GC to make the other runtime call counters > more stable. > > BUG= > > Committed: https://crrev.com/9ec649638d553a891b0356155f4f15f3a260c1af > Cr-Commit-Position: refs/heads/master@{#35033} TBR=ulan@chromium.org,cbruni@chromium.org # 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/1827563003 Cr-Commit-Position: refs/heads/master@{#35034}
-
cbruni authored
Adding an additional timer for the GC to make the other runtime call counters more stable. BUG= Review URL: https://codereview.chromium.org/1825093002 Cr-Commit-Position: refs/heads/master@{#35033}
-
- 08 Mar, 2016 1 commit
-
-
cbruni authored
BUG=chromium:589679 LOG=N Review URL: https://codereview.chromium.org/1771323003 Cr-Commit-Position: refs/heads/master@{#34595}
-
- 29 Feb, 2016 1 commit
-
-
cbruni authored
specified. BUG=chromium:590668 LOG=N Review URL: https://codereview.chromium.org/1746833002 Cr-Commit-Position: refs/heads/master@{#34370}
-
- 23 Feb, 2016 1 commit
-
-
cbruni authored
So far counters did not work when they were reentrant and thus would lead to wrong bookkeeping of the counter stack. Using a separate stack-allocated linked list to track the timer stack solves this issue. This is a temporary workaround with the limitations of the counter system in mind. Eventually we will move to the trace-based system for these kind of statistics. BUG=v8:4770 LOG=n Review URL: https://codereview.chromium.org/1695733002 Cr-Commit-Position: refs/heads/master@{#34208}
-
- 11 Feb, 2016 4 commits
-
-
cbruni authored
By keeping track of the stack of counters we can properly subtract the subcounter times and properly measure the own-time spent in each runtime function. This is useful to get more details for builtins like HandleApiCall which are typical top-level entries for chome which previously prevent measurements of sub-calls to builtins/runtime functions. BUG= Review URL: https://codereview.chromium.org/1681943002 Cr-Commit-Position: refs/heads/master@{#33901}
-
cbruni authored
Additionally list C++ builtins as well under --runtime_call_stats. Let's try to keep all counters in one place, that makes it a bit easier to maintain and especially discard unused ones. BUG= Committed: https://crrev.com/6bc71431995d49d4ca4a2ea9c75e5add5f345225 Cr-Commit-Position: refs/heads/master@{#33847} Review URL: https://codereview.chromium.org/1678973002 Cr-Commit-Position: refs/heads/master@{#33893}
-
cbruni authored
Revert of [counters] moving runtime counters to counter.h (patchset #1 id:1 of https://codereview.chromium.org/1688783005/ ) Reason for revert: failing gc-stress tests Original issue's description: > Reland of [counters] moving runtime counters to counter.h (patchset #1 id:1 of https://codereview.chromium.org/1681923003/ ) > > Reason for revert: > This CL was not the cause for the TSAN failures, the instruction-selector backend for x64 emitted a wrong compare which accidentally showed up with tsan + code moves. > The instruction-selectors changes have been reverted with https://codereview.chromium.org/1693433002 > > Original issue's description: > > Revert of [counters] moving runtime counters to counter.h (patchset #1 id:1 of https://codereview.chromium.org/1678973002/ ) > > > > Reason for revert: > > [Sheriff] Breaks TSAN: > > https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/7727 > > > > Original issue's description: > > > [counters] moving runtime counters to counter.h > > > > > > Additionally list C++ builtins as well under --runtime_call_stats. > > > Let's try to keep all counters in one place, that makes it a bit > > > easier to maintain and especially discard unused ones. > > > > > > BUG= > > > > > > Committed: https://crrev.com/6bc71431995d49d4ca4a2ea9c75e5add5f345225 > > > Cr-Commit-Position: refs/heads/master@{#33847} > > > > TBR=jarin@chromium.org,cbruni@chromium.org > > # Skipping CQ checks because original CL landed less than 1 days ago. > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > BUG= > > > > Committed: https://crrev.com/2d669b96639517cfc33e6fc6d4c3814587bc7366 > > Cr-Commit-Position: refs/heads/master@{#33848} > > TBR=jarin@chromium.org,machenbach@chromium.org > # Not skipping CQ checks because original CL landed more than 1 days ago. > BUG= > > Committed: https://crrev.com/ad943fe44ede22b90b871e1233334dff5ff545c3 > Cr-Commit-Position: refs/heads/master@{#33887} TBR=jarin@chromium.org,machenbach@chromium.org # 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/1687313002 Cr-Commit-Position: refs/heads/master@{#33889}
-
cbruni authored
Reland of [counters] moving runtime counters to counter.h (patchset #1 id:1 of https://codereview.chromium.org/1681923003/ ) Reason for revert: This CL was not the cause for the TSAN failures, the instruction-selector backend for x64 emitted a wrong compare which accidentally showed up with tsan + code moves. The instruction-selectors changes have been reverted with https://codereview.chromium.org/1693433002 Original issue's description: > Revert of [counters] moving runtime counters to counter.h (patchset #1 id:1 of https://codereview.chromium.org/1678973002/ ) > > Reason for revert: > [Sheriff] Breaks TSAN: > https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/7727 > > Original issue's description: > > [counters] moving runtime counters to counter.h > > > > Additionally list C++ builtins as well under --runtime_call_stats. > > Let's try to keep all counters in one place, that makes it a bit > > easier to maintain and especially discard unused ones. > > > > BUG= > > > > Committed: https://crrev.com/6bc71431995d49d4ca4a2ea9c75e5add5f345225 > > Cr-Commit-Position: refs/heads/master@{#33847} > > TBR=jarin@chromium.org,cbruni@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG= > > Committed: https://crrev.com/2d669b96639517cfc33e6fc6d4c3814587bc7366 > Cr-Commit-Position: refs/heads/master@{#33848} TBR=jarin@chromium.org,machenbach@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG= Review URL: https://codereview.chromium.org/1688783005 Cr-Commit-Position: refs/heads/master@{#33887}
-
- 09 Feb, 2016 2 commits
-
-
machenbach authored
Revert of [counters] moving runtime counters to counter.h (patchset #1 id:1 of https://codereview.chromium.org/1678973002/ ) Reason for revert: [Sheriff] Breaks TSAN: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/7727 Original issue's description: > [counters] moving runtime counters to counter.h > > Additionally list C++ builtins as well under --runtime_call_stats. > Let's try to keep all counters in one place, that makes it a bit > easier to maintain and especially discard unused ones. > > BUG= > > Committed: https://crrev.com/6bc71431995d49d4ca4a2ea9c75e5add5f345225 > Cr-Commit-Position: refs/heads/master@{#33847} TBR=jarin@chromium.org,cbruni@chromium.org # 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/1681923003 Cr-Commit-Position: refs/heads/master@{#33848}
-
cbruni authored
Additionally list C++ builtins as well under --runtime_call_stats. Let's try to keep all counters in one place, that makes it a bit easier to maintain and especially discard unused ones. BUG= Review URL: https://codereview.chromium.org/1678973002 Cr-Commit-Position: refs/heads/master@{#33847}
-
- 20 Aug, 2015 1 commit
-
-
mstarzinger authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1285183010 Cr-Commit-Position: refs/heads/master@{#30263}
-
- 01 Jun, 2015 1 commit
-
-
erikcorry authored
When compiling on a laptop I like to concatenate the small test files. This makes a big difference to compile times. These changes make that easier. R=ulan@chromium.org BUG= Review URL: https://codereview.chromium.org/1163803002 Cr-Commit-Position: refs/heads/master@{#28742}
-
- 07 May, 2015 1 commit
-
-
ulan authored
This introduces V8.MemoryHeapCommitted and V8.MemoryHeapUsed histograms. In contrast to the existing memory histograms, the new histograms are uniform in time, i.e. their samples happen at regular time intervals. The --histogram-interval specifies the length of the interval. We implement this by linearly interpolating memory stats between GC and idle notification events. BUG=chromium:485472 LOG=NO Review URL: https://codereview.chromium.org/1125683004 Cr-Commit-Position: refs/heads/master@{#28292}
-
- 27 Jan, 2015 1 commit
-
-
yangguo authored
R=vogelheim@chromium.org Review URL: https://codereview.chromium.org/875873002 Cr-Commit-Position: refs/heads/master@{#26295}
-
- 22 Jan, 2015 1 commit
-
-
vogelheim authored
of running a script is really spent in compilation. That is, sum up the total time spent compiling (parsing + compile proper) within a run call as seen through the API. @jochen: So many questions: - Is it ok to re-use V8.CompileLazy? This measures something a little different. - clang-format does funny things to the huge macro definitions. I accepted clang-format changes for all code, but reverted for the #define orgies in counters.h. ok? - Am I measuring the right thing. That is, are Aggregat[ing|ed]TimerScope in the right place? I'll fiddle a bit more with this to see if it does the right thing. Would be happy if you could still review now-ish. BUG= Review URL: https://codereview.chromium.org/790413004 Cr-Commit-Position: refs/heads/master@{#26226}
-
- 14 Oct, 2014 1 commit
-
-
yangguo@chromium.org authored
This broke because the optimizing compiler thread no longer holds Isolate::Current() in its TLS. R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/655813002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24607 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Jul, 2014 1 commit
-
-
hpayer@chromium.org authored
BUG=397026 LOG=n R=rmcilroy@chromium.org Review URL: https://codereview.chromium.org/420753002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22632 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Jul, 2014 1 commit
-
-
jochen@chromium.org authored
The callbacks are per isolate, so we shouldn't get the isolate implicitly from TLS. Also, we shouldn't allow calls to these methods prior to initializing the respective isolate (and silently ignore them). Esp. add a per-isolate API to set the stats counter callbacks and make it possible to set the stats counter callback after the isolate was touched. Embedders should use e.g. isolate->SetCounterFunction(callback) instead of v8::V8::SetCounterFunction(callback). BUG=none R=svenpanne@chromium.org LOG=y Review URL: https://codereview.chromium.org/365153002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22223 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Jun, 2014 1 commit
-
-
jochen@chromium.org authored
Also split v8-core independent methods from checks.h to base/logging.h and merge v8checks with the rest of checks. The CPU::FlushICache method is moved to CpuFeatures::FlushICache RoundUp and related methods are moved to base/macros.h Remove all layering violations from src/libplatform BUG=none R=jkummerow@chromium.org LOG=n Review URL: https://codereview.chromium.org/358363002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22092 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jun, 2014 1 commit
-
-
jochen@chromium.org authored
- this avoids using relative include paths which are forbidden by the style guide - makes the code more readable since it's clear which header is meant - allows for starting to use checkdeps BUG=none R=jkummerow@chromium.org, danno@chromium.org LOG=n Review URL: https://codereview.chromium.org/304153016 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 May, 2014 1 commit
-
-
jochen@chromium.org authored
BUG=none LOG=n R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/272433002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21185 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Apr, 2014 1 commit
-
-
bmeurer@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/259183002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Mar, 2014 1 commit
-
-
yangguo@chromium.org authored
Contributed by fmeawad@chromium.org R=yangguo@chromium.org Review URL: https://codereview.chromium.org/186163002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19745 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Sep, 2013 1 commit
-
-
dcarney@chromium.org authored
R=svenpanne@chromium.org BUG= Review URL: https://codereview.chromium.org/23729006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16489 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Aug, 2013 1 commit
-
-
bmeurer@chromium.org authored
These classes are meant to replace OS::Ticks() and OS::TimeCurrentMillis(), which are broken in several ways. The ElapsedTimer class implements a stopwatch using TimeTicks::HighResNow() for high resolution, monotonic timing. Also fix the CpuProfile::GetStartTime() and CpuProfile::GetEndTime() methods to actually return the time relative to the unix epoch as stated in the documentation (previously that was relative to some arbitrary point in time, i.e. boot time). The previous Windows issues have been resolved, and we now use GetTickCount64() on Windows Vista and later, falling back to timeGetTime() with rollover protection for earlier Windows versions. BUG=v8:2853 R=machenbach@chromium.org, yurys@chromium.org Review URL: https://codereview.chromium.org/23490015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16413 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Aug, 2013 6 commits
-
-
bmeurer@chromium.org authored
Revert "Cross-compiling from Linux to Android requires -lrt for the host toolset.", "Fix Visual Studio debug build after r16398." and "Reland "Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTimer class."" This reverts commit r16398, r16399 and r16402 for breaking the Windows WebKit tests. Will reland fix which doesn't use High Resolution Timer for ElapsedTimer (we suspect QueryPerformanceCounter overhead is responsible for test breakage). TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/23710002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16405 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
These classes are meant to replace OS::Ticks() and OS::TimeCurrentMillis(), which are broken in several ways. The ElapsedTimer class implements a stopwatch using TimeTicks::HighResNow() for high resolution, monotonic timing. Also fix the CpuProfile::GetStartTime() and CpuProfile::GetEndTime() methods to actually return the time relative to the unix epoch as stated in the documentation (previously that was relative to some arbitrary point in time, i.e. boot time). BUG=v8:2853 R=machenbach@chromium.org Review URL: https://codereview.chromium.org/23469013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16398 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
This reverts commit r16390 for breaking the Windows build. Will reland fixed version, which also uses the platform/ folder instead of time/ folder as per offline discussion. TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/23690003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16391 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
These classes are meant to replace OS::Ticks() and OS::TimeCurrentMillis(), which are broken in several ways. The ElapsedTimer class implements a stopwatch using TimeTicks::HighResNow() for high resolution, monotonic timing. Also fix the CpuProfile::GetStartTime() and CpuProfile::GetEndTime() methods to actually return the time relative to the unix epoch as stated in the documentation (previously that was relative to some arbitrary point in time, i.e. boot time). BUG=v8:2853 R=machenbach@chromium.org, yurys@chromium.org Committed: https://code.google.com/p/v8/source/detail?r=16388 Review URL: https://codereview.chromium.org/23295034 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16390 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
This reverts commit r16388 for breaking build due to merge typo, will reland with typo fixed. TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/23698002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16389 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
These classes are meant to replace OS::Ticks() and OS::TimeCurrentMillis(), which are broken in several ways. The ElapsedTimer class implements a stopwatch using TimeTicks::HighResNow() for high resolution, monotonic timing. Also fix the CpuProfile::GetStartTime() and CpuProfile::GetEndTime() methods to actually return the time relative to the unix epoch as stated in the documentation (previously that was relative to some arbitrary point in time, i.e. boot time). BUG=v8:2853 R=machenbach@chromium.org, yurys@chromium.org Review URL: https://codereview.chromium.org/23295034 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16388 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Jul, 2013 1 commit
-
-
yangguo@chromium.org authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/18509003 Patch from Haitao Feng <haitao.feng@intel.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15510 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Apr, 2013 1 commit
-
-
yangguo@chromium.org authored
R=svenpanne@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/14471007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14416 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Jan, 2013 1 commit
-
-
yangguo@chromium.org authored
R=haraken@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/12040075 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13529 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-