summaryrefslogtreecommitdiffstats
path: root/base/profiler
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup: Replace 'DurationInt' with int32, and always use 32-bit integers ↵isherman@chromium.org2012-03-243-29/+2
| | | | | | | | | | | | for tracking time. BUG=none TEST=none Review URL: http://codereview.chromium.org/9818004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128783 0039d316-1c4b-4281-b951-d872f2087c98
* Support use of third party time function for about:profilerjar@chromium.org2012-02-153-0/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This uses TCMalloc to provide a time function, allowing us to see how much memory was allocated on a single thread during the running of a task. The alternate time function is put in place only when a specific environment variable is detected during TCMalloc startup. This change currently is activated only in Windows/Linux, as it is based on changes TCMalloc (not used on Mac). We also create an infrastructure for using any alternate timer, to replace the "wall clock time," on a per-thread basis, in the about:profiler infrastructure. That interface may be used on other platforms, including scenarios where we have a per-thread-CPU-time function to replace the wall-clock timer. In all cases, when this alternate timer is activated, we lose the ability to calculated queueing time. Queueing time is based on a time snapshot taken on a second thread, and hence is not comparable to the alternate timer (when the alternate timer is engaged). r=rtenneti BUG=103321 Review URL: https://chromiumcodereview.appspot.com/9212025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122180 0039d316-1c4b-4281-b951-d872f2087c98
* Propogate status setting for profiler to track parentsjar@chromium.org2012-02-101-3/+4
| | | | | | | | | | | | | | | | [Reland: https://src.chromium.org/viewvc/chrome?view=rev&revision=120789 with minor change to avoid race on status change.] This allows child processes to track ancestry, and report it to the browser process. Parent tracking is only turned on based on an environment variable. r=rtenneti Review URL: https://chromiumcodereview.appspot.com/9363007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121491 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 120789 - Propogate status setting for profiler to track parentsjar@chromium.org2012-02-071-4/+3
| | | | | | | | | | | | | | | | | | [There is a TSAN race report... so I'm reverting] This allows child processes to track ancestry, and report it to the browser process. Parent tracking is only turned on based on an environment variable. r=rtenneti Review URL: https://chromiumcodereview.appspot.com/9181002 TBR=jar@chromium.org Review URL: https://chromiumcodereview.appspot.com/9348028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120818 0039d316-1c4b-4281-b951-d872f2087c98
* Propogate status setting for profiler to track parentsjar@chromium.org2012-02-071-3/+4
| | | | | | | | | | | | | This allows child processes to track ancestry, and report it to the browser process. Parent tracking is only turned on based on an environment variable. r=rtenneti Review URL: https://chromiumcodereview.appspot.com/9181002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120789 0039d316-1c4b-4281-b951-d872f2087c98
* Detect child tasks born during a profiled tasksjar@chromium.org2011-12-142-2/+2
| | | | | | | r=rtenneti Review URL: http://codereview.chromium.org/8894022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114336 0039d316-1c4b-4281-b951-d872f2087c98
* Add hook for developers to play with profiler(unofficially)jar@chromium.org2011-12-131-4/+24
| | | | | | | | r=rtenneti BUG=107051 Review URL: http://codereview.chromium.org/8899016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114188 0039d316-1c4b-4281-b951-d872f2087c98
* Adjust interfaces to indicate when tracking is in progressjar@chromium.org2011-11-142-2/+6
| | | | | | | | | | | | | | | This should have no change whatever in function, but simply changes the names of calls for tracking time so that the ThreadData can know if a new trackig has started or ended. This will be helpful in (a future CL) measuring when the thread is doing something that is not tracked at all (e.g., processing UI events, etc.) r=rtenneti Review URL: http://codereview.chromium.org/8548005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109846 0039d316-1c4b-4281-b951-d872f2087c98
* Switch to using an intergral type for durations inside profilerjar@chromium.org2011-11-111-0/+2
| | | | | | | | | | | | | Transition from internal used of "class Duration" (which is kindred of base::TimeDelta) to using an integral type. This is in preparation for handling durations that are not time based, such as memmory allocation units. r=rtenneti BUG=103321 Review URL: http://codereview.chromium.org/8502001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109720 0039d316-1c4b-4281-b951-d872f2087c98
* Revert of Revert 108752 - Support tracking of IPC messages as tasks in profilerjar@chromium.org2011-11-085-0/+353
| | | | | | | | | | | | | | | | | | | | | | | | This is a relanding of all the cleanup found in the original CL, without the hooks to actually monitor the IPC calls. I'm trying to find out what caused the ASAN bot failures by landing piecemeal (per discussion with Joi). The original CL was: Support tracking of IPC messages as tasks in profiler Also started to do more cleanup, including creating a base/profiler directory, and moving parts of the over-sized tracked_objects.* into that directory. r=rtenneti Review URL: http://codereview.chromium.org/8480014 But this CL is: TBR=joi Review URL: http://codereview.chromium.org/8499022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109040 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 108752 - Support tracking of IPC messages as tasks in profilerjoi@chromium.org2011-11-085-353/+0
| | | | | | | | | | | | | | Also started to do more cleanup, including creating a base/profiler directory, and moving parts of the over-sized tracked_objects.* into that directory. r=rtenneti Review URL: http://codereview.chromium.org/8480014 TBR=jar@chromium.org Review URL: http://codereview.chromium.org/8496008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109004 0039d316-1c4b-4281-b951-d872f2087c98
* Support tracking of IPC messages as tasks in profilerjar@chromium.org2011-11-055-0/+353
Also started to do more cleanup, including creating a base/profiler directory, and moving parts of the over-sized tracked_objects.* into that directory. r=rtenneti Review URL: http://codereview.chromium.org/8480014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@108752 0039d316-1c4b-4281-b951-d872f2087c98