diff options
| author | Andy McFadden <fadden@android.com> | 2010-12-17 11:04:18 -0800 |
|---|---|---|
| committer | Andy McFadden <fadden@android.com> | 2010-12-17 12:33:23 -0800 |
| commit | 7b522639a499f63ccb5162576830d0c20539bd05 (patch) | |
| tree | b1e6bd22ff6ad251e1c6e5659088d82dad349d3b /tools | |
| parent | 08c2f9fc9cd7c1cb36c31d6f15b4d13a7cc15432 (diff) | |
Fix dmtracedump.
This rolls back a couple of checkins that were made some time ago. The
dmtracedump tool has largely been broken ever since (only the "-o" mode
worked reliably).
The key feature this removes is "filters". I don't know what they do.
Bug 2643529
Change-Id: I602c96da7a704286715d81d3fb227f490e933fcc
Diffstat (limited to 'tools')
88 files changed, 61 insertions, 7356 deletions
diff --git a/tools/dmtracedump/TraceDump.c b/tools/dmtracedump/TraceDump.c index 3f8006489..4127530cc 100644 --- a/tools/dmtracedump/TraceDump.c +++ b/tools/dmtracedump/TraceDump.c @@ -1,19 +1,18 @@ -/* //device/tools/dmtracedump/TraceDump.c -** -** Copyright 2006, The Android Open Source Project -** -** Licensed under the Apache License, Version 2.0 (the "License"); -** you may not use this file except in compliance with the License. -** You may obtain a copy of the License at -** -** http://www.apache.org/licenses/LICENSE-2.0 -** -** Unless required by applicable law or agreed to in writing, software -** distributed under the License is distributed on an "AS IS" BASIS, -** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -** See the License for the specific language governing permissions and -** limitations under the License. -*/ +/* + * Copyright (C) 2006 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ /* * Process dmtrace output. @@ -47,18 +46,6 @@ int versionNumber; /* Size of temporary buffers for escaping html strings */ #define HTML_BUFSIZE 10240 -/* Size of methodId->method cache */ -#define METHOD_CACHE_SIZE 2048 -#define METHOD_CACHE_SIZE_MASK (METHOD_CACHE_SIZE - 1) - -/* Some filter constants */ -#define FILTER_TAG '*' -#define FILTER_FLAG_THREAD '+' -#define FILTER_TYPE_CLASS 0 -#define FILTER_TYPE_METHOD 1 - -#define DEFAULT_ACTIVE_THREADS 8 - char *htmlHeader = "<html>\n<head>\n<script type=\"text/javascript\" src=\"%ssortable.js\"></script>\n" "<script langugage=\"javascript\">\n" @@ -140,7 +127,6 @@ typedef struct DataHeader { typedef struct ThreadEntry { int threadId; const char* threadName; - uint64_t elapsedTime; } ThreadEntry; struct MethodEntry; @@ -198,8 +184,6 @@ typedef struct DataKeys { ThreadEntry* threads; int numMethods; MethodEntry* methods; /* 2 extra methods: "toplevel" and "unknown" */ - int* methodCache; /* methodId->methodIndex mapping */ - // TODO change to map methodId->method itself } DataKeys; #define TOPLEVEL_INDEX 0 @@ -211,15 +195,10 @@ typedef struct StackEntry { } StackEntry; typedef struct CallStack { - int top; - StackEntry calls[MAX_STACK_DEPTH]; - uint64_t lastEventTime; - uint64_t threadStartTime; - uint64_t* remTimes; - // Note: remTimes keeps a sum of 'un-allocated' time for each thread, in case - // we need to allocate it to one (or many) filter later. This would happen when - // we see a method exit that maches a filter, but whose entry we hadn't seen. - // TODO: consider moving remTimes into FilterTimes and change logic appropriately + int top; + StackEntry calls[MAX_STACK_DEPTH]; + uint64_t lastEventTime; + uint64_t threadStartTime; } CallStack; typedef struct DiffEntry { @@ -236,7 +215,6 @@ typedef struct Options { const char* traceFileName; const char* diffFileName; const char* graphFileName; - const char* filterFileName; int keepDotFile; int dump; int outputHtml; @@ -253,31 +231,6 @@ typedef struct TraceData { UniqueMethodEntry *uniqueMethods; } TraceData; -typedef struct FilterKey { - int type[2]; /* 0=class, 1=method; 2 needed for start and end keys */ - uint32_t flags; /* 1st bit = include cross-thread time */ - char* keys[2]; /* 2 needed for start and end keys */ -} FilterKey; - -typedef struct FilterTimes { - uint64_t totalWaitTime; - uint64_t* threadWaitTimes; - uint64_t* threadExecutionTimesWhileWaiting; - uint64_t* threadExecutionTimes; -} FilterTimes; - -typedef struct Filter { - char* filterName; - FilterKey* filterKeys; - int numKeys; - int activeCount; - int* activeThreads; - int* activationKeys; - FilterTimes times; -} Filter; - -int numFilters = 0; // global - static Options gOptions; /* Escapes characters in the source string that are html special entities. @@ -445,37 +398,6 @@ int compareElapsedInclusive(const void *a, const void *b) { /* * This comparison function is called from qsort() to sort - * threads into decreasing order of elapsed time. - */ -int compareElapsed(const void *a, const void *b) { - const ThreadEntry *threadA, *threadB; - uint64_t elapsed1, elapsed2; - int result = 0; - - threadA = (ThreadEntry const *)a; - threadB = (ThreadEntry const *)b; - elapsed1 = threadA->elapsedTime; - elapsed2 = threadB->elapsedTime; - if (elapsed1 < elapsed2) - return 1; - if (elapsed1 > elapsed2) - return -1; - - /* If the elapsed times of two threads are equal, then sort them - * by thread id. - */ - int idA = threadA->threadId; - int idB = threadB->threadId; - if (idA < idB) - result = -1; - if (idA > idB) - result = 1; - - return result; -} - -/* - * This comparison function is called from qsort() to sort * TimedMethods into decreasing order of inclusive elapsed time. */ int compareTimedMethod(const void *a, const void *b) { @@ -647,7 +569,6 @@ void freeDataKeys(DataKeys* pKeys) free(pKeys->fileData); free(pKeys->threads); free(pKeys->methods); - free(pKeys->methodCache); free(pKeys); } @@ -674,15 +595,20 @@ int findNextChar(const char* data, int len, char lookFor) return -1; } -int countLinesToChar(const char* data, int len, const char toFind) +/* + * Count the number of lines until the next token. + * + * Returns -1 if none found before EOF. + */ +int countLinesToToken(const char* data, int len) { int count = 0; int next; - while (*data != toFind) { + while (*data != TOKEN_CHAR) { next = findNextChar(data, len, '\n'); if (next < 0) - return count; + return -1; count++; data += next+1; len -= next+1; @@ -692,16 +618,6 @@ int countLinesToChar(const char* data, int len, const char toFind) } /* - * Count the number of lines until the next token. - * - * Returns 0 if none found before EOF. - */ -int countLinesToToken(const char* data, int len) -{ - return countLinesToChar(data, len, TOKEN_CHAR); -} - -/* * Make sure we're at the start of the right section. * * Returns the length of the token line, or -1 if something is wrong. @@ -1060,6 +976,9 @@ DataKeys* parseKeys(FILE *fp, int verbose) if (offset < 0) goto fail; + /* Reduce our allocation now that we know where the end of the key section is. */ + pKeys->fileData = (char *)realloc(pKeys->fileData, offset); + pKeys->fileLen = offset; /* Leave fp pointing to the beginning of the data section. */ fseek(fp, offset, SEEK_SET); @@ -1085,7 +1004,7 @@ DataKeys* parseKeys(FILE *fp, int verbose) printf("Methods (%d):\n", pKeys->numMethods); for (i = 0; i < pKeys->numMethods; i++) { printf("0x%08x %s : %s : %s\n", - pKeys->methods[i].methodId >> 2, pKeys->methods[i].className, + pKeys->methods[i].methodId, pKeys->methods[i].className, pKeys->methods[i].methodName, pKeys->methods[i].signature); } } @@ -1159,7 +1078,7 @@ int parseDataHeader(FILE *fp, DataHeader* pHeader) } /* - * Look up a method by its method ID (using binary search). + * Look up a method by it's method ID. * * Returns NULL if no matching method was found. */ @@ -1167,18 +1086,6 @@ MethodEntry* lookupMethod(DataKeys* pKeys, unsigned int methodId) { int hi, lo, mid; unsigned int id; - int hashedId; - - /* Create cache if it doesn't already exist */ - if (pKeys->methodCache == NULL) { - pKeys->methodCache = (int*) calloc(METHOD_CACHE_SIZE, sizeof(int)); - } - - // ids are multiples of 4, so shift - hashedId = (methodId >> 2) & METHOD_CACHE_SIZE_MASK; - if (pKeys->methodCache[hashedId]) /* cache hit */ - if (pKeys->methods[pKeys->methodCache[hashedId]].methodId == methodId) - return &pKeys->methods[pKeys->methodCache[hashedId]]; lo = 0; hi = pKeys->numMethods - 1; @@ -1187,11 +1094,9 @@ MethodEntry* lookupMethod(DataKeys* pKeys, unsigned int methodId) mid = (hi + lo) / 2; id = pKeys->methods[mid].methodId; - if (id == methodId) { /* match, put in cache */ - hashedId = (methodId >> 2) & METHOD_CACHE_SIZE_MASK; - pKeys->methodCache[hashedId] = mid; - return &pKeys->methods[mid]; - } else if (id < methodId) /* too low */ + if (id == methodId) /* match */ + return &pKeys->methods[mid]; + else if (id < methodId) /* too low */ lo = mid + 1; else /* too high */ hi = mid - 1; @@ -1585,7 +1490,6 @@ void outputTableOfContents() printf("<ul>\n"); printf(" <li><a href=\"#exclusive\">Exclusive profile</a></li>\n"); printf(" <li><a href=\"#inclusive\">Inclusive profile</a></li>\n"); - printf(" <li><a href=\"#thread\">Thread profile</a></li>\n"); printf(" <li><a href=\"#class\">Class/method profile</a></li>\n"); printf(" <li><a href=\"#method\">Method/class profile</a></li>\n"); printf("</ul>\n\n"); @@ -1596,7 +1500,6 @@ void outputNavigationBar() printf("<a href=\"#contents\">[Top]</a>\n"); printf("<a href=\"#exclusive\">[Exclusive]</a>\n"); printf("<a href=\"#inclusive\">[Inclusive]</a>\n"); - printf("<a href=\"#thread\">[Thread]</a>\n"); printf("<a href=\"#class\">[Class]</a>\n"); printf("<a href=\"#method\">[Method]</a>\n"); printf("<br><br>\n"); @@ -1772,10 +1675,12 @@ void printInclusiveProfile(MethodEntry **pMethods, int numMethods, char classBuf[HTML_BUFSIZE], methodBuf[HTML_BUFSIZE]; char signatureBuf[HTML_BUFSIZE]; char anchor_buf[80]; + char *anchor_close = ""; total = sumThreadTime; anchor_buf[0] = 0; if (gOptions.outputHtml) { + anchor_close = "</a>"; printf("<a name=\"inclusive\"></a>\n"); printf("<hr>\n"); outputNavigationBar(); @@ -1860,122 +1765,6 @@ void printInclusiveProfile(MethodEntry **pMethods, int numMethods, } } -void printThreadProfile(ThreadEntry *pThreads, int numThreads, uint64_t sumThreadTime, Filter** filters) -{ - int ii, jj; - ThreadEntry thread; - double total, per, sum_per; - uint64_t sum; - char threadBuf[HTML_BUFSIZE]; - char anchor_buf[80]; - int drawTable; - - total = sumThreadTime; - anchor_buf[0] = 0; - if (gOptions.outputHtml) { - printf("<a name=\"thread\"></a>\n"); - printf("<hr>\n"); - outputNavigationBar(); - } else { - printf("\n%s\n", profileSeparator); - } - - /* Sort the threads into decreasing order of elapsed time. */ - qsort(pThreads, numThreads, sizeof(ThreadEntry), compareElapsed); - - printf("\nElapsed times for each thread, sorted by elapsed time.\n"); - printf("Also includes percentage of time spent during the <i>execution</i> of any filters.\n\n"); - - if (gOptions.outputHtml) { - printf("<br><br>\n<pre>\n"); - } - - printf(" Usecs self %% sum %%"); - for (ii = 0; ii < numFilters; ++ii) { - printf(" %s %%", filters[ii]->filterName); - } - printf(" tid ThreadName\n"); - sum = 0; - - for (ii = 0; ii < numThreads; ++ii) { - int threadId; - char *threadName; - uint64_t time; - - thread = pThreads[ii]; - - threadId = thread.threadId; - threadName = (char*)(thread.threadName); - time = thread.elapsedTime; - - sum += time; - per = 100.0 * time / total; - sum_per = 100.0 * sum / total; - - if (gOptions.outputHtml) { - threadName = htmlEscape(threadName, threadBuf, HTML_BUFSIZE); - } - - printf("%9llu %6.2f %6.2f", time, per, sum_per); - for (jj = 0; jj < numFilters; jj++) { - printf(" %6.2f", 100.0 * filters[jj]->times.threadExecutionTimes[threadId] / time); - } - printf(" %3d %s\n", threadId, threadName); - } - - if (gOptions.outputHtml) - printf("</pre><br />"); - - printf("\n\nBreak-down of portion of time spent by each thread while waiting on a filter method.\n"); - - for (ii = 0; ii < numFilters; ++ii) { - // Draw a table for each filter that measures wait time - drawTable = 0; - for (jj = 0; jj < filters[ii]->numKeys; jj++) - if (filters[ii]->filterKeys[jj].flags == 1) - drawTable = 1; - - if (drawTable) { - - if (gOptions.outputHtml) - printf("<br/><br/>\n<pre>\n"); - printf("Filter: %s\n", filters[ii]->filterName); - printf("Total waiting cycles: %llu (%6.2f%% of total)\n", - filters[ii]->times.totalWaitTime, - 100.0 * filters[ii]->times.totalWaitTime / sum); - - if (filters[ii]->times.totalWaitTime > 0) { - - printf("Details: \n\n"); - - printf(" Waiting cycles %% of total waiting time execution time while waiting thread name\n"); - - for (jj = 0; jj < numThreads; jj++) { - - thread = pThreads[jj]; - - char *threadName; - threadName = (char*) thread.threadName; - if (gOptions.outputHtml) { - threadName = htmlEscape(threadName, threadBuf, HTML_BUFSIZE); - } - - printf(" %9llu %6.2f %6.2f %s\n", - filters[ii]->times.threadWaitTimes[thread.threadId], - 100.0 * filters[ii]->times.threadWaitTimes[thread.threadId] / filters[ii]->times.totalWaitTime, - 100.0 * filters[ii]->times.threadExecutionTimesWhileWaiting[thread.threadId] / filters[ii]->times.totalWaitTime, - threadName); - } - } - - if (gOptions.outputHtml) - printf("</pre>\n"); - - } - } - -} - void createClassList(TraceData* traceData, MethodEntry **pMethods, int numMethods) { int ii; @@ -2477,464 +2266,16 @@ void printMethodProfiles(TraceData* traceData, uint64_t sumThreadTime) } /* - * Determines whether the given FilterKey matches the method. The FilterKey's - * key that is used to match against the method is determined by index. - */ -int keyMatchesMethod(FilterKey filterKey, MethodEntry* method, int index) -{ - if (filterKey.type[index] == 0) { // Class -#if 0 - fprintf(stderr, " class is %s; filter key is %s\n", method->className, filterKey.keys[index]); -#endif - if (strcmp(method->className, filterKey.keys[index]) == 0) { - return 1; - } - } else { // Method - if (method->methodName != NULL) { - // Get fully-qualified name - // TODO: parse class name and method name an put them in structure to avoid - // allocating memory here - char* str = malloc ((strlen(method->className) + strlen(method->methodName) + 2) * sizeof(char)); - strcpy(str, method->className); - strcat(str, "."); - strcat(str, method->methodName); -#if 0 - fprintf(stderr, " method is %s; filter key is %s\n", str, filterKey.keys[index]); -#endif - if (strcmp(str, filterKey.keys[index]) == 0) { - free(str); - return 1; - } - free(str); - } - } - return 0; -} - -/* - * Adds the appropriate times to the given filter based on the given method. Activates and - * de-activates filters as necessary. - * - * A filter is activated when the given method matches the 'entry' key of one of its FilterKeys. - * It is de-activated when the method matches the 'exit' key of the same FilterKey that activated it - * in the first place. Thus, a filter may be active more than once on the same thread (activated by - * different FilterKeys). A filter may also be active on different threads at the same time. - * - * While the filter is active on thread 1, elapsed time is allocated to different buckets which - * include: thread execution time (i.e., time thread 1 spent executing while filter was active), - * thread waiting time (i.e., time thread 1 waited while other threads executed), and execution - * time while waiting (i.e., time thread x spent executing while thread 1 was waiting). We also - * keep track of the total waiting time for a given filter. - * - * Lastly, we keep track of remaining (un-allocated) time for cases in which we exit a method we - * had not entered before, and that method happens to match the 'exit' key of a FilterKey. - */ -int filterMethod(MethodEntry* method, Filter* filter, int entry, int threadId, int numThreads, - uint64_t elapsed, uint64_t remTime) -{ - int ii, jj; - int activeCount, addedWaitTimeThreadsCount; - int* activeThreads; - int* activationKeys; - int* addedWaitTimeThreads; - - // flags - int addWaitTime = 0; - int deactivation = 0; - int addedExecutionTime = 0; - int addedExecutionTimeWhileWaiting = 0; - int addedWaitTime; - int addedRemTime = 0; - int threadKeyPairActive = 0; - - if (filter->times.threadWaitTimes == NULL && filter->times.threadExecutionTimes == NULL && - filter->times.threadExecutionTimesWhileWaiting == NULL) { - filter->times.threadWaitTimes = (uint64_t*) calloc(MAX_THREADS, sizeof(uint64_t)); - filter->times.threadExecutionTimesWhileWaiting = - (uint64_t*) calloc(MAX_THREADS, sizeof(uint64_t)); - filter->times.threadExecutionTimes = (uint64_t*) calloc(MAX_THREADS, sizeof(uint64_t)); - } - - int verbose = 0; - - if (verbose) - fprintf(stderr, - "Running %s filter for class %s method %s, thread %d; activeCount: %d time: %llu\n", - filter->filterName, method->className, method->methodName, threadId, - filter->activeCount, elapsed); - - // If active on some thread - if (filter->activeCount > 0) { - - // Initialize active structures in case there are any de-activations - activeThreads = (int*) calloc(filter->activeCount, sizeof(int)); - activationKeys = (int*) calloc(filter->activeCount, sizeof(int)); - activeCount = 0; - - // Initialize structure to help us determine which threads we've already added wait time to - addedWaitTimeThreads = (int*) calloc(filter->activeCount, sizeof(int)); - addedWaitTimeThreadsCount = 0; - - // Add times to appropriate sums and de-activate (if necessary) - for (ii = 0; ii < filter->activeCount; ii++) { - - if (verbose) { - fprintf(stderr, " Analyzing active thread with id %d, activated by key [%s, %s]\n", - filter->activeThreads[ii], - filter->filterKeys[filter->activationKeys[ii]].keys[0], - filter->filterKeys[filter->activationKeys[ii]].keys[1]); - } - - // If active on THIS thread -> add to execution time (only add once!) - if (filter->activeThreads[ii] == threadId && !addedExecutionTime) { - if (verbose) - fprintf(stderr, " Adding execution time to this thead\n"); - filter->times.threadExecutionTimes[threadId] += elapsed; - addedExecutionTime = 1; - } - - // If active on ANOTHER thread (or this one too) with CROSS_THREAD_FLAG -> add to - // both thread's waiting time + total - if (filter->filterKeys[filter->activationKeys[ii]].flags == 1) { - - // Add time to thread that is waiting (add to each waiting thread at most once!) - addedWaitTime = 0; - for (jj = 0; jj < addedWaitTimeThreadsCount; jj++) { - if (addedWaitTimeThreads[jj] == filter->activeThreads[ii]) - addedWaitTime = 1; - } - if (!addedWaitTime) { - if (verbose) - fprintf(stderr, " Adding wait time to waiting thread\n"); - filter->times.threadWaitTimes[filter->activeThreads[ii]] += elapsed; - addedWaitTimeThreads[addedWaitTimeThreadsCount++] = filter->activeThreads[ii]; - } - - // Add execution time to this thread while the other is waiting (only add once!) - // [Flag is needed only because outside for loop might iterate through same - // thread twice?] TODO: verify - if (!addedExecutionTimeWhileWaiting) { - if (verbose) - fprintf(stderr, " Adding exec time to this thread while thread waits\n"); - filter->times.threadExecutionTimesWhileWaiting[threadId] += elapsed; - addedExecutionTimeWhileWaiting = 1; - } - - addWaitTime = 1; - } - - // If a method exit matches the EXIT method of an ACTIVE key -> de-activate - // the KEY (not the entire filter!!) - if (!entry && keyMatchesMethod(filter->filterKeys[filter->activationKeys[ii]], - method, 1)) { - if (verbose) - fprintf(stderr, " Exit key matched!\n"); - - // Deactivate by removing (NOT adding) entries from activeThreads and activationKeys - deactivation = 1; // singal that lists should be replaced - } else { - // No de-activation -> copy old entries into new lists - activeThreads[activeCount] = filter->activeThreads[ii]; - activationKeys[activeCount++] = filter->activationKeys[ii]; - } - } - - // If waiting on ANY thread, add wait time to total (but only ONCE!) - if (addWaitTime) { - filter->times.totalWaitTime += elapsed; - } - - // If de-activation occurred, replace lists - if (deactivation) { - // TODO: Free memory from old lists - - // Set new lists - filter->activeThreads = activeThreads; - filter->activationKeys = activationKeys; - filter->activeCount = activeCount; - } else { - // TODO: Free memory from new lists - } - - } // Else, continue (we might be activating the filter on a different thread) - - - if (entry) { // ENTRY - if (verbose) - fprintf(stderr, " Here at the entry\n"); - // If method matches entry key -> activate thread (do not add time since it's a new entry!) - for (ii = 0; ii < filter->numKeys; ii++) { - if (keyMatchesMethod(filter->filterKeys[ii], method, 0)) { - if (verbose) - fprintf(stderr, " Entry key matched!\n"); - // Activate thread only if thread/key pair is not already active - for (jj = 0; jj < filter->activeCount; jj++) { - if (filter->activeThreads[jj] == threadId && filter->activationKeys[jj] == ii) - threadKeyPairActive = 1; - } - // TODO: WORRY ABOUT MEMORY WHEN ACTIVE_COUNT > DEFAULT_ACTIVE_THREAD (unlikely) - // TODO: what if the same thread is active multiple times by different keys? - // nothing, we just have to make sure we dont double-add, and we dont.. - if (!threadKeyPairActive) { - filter->activeThreads[filter->activeCount] = threadId; - filter->activationKeys[filter->activeCount++] = ii; - } - } - } - } else { // EXIT - // If method matches a terminal key -> add remTime to total (no need to active/de-activate) - for (ii = 0; ii < filter->numKeys; ii++) { - if (!deactivation && keyMatchesMethod(filter->filterKeys[ii], method, 1) && - keyMatchesMethod(filter->filterKeys[ii], method, 0)) { - // Add remTime(s) - // TODO: think about how we should add remTimes.. should we add remTime to threads - // that were waiting or being waited on? for now, keep it simple and just add the - // execution time to the current thread. - filter->times.threadExecutionTimes[threadId] += remTime; - addedRemTime = 1; - } - } - } - - return addedExecutionTime | (addedRemTime << 1); -} - -void dumpFilters(Filter** filters) { - int i; - for (i = 0; i < numFilters; i++) { - int j; - fprintf(stderr, "FILTER %s\n", filters[i]->filterName); - for (j = 0; j < filters[i]->numKeys; j++) { - fprintf(stderr, "Keys: %s, type %d", filters[i]->filterKeys[j].keys[0], - filters[i]->filterKeys[j].type[0]); - if (filters[i]->filterKeys[j].keys[1] != NULL) { - fprintf(stderr, " AND %s, type %d", filters[i]->filterKeys[j].keys[1], - filters[i]->filterKeys[j].type[1]); - } - fprintf(stderr, "; flags: %d\n", filters[i]->filterKeys[j].flags); - } - } -} - -/* - * See parseFilters for required data format. - * 'data' must point to the beginning of a filter definition. - */ -char* parseFilter(char* data, char* dataEnd, Filter** filters, int num) { - - Filter* filter; - int next, count, i; - int tmpOffset, tmpKeyLen; - char* tmpKey; - char* key1; - char* key2; - - filter = (Filter*) malloc(sizeof(Filter)); - filter->activeCount = 0; - filter->activeThreads = (int*) calloc(DEFAULT_ACTIVE_THREADS, sizeof(int)); - filter->activationKeys = (int*) calloc(DEFAULT_ACTIVE_THREADS, sizeof(int)); - - next = findNextChar(data + 1, dataEnd - data - 1, '\n'); - if (next < 0) { - // TODO: what should we do here? - // End of file reached... - } - data[next+1] = '\0'; - filter->filterName = data + 1; - data += next + 2; // Careful - - /* - * Count the number of keys (one per line). - */ - count = countLinesToChar(data, dataEnd - data, FILTER_TAG); - if (count <= 0) { - fprintf(stderr, - "ERROR: failed while parsing filter %s (found %d keys)\n", - filter->filterName, count); - return NULL; // TODO: Should do something else - // Could return filter with 0 keys instead (probably better to avoid random segfaults) - } - - filter->filterKeys = (FilterKey*) malloc(sizeof(FilterKey) * count); - - /* - * Extract all entries. - */ - tmpOffset = 0; - for (i = 0; i < count; i++) { - next = findNextChar(data, dataEnd - data, '\n'); - // assert(next > 0); // TODO: revise... (skip if next == 0 ?) - data[next] = '\0'; - tmpKey = data; - - if (*data == FILTER_FLAG_THREAD) { - filter->filterKeys[i].flags = 1; - tmpKey++; - } else { - filter->filterKeys[i].flags = 0; - } - - tmpOffset = findNextChar(tmpKey, next, ','); - - if (tmpOffset < 0) { - // No comma, so only 1 key - key1 = tmpKey; - key2 = tmpKey; - - // Get type for key1 - filter->filterKeys[i].type[0] = FILTER_TYPE_CLASS; // default - tmpOffset = findNextChar(key1, next, '('); - if (tmpOffset > 0) { - if (findNextChar(key1, next, ')') == tmpOffset + 1) { - filter->filterKeys[i].type[0] = FILTER_TYPE_METHOD; - filter->filterKeys[i].type[1] = FILTER_TYPE_METHOD; - } - key1[tmpOffset] = '\0'; - } - } else { - // Pair of keys - tmpKey[tmpOffset] = '\0'; - key1 = tmpKey; - key2 = tmpKey + tmpOffset + 1; - - // Get type for key1 - filter->filterKeys[i].type[0] = FILTER_TYPE_CLASS; - tmpKeyLen = tmpOffset; - tmpOffset = findNextChar(key1, tmpKeyLen, '('); - if (tmpOffset > 0) { - if (findNextChar(key1, tmpKeyLen, ')') == tmpOffset + 1) { - filter->filterKeys[i].type[0] = FILTER_TYPE_METHOD; - } - key1[tmpOffset] = '\0'; - } - - // Get type for key2 - filter->filterKeys[i].type[1] = FILTER_TYPE_CLASS; - tmpOffset = findNextChar(key2, next - tmpKeyLen, '('); - if (tmpOffset > 0) { - if (findNextChar(key2, next - tmpKeyLen, ')') == tmpOffset + 1) { - filter->filterKeys[i].type[1] = FILTER_TYPE_METHOD; - } - key2[tmpOffset] = '\0'; - } - } - - filter->filterKeys[i].keys[0] = key1; - filter->filterKeys[i].keys[1] = key2; - data += next+1; - } - - filter->numKeys = count; - filters[num] = filter; - - return data; -} - -/* - * Parses filters from given file. The file must follow the following format: - * - * *FilterName <- creates a new filter with keys to follow - * A.method() <- key that triggers whenever A.method() enters/exit - * Class <- key that triggers whenever any method from Class enters/exits - * +CrossThread <- same as above, but keeps track of execution times accross threads - * B.m(),C.m() <- key that triggers filter on when B.m() enters and off when C.m() exits - * - * TODO: add concrete example to make things clear - */ -Filter** parseFilters(const char* filterFileName) { - - Filter** filters = NULL; - FILE* fp = NULL; - long len; - char* data; - char* dataEnd; - char* dataStart; - int i, next, count; - - fp = fopen(filterFileName, "r"); - if (fp == NULL) - goto bail; - - if (fseek(fp, 0L, SEEK_END) != 0) { - perror("fseek"); - goto bail; - } - - len = ftell(fp); - if (len == 0) { - fprintf(stderr, "WARNING: Filter file is empty.\n"); - goto bail; - } - rewind(fp); - - data = (char*) malloc(len); - if (data == NULL) { - fprintf(stderr, "ERROR: unable to alloc %ld bytes for filter file\n", len); - goto bail; - } - - // Read file into memory - if (fread(data, 1, len, fp) != (size_t) len) { - fprintf(stderr, "ERROR: unable to read %ld bytes from filter file\n", len); - goto bail; - } - - dataStart = data; - dataEnd = data + len; - - // Figure out how many filters there are - numFilters = 0; - next = -1; - - while (1) { - if (*data == FILTER_TAG) - numFilters++; - next = findNextChar(data, len, '\n'); - if (next < 0) - break; - data += next+1; - len -= next+1; - } - - if (numFilters == 0) { - fprintf(stderr, "WARNING: no filters found. Continuing without filters\n"); - goto bail; - } - - filters = (Filter**) calloc(numFilters, sizeof(Filter *)); - if (filters == NULL) { - fprintf(stderr, "ERROR: unable to alloc memory for filters"); - goto bail; - } - - data = dataStart; - for (i = 0; i < numFilters; i++) { - data = parseFilter(data, dataEnd, filters, i); - } - - return filters; - -bail: - if (fp != NULL) - fclose(fp); - - return NULL; - -} - - -/* * Read the key and data files and return the MethodEntries for those files */ -DataKeys* parseDataKeys(TraceData* traceData, const char* traceFileName, - uint64_t* threadTime, Filter** filters) +DataKeys* parseDataKeys(TraceData* traceData, const char* traceFileName, uint64_t* threadTime) { DataKeys* dataKeys = NULL; MethodEntry **pMethods = NULL; MethodEntry* method; FILE* dataFp = NULL; DataHeader dataHeader; - int ii, jj, numThreads; + int ii; uint64_t currentTime; MethodEntry* caller; @@ -2943,13 +2284,11 @@ DataKeys* parseDataKeys(TraceData* traceData, const char* traceFileName, goto bail; if ((dataKeys = parseKeys(dataFp, 0)) == NULL) - goto bail; + goto bail; if (parseDataHeader(dataFp, &dataHeader) < 0) goto bail; - numThreads = dataKeys->numThreads; - #if 0 FILE *dumpStream = fopen("debug", "w"); #endif @@ -2959,7 +2298,6 @@ DataKeys* parseDataKeys(TraceData* traceData, const char* traceFileName, int action; unsigned int methodId; CallStack *pStack; - /* * Extract values from file. */ @@ -2978,7 +2316,6 @@ DataKeys* parseDataKeys(TraceData* traceData, const char* traceFileName, pStack->top = 0; pStack->lastEventTime = currentTime; pStack->threadStartTime = currentTime; - pStack->remTimes = (uint64_t*) calloc(numFilters, sizeof(uint64_t)); traceData->stacks[threadId] = pStack; } @@ -2989,16 +2326,16 @@ DataKeys* parseDataKeys(TraceData* traceData, const char* traceFileName, #if 0 if (method->methodName) { - fprintf(dumpStream, "%2d %-8llu %d %8llu r %d c %d %s.%s %s\n", - threadId, currentTime, action, pStack->threadStartTime, - method->recursiveEntries, - pStack->top, method->className, method->methodName, - method->signature); + fprintf(dumpStream, "%2d %-8llu %d %8llu r %d c %d %s.%s %s\n", + threadId, currentTime, action, pStack->threadStartTime, + method->recursiveEntries, + pStack->top, method->className, method->methodName, + method->signature); } else { - printf(dumpStream, "%2d %-8llu %d %8llu r %d c %d %s\n", - threadId, currentTime, action, pStack->threadStartTime, - method->recursiveEntries, - pStack->top, method->className); + fprintf(dumpStream, "%2d %-8llu %d %8llu r %d c %d %s\n", + threadId, currentTime, action, pStack->threadStartTime, + method->recursiveEntries, + pStack->top, method->className); } #endif @@ -3031,26 +2368,6 @@ DataKeys* parseDataKeys(TraceData* traceData, const char* traceFileName, /* Push the method on the stack for this thread */ pStack->calls[pStack->top].method = method; pStack->calls[pStack->top++].entryTime = currentTime; - - // For each filter - int result = 0; - for (ii = 0; ii < numFilters; ii++) { - result = filterMethod(method, filters[ii], 1, threadId, numThreads, - currentTime - pStack->lastEventTime, pStack->remTimes[ii]); - - // TODO: make remTimes work properly - // Consider moving remTimes handling together with the rest - // of time handling and clean up the return codes - /* - if (result == 0) { // no time added, no remTime added - pStack->remTimes[ii] += currentTime - pStack->lastEventTime; - } else if (result == 3 || result == 4) { // remTime added - // Reset remTime, since it's been added - pStack->remTimes[ii] = 0; - } - */ - } - } else { /* This is a method exit */ uint64_t entryTime = 0; @@ -3088,24 +2405,6 @@ DataKeys* parseDataKeys(TraceData* traceData, const char* traceFileName, if (method->recursiveEntries == 0) { method->topExclusive += currentTime - pStack->lastEventTime; } - - // For each filter - int result = 0; - for (ii = 0; ii < numFilters; ii++) { - result = filterMethod(method, filters[ii], 0, threadId, numThreads, - currentTime - pStack->lastEventTime, pStack->remTimes[ii]); - - // TODO: make remTimes work properly - /* - if (result == 0) { // no time added, no remTime added - pStack->remTimes[ii] += currentTime - pStack->lastEventTime; - } else if (result == 3 || result == 4) { // remTime added - // Reset remTime, since it's been added - pStack->remTimes[ii] = 0; - } - */ - } - } /* Remember the time of the last entry or exit event */ pStack->lastEventTime = currentTime; @@ -3117,23 +2416,18 @@ DataKeys* parseDataKeys(TraceData* traceData, const char* traceFileName, */ CallStack *pStack; int threadId; - uint64_t elapsedTime = 0; uint64_t sumThreadTime = 0; for (threadId = 0; threadId < MAX_THREADS; ++threadId) { - pStack = traceData->stacks[threadId]; /* If this thread never existed, then continue with next thread */ if (pStack == NULL) continue; - /* Calculate times spent in thread, and add it to total time */ - elapsedTime = pStack->lastEventTime - pStack->threadStartTime; - sumThreadTime += elapsedTime; + /* Also, add up the time taken by all of the threads */ + sumThreadTime += pStack->lastEventTime - pStack->threadStartTime; for (ii = 0; ii < pStack->top; ++ii) { - //printf("in loop\n"); - if (ii == 0) caller = &dataKeys->methods[TOPLEVEL_INDEX]; else @@ -3145,33 +2439,7 @@ DataKeys* parseDataKeys(TraceData* traceData, const char* traceFileName, uint64_t entryTime = pStack->calls[ii].entryTime; uint64_t elapsed = pStack->lastEventTime - entryTime; addInclusiveTime(caller, method, elapsed); - - // For each filter - int result = 0; - for (ii = 0; ii < numFilters; ii++) { - result = filterMethod(method, filters[ii], 0, threadId, numThreads, - currentTime - pStack->lastEventTime, pStack->remTimes[ii]); - - // TODO: make remTimes work properly - /* - if (result == 0) { // no time added, no remTime added - pStack->remTimes[ii] += currentTime - pStack->lastEventTime; - } else if (result == 3 || result == 4) { // remTime added - // Reset remTime, since it's been added - pStack->remTimes[ii] = 0; - } - */ - } } - - /* Save the per-thread elapsed time in the DataKeys struct */ - for (ii = 0; ii < dataKeys->numThreads; ++ii) { - if (dataKeys->threads[ii].threadId == threadId) { - dataKeys->threads[ii].elapsedTime = elapsedTime; - } - } - - } caller = &dataKeys->methods[TOPLEVEL_INDEX]; caller->elapsedInclusive = sumThreadTime; @@ -3208,14 +2476,12 @@ MethodEntry** parseMethodEntries(DataKeys* dataKeys) return pMethods; } - /* * Produce a function profile from the following methods */ -void profileTrace(TraceData* traceData, MethodEntry **pMethods, int numMethods, uint64_t sumThreadTime, - ThreadEntry *pThreads, int numThreads, Filter** filters) +void profileTrace(TraceData* traceData, MethodEntry **pMethods, int numMethods, uint64_t sumThreadTime) { - /* Print the html header, if necessary */ + /* Print the html header, if necessary */ if (gOptions.outputHtml) { printf(htmlHeader, gOptions.sortableUrl); outputTableOfContents(); @@ -3224,8 +2490,6 @@ void profileTrace(TraceData* traceData, MethodEntry **pMethods, int numMethods, printExclusiveProfile(pMethods, numMethods, sumThreadTime); printInclusiveProfile(pMethods, numMethods, sumThreadTime); - printThreadProfile(pThreads, numThreads, sumThreadTime, filters); - createClassList(traceData, pMethods, numMethods); printClassProfiles(traceData, sumThreadTime); @@ -3491,7 +2755,7 @@ void createDiff(DataKeys* d1, uint64_t sum1, DataKeys* d2, uint64_t sum2) if (gOptions.outputHtml) { printf("</table>\n"); printf("<h3>Run 1 methods not found in Run 2</h3>"); - printf(tableHeaderMissing); + printf(tableHeaderMissing, "?"); } for (i = 0; i < d1->numMethods; ++i) { @@ -3503,7 +2767,7 @@ void createDiff(DataKeys* d1, uint64_t sum1, DataKeys* d2, uint64_t sum2) if (gOptions.outputHtml) { printf("</table>\n"); printf("<h3>Run 2 methods not found in Run 1</h3>"); - printf(tableHeaderMissing); + printf(tableHeaderMissing, "?"); } for (i = 0; i < d2->numMethods; ++i) { @@ -3517,10 +2781,10 @@ void createDiff(DataKeys* d1, uint64_t sum1, DataKeys* d2, uint64_t sum2) int usage(const char *program) { - fprintf(stderr, "usage: %s [-ho] [-s sortable] [-d trace-file-name] [-g outfile] [-f filter-file] trace-file-name\n", program); + fprintf(stderr, "Copyright (C) 2006 The Android Open Source Project\n\n"); + fprintf(stderr, "usage: %s [-ho] [-s sortable] [-d trace-file-name] [-g outfile] trace-file-name\n", program); fprintf(stderr, " -d trace-file-name - Diff with this trace\n"); fprintf(stderr, " -g outfile - Write graph to 'outfile'\n"); - fprintf(stderr, " -f filter-file - Filter functions as specified in file\n"); fprintf(stderr, " -k - When writing a graph, keep the intermediate DOT file\n"); fprintf(stderr, " -h - Turn on HTML output\n"); fprintf(stderr, " -o - Dump the dmtrace file instead of profiling\n"); @@ -3533,7 +2797,7 @@ int usage(const char *program) int parseOptions(int argc, char **argv) { while (1) { - int opt = getopt(argc, argv, "d:hg:kos:t:f:"); + int opt = getopt(argc, argv, "d:hg:kos:t:"); if (opt == -1) break; switch (opt) { @@ -3543,9 +2807,6 @@ int parseOptions(int argc, char **argv) case 'g': gOptions.graphFileName = optarg; break; - case 'f': - gOptions.filterFileName = optarg; - break; case 'k': gOptions.keepDotFile = 1; break; @@ -3573,7 +2834,6 @@ int parseOptions(int argc, char **argv) */ int main(int argc, char** argv) { - gOptions.threshold = -1; // Parse the options @@ -3593,15 +2853,9 @@ int main(int argc, char** argv) uint64_t sumThreadTime = 0; - Filter** filters = NULL; - if (gOptions.filterFileName != NULL) { - filters = parseFilters(gOptions.filterFileName); - } - TraceData data1; - memset(&data1, 0, sizeof(data1)); DataKeys* dataKeys = parseDataKeys(&data1, gOptions.traceFileName, - &sumThreadTime, filters); + &sumThreadTime); if (dataKeys == NULL) { fprintf(stderr, "Cannot read trace.\n"); exit(1); @@ -3610,15 +2864,14 @@ int main(int argc, char** argv) if (gOptions.diffFileName != NULL) { uint64_t sum2; TraceData data2; - DataKeys* d2 = parseDataKeys(&data2, gOptions.diffFileName, &sum2, filters); + DataKeys* d2 = parseDataKeys(&data2, gOptions.diffFileName, &sum2); createDiff(d2, sum2, dataKeys, sumThreadTime); freeDataKeys(d2); } else { MethodEntry** methods = parseMethodEntries(dataKeys); - profileTrace(&data1, methods, dataKeys->numMethods, sumThreadTime, - dataKeys->threads, dataKeys->numThreads, filters); + profileTrace(&data1, methods, dataKeys->numMethods, sumThreadTime); if (gOptions.graphFileName != NULL) { createInclusiveProfileGraphNew(dataKeys); } diff --git a/tools/dmtracedump/filters b/tools/dmtracedump/filters deleted file mode 100644 index 96a041ca1..000000000 --- a/tools/dmtracedump/filters +++ /dev/null @@ -1,42 +0,0 @@ -*GC -dvmGcScanRootClassLoader -mspace_walk_free_pages -dvmCollectGarbageInternal -doHeapWork -dvmGetNextHeapWorkerObject -GC -GC2 -GC3 -*Net -setsockopt -+sys_setsockopt [kernel] -socketSelect -send -recv -sendto -recvfrom -+sys_sendto [kernel] -+sys_recvfrom [kernel] -org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection -android.net.http.ConnectionThread -PlainSocketImpl -WebCore::HTMLTokenizer -*IO -select -+sys_select [kernel] -*DB -android.database.sqlite.SQLiteOpenHelper -android.database.sqlite.SQLiteQueryBuilder -android.database.sqlite.SQLiteDatabase -android.database.sqlite.SQLiteDirectCursorDriver -android.database.sqlite.SQLiteQuery -android.database.sqlite.SQLiteProgram -android.database.AbstractCursor -android.database.sqlite.SQLiteCursor -*UI -android.view.View.draw() -android.view.ViewGroup -*Sync -+java.lang.Object.wait() -*Useless -+android.widget.ProgressBar diff --git a/tools/dmtracedump/tests/filters/run_tests.sh b/tools/dmtracedump/tests/filters/run_tests.sh deleted file mode 100755 index cdf87cb96..000000000 --- a/tools/dmtracedump/tests/filters/run_tests.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -failed=0 -for file in $(find $1 -type f -iname 'test*'); do - case $file in - *testFilters) continue; ;; - *Expected) continue; ;; - *Trace) continue; ;; - *.html) continue; ;; - esac - - echo "Running test for $file" - -# create_test_dmtrace $file tmp.trace - dmtracedump -f testFilters -h "$file"Trace > tmp.html 2> /dev/null - - output=`diff tmp.html "$file"Expected 2>&1` - if [ ${#output} -eq 0 ] - then - echo " OK" - else - echo " Test failed: $output" - failed=`expr $failed + 1` - fi - -done - -rm tmp.trace -rm tmp.html - -if [ $failed -gt 0 ] -then - echo "$failed test(s) failed" -else - echo "All tests passed successfully" -fi diff --git a/tools/dmtracedump/tests/filters/testFilters b/tools/dmtracedump/tests/filters/testFilters deleted file mode 100644 index 2c3edb603..000000000 --- a/tools/dmtracedump/tests/filters/testFilters +++ /dev/null @@ -1,9 +0,0 @@ -*FirstFilter -+A.m(),B.m() -+C.m() -+R.m(),S.m() -*SecondFilter -+D.m(),E.m() -+F.m() -*RepeatedFilter -+R.m(),S.m() diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterDiffKeys deleted file mode 100644 index b4367c6dd..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterDiffKeys +++ /dev/null @@ -1,19 +0,0 @@ -# ____ ____ _________ -# __|A |___________|B |_____|Z |_______ -# -# ___________ ____ ____ -# _______|Z |_____|D |_________|E |__ -# -# -0 1 A -2 1 A -0 2 Z -4 2 Z -2 1 B -4 1 B -4 2 D -6 2 D -4 1 Z -8 1 Z -6 2 E -8 2 E diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterDiffKeysExpected deleted file mode 100644 index 7fa789a1a..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterDiffKeysExpected +++ /dev/null @@ -1,232 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 2 12.50 62.50 <a href="#m2">[2]</a> A.m () - 2 12.50 75.00 <a href="#m3">[3]</a> B.m () - 2 12.50 87.50 <a href="#m4">[4]</a> D.m () - 2 12.50 100.00 <a href="#m5">[5]</a> E.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 2/2 8 Z.m () - 12.5% <a href="#m2">[2]</a> 1/1 2 A.m () - 12.5% <a href="#m3">[3]</a> 1/1 2 B.m () - 12.5% <a href="#m4">[4]</a> 1/1 2 D.m () - 12.5% <a href="#m5">[5]</a> 1/1 2 E.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 8 (toplevel) -[1] 50.0% 2+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 12.5% 1+0 2 A.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 12.5% 1+0 2 B.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 12.5% 1+0 2 D.m () - 100.0% excl 2 -<a name="m5"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[5] 12.5% 1+0 2 E.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 0.00 1 main - 8 50.00 100.00 0.00 50.00 0.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 8 ( 50.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 100.00 50.00 main - 0 0.00 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 8 ( 50.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 0 0.00 50.00 main - 8 100.00 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 2+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 12.5 62.5 1+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 12.5 75.0 1+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 12.5 87.5 1+0 D</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d4')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd4">+</span> 2 12.5 100.0 1+0 E</div> -<div class="parent" id="d4"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m5">[5]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 6+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 2+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 62.5 1+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 75.0 1+0 <a href="#m3">[3]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 87.5 1+0 <a href="#m4">[4]</a> D.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 100.0 1+0 <a href="#m5">[5]</a> E.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterDiffKeysTrace Binary files differdeleted file mode 100644 index 8bc74ffad..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterSameKeys deleted file mode 100644 index 76cdea78b..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterSameKeys +++ /dev/null @@ -1,19 +0,0 @@ -# ____ ____ _________ -# __|R |___________|S |_____|Z |_______ -# -# ___________ ____ ____ -# _______|Z |_____|R |_________|S |__ -# -# -0 1 R -2 1 R -0 2 Z -4 2 Z -2 1 S -4 1 S -4 2 R -6 2 R -4 1 Z -8 1 Z -6 2 S -8 2 S diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterSameKeysExpected deleted file mode 100644 index 567282614..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterSameKeysExpected +++ /dev/null @@ -1,210 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 4 25.00 75.00 <a href="#m2">[2]</a> R.m () - 4 25.00 100.00 <a href="#m3">[3]</a> S.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 2/2 8 Z.m () - 25.0% <a href="#m2">[2]</a> 2/2 4 R.m () - 25.0% <a href="#m3">[3]</a> 2/2 4 S.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 8 (toplevel) -[1] 50.0% 2+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 25.0% 2+0 4 R.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[3] 25.0% 2+0 4 S.m () - 100.0% excl 4 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 50.00 1 main - 8 50.00 100.00 50.00 0.00 50.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 16 (100.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 50.00 50.00 main - 8 50.00 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 16 (100.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 50.00 50.00 main - 8 50.00 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 2+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 25.0 75.0 2+0 R</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 4 25.0 100.0 2+0 S</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 6+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 2+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 75.0 2+0 <a href="#m2">[2]</a> R.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 100.0 2+0 <a href="#m3">[3]</a> S.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterSameKeysTrace Binary files differdeleted file mode 100644 index 9ec737814..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadDiffFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterDiffKeys deleted file mode 100644 index d1bcdd31c..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterDiffKeys +++ /dev/null @@ -1,19 +0,0 @@ -# ____ ____ _________ -# __|A |___________|B |_____|Z |_______ -# -# ___________ ____ ____ -# _______|Z |_____|R |_________|S |__ -# -# -0 1 A -2 1 A -0 2 Z -4 2 Z -2 1 B -4 1 B -4 2 R -6 2 R -4 1 Z -8 1 Z -6 2 S -8 2 S diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterDiffKeysExpected deleted file mode 100644 index ef56af57b..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterDiffKeysExpected +++ /dev/null @@ -1,232 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 2 12.50 62.50 <a href="#m2">[2]</a> A.m () - 2 12.50 75.00 <a href="#m3">[3]</a> B.m () - 2 12.50 87.50 <a href="#m4">[4]</a> R.m () - 2 12.50 100.00 <a href="#m5">[5]</a> S.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 2/2 8 Z.m () - 12.5% <a href="#m2">[2]</a> 1/1 2 A.m () - 12.5% <a href="#m3">[3]</a> 1/1 2 B.m () - 12.5% <a href="#m4">[4]</a> 1/1 2 R.m () - 12.5% <a href="#m5">[5]</a> 1/1 2 S.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 8 (toplevel) -[1] 50.0% 2+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 12.5% 1+0 2 A.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 12.5% 1+0 2 B.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 12.5% 1+0 2 R.m () - 100.0% excl 2 -<a name="m5"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[5] 12.5% 1+0 2 S.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 0.00 1 main - 8 50.00 100.00 50.00 0.00 50.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 16 (100.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 50.00 50.00 main - 8 50.00 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 8 ( 50.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 0 0.00 50.00 main - 8 100.00 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 2+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 12.5 62.5 1+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 12.5 75.0 1+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 12.5 87.5 1+0 R</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d4')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd4">+</span> 2 12.5 100.0 1+0 S</div> -<div class="parent" id="d4"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m5">[5]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 6+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 2+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 62.5 1+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 75.0 1+0 <a href="#m3">[3]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 87.5 1+0 <a href="#m4">[4]</a> R.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 100.0 1+0 <a href="#m5">[5]</a> S.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterDiffKeysTrace Binary files differdeleted file mode 100644 index 0559a6af3..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterSameKeys deleted file mode 100644 index 2bb68d7bd..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterSameKeys +++ /dev/null @@ -1,19 +0,0 @@ -# ____ ____ _________ -# __|A |___________|B |_____|Z |_______ -# -# ___________ ____ ____ -# _______|Z |_____|A |_________|B |__ -# -# -0 1 A -2 1 A -0 2 Z -4 2 Z -2 1 B -4 1 B -4 2 A -6 2 A -4 1 Z -8 1 Z -6 2 B -8 2 B diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterSameKeysExpected deleted file mode 100644 index 50b2b98a5..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterSameKeysExpected +++ /dev/null @@ -1,203 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 4 25.00 75.00 <a href="#m2">[2]</a> A.m () - 4 25.00 100.00 <a href="#m3">[3]</a> B.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 2/2 8 Z.m () - 25.0% <a href="#m2">[2]</a> 2/2 4 A.m () - 25.0% <a href="#m3">[3]</a> 2/2 4 B.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 8 (toplevel) -[1] 50.0% 2+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 25.0% 2+0 4 A.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[3] 25.0% 2+0 4 B.m () - 100.0% excl 4 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 0.00 1 main - 8 50.00 100.00 50.00 0.00 0.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 16 (100.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 50.00 50.00 main - 8 50.00 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 2+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 25.0 75.0 2+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 4 25.0 100.0 2+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 6+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 2+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 75.0 2+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 100.0 2+0 <a href="#m3">[3]</a> B.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterSameKeysTrace Binary files differdeleted file mode 100644 index f113fcfcc..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointCrossThreadSameFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterDiffKeys deleted file mode 100644 index e7456c1a5..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterDiffKeys +++ /dev/null @@ -1,17 +0,0 @@ -# ____ ____ ____ ________ ____ ____ ____ -# __|A ||Z ||B ||Z ||D ||Z ||E |__ -# -0 1 A -2 1 A -2 1 Z -4 1 Z -4 1 B -6 1 B -6 1 Z -10 1 Z -10 1 D -12 1 D -12 1 Z -14 1 Z -14 1 E -16 1 E diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterDiffKeysExpected deleted file mode 100644 index 9349375e8..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterDiffKeysExpected +++ /dev/null @@ -1,232 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 2 12.50 62.50 <a href="#m2">[2]</a> A.m () - 2 12.50 75.00 <a href="#m3">[3]</a> B.m () - 2 12.50 87.50 <a href="#m4">[4]</a> D.m () - 2 12.50 100.00 <a href="#m5">[5]</a> E.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 3/3 8 Z.m () - 12.5% <a href="#m2">[2]</a> 1/1 2 A.m () - 12.5% <a href="#m3">[3]</a> 1/1 2 B.m () - 12.5% <a href="#m4">[4]</a> 1/1 2 D.m () - 12.5% <a href="#m5">[5]</a> 1/1 2 E.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 3/3 8 (toplevel) -[1] 50.0% 3+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 12.5% 1+0 2 A.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 12.5% 1+0 2 B.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 12.5% 1+0 2 D.m () - 100.0% excl 2 -<a name="m5"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[5] 12.5% 1+0 2 E.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 16 100.00 100.00 37.50 37.50 0.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 6 ( 37.50% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 6 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 6 ( 37.50% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 6 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 3+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 3+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 12.5 62.5 1+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 12.5 75.0 1+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 12.5 87.5 1+0 D</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d4')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd4">+</span> 2 12.5 100.0 1+0 E</div> -<div class="parent" id="d4"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m5">[5]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 7+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 3+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 62.5 1+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 75.0 1+0 <a href="#m3">[3]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 87.5 1+0 <a href="#m4">[4]</a> D.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 100.0 1+0 <a href="#m5">[5]</a> E.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterDiffKeysTrace Binary files differdeleted file mode 100644 index 09983baca..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterSameKeys deleted file mode 100644 index b51f81e18..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterSameKeys +++ /dev/null @@ -1,17 +0,0 @@ -# ____ ____ ____ ________ ____ ____ ____ -# __|R ||Z ||S ||Z ||R ||Z ||S |__ -# -0 1 R -2 1 R -2 1 Z -4 1 Z -4 1 S -6 1 S -6 1 Z -10 1 Z -10 1 R -12 1 R -12 1 Z -14 1 Z -14 1 S -16 1 S diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterSameKeysExpected deleted file mode 100644 index 41f9625b5..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterSameKeysExpected +++ /dev/null @@ -1,210 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 4 25.00 75.00 <a href="#m2">[2]</a> R.m () - 4 25.00 100.00 <a href="#m3">[3]</a> S.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 3/3 8 Z.m () - 25.0% <a href="#m2">[2]</a> 2/2 4 R.m () - 25.0% <a href="#m3">[3]</a> 2/2 4 S.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 3/3 8 (toplevel) -[1] 50.0% 3+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 25.0% 2+0 4 R.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[3] 25.0% 2+0 4 S.m () - 100.0% excl 4 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 16 100.00 100.00 75.00 0.00 75.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 12 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 12 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 3+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 3+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 25.0 75.0 2+0 R</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 4 25.0 100.0 2+0 S</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 7+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 3+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 75.0 2+0 <a href="#m2">[2]</a> R.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 100.0 2+0 <a href="#m3">[3]</a> S.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterSameKeysTrace Binary files differdeleted file mode 100644 index 2cccf077a..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadDiffFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterDiffKeys deleted file mode 100644 index d4e41a48a..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterDiffKeys +++ /dev/null @@ -1,16 +0,0 @@ -# ____ -# ____ ____ ____ ________ ____|Z |____ -# __|A ||Z ||B ||Z ||C |__ -# -0 1 A -2 1 A -2 1 Z -4 1 Z -4 1 B -6 1 B -6 1 Z -10 1 Z -10 1 C -12 1 Z -14 1 Z -16 1 C diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterDiffKeysExpected deleted file mode 100644 index d81cccc9c..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterDiffKeysExpected +++ /dev/null @@ -1,216 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 4 25.00 75.00 <a href="#m2">[2]</a> C.m () - 2 12.50 87.50 <a href="#m3">[3]</a> A.m () - 2 12.50 100.00 <a href="#m4">[4]</a> B.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 37.5% <a href="#m2">[2]</a> 1/1 6 C.m () - 37.5% <a href="#m1">[1]</a> 2/3 6 Z.m () - 12.5% <a href="#m3">[3]</a> 1/1 2 A.m () - 12.5% <a href="#m4">[4]</a> 1/1 2 B.m () -<a name="m1"></a>---------------------------------------------------- - 75.0% <a href="#m0">[0]</a> 2/3 6 (toplevel) - 25.0% <a href="#m2">[2]</a> 1/3 2 C.m () -[1] 50.0% 3+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 6 (toplevel) -[2] 37.5% 1+0 6 C.m () - 66.7% excl 4 - 33.3% <a href="#m1">[1]</a> 1/3 2 Z.m () -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 12.5% 1+0 2 A.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 12.5% 1+0 2 B.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 16 100.00 100.00 75.00 0.00 0.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 12 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 3+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 3+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 25.0 75.0 1+0 C</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 6 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 12.5 87.5 1+0 A</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 12.5 100.0 1+0 B</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 6+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 3+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 6 25.0 75.0 1+0 <a href="#m2">[2]</a> C.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 87.5 1+0 <a href="#m3">[3]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 100.0 1+0 <a href="#m4">[4]</a> B.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterDiffKeysTrace Binary files differdeleted file mode 100644 index 3f61656ab..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterSameKeys deleted file mode 100644 index 0b3377d6b..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterSameKeys +++ /dev/null @@ -1,17 +0,0 @@ -# ____ ____ ____ ________ ____ ____ ____ -# __|A ||Z ||B ||Z ||A ||Z ||B |__ -# -0 1 A -2 1 A -2 1 Z -4 1 Z -4 1 B -6 1 B -6 1 Z -10 1 Z -10 1 A -12 1 A -12 1 Z -14 1 Z -14 1 B -16 1 B diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterSameKeysExpected deleted file mode 100644 index aa476b36b..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterSameKeysExpected +++ /dev/null @@ -1,203 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 4 25.00 75.00 <a href="#m2">[2]</a> A.m () - 4 25.00 100.00 <a href="#m3">[3]</a> B.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 3/3 8 Z.m () - 25.0% <a href="#m2">[2]</a> 2/2 4 A.m () - 25.0% <a href="#m3">[3]</a> 2/2 4 B.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 3/3 8 (toplevel) -[1] 50.0% 3+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 25.0% 2+0 4 A.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[3] 25.0% 2+0 4 B.m () - 100.0% excl 4 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 16 100.00 100.00 75.00 0.00 0.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 12 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 3+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 3+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 25.0 75.0 2+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 4 25.0 100.0 2+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 7+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 3+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 75.0 2+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 100.0 2+0 <a href="#m3">[3]</a> B.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterSameKeysTrace Binary files differdeleted file mode 100644 index c6ddbe5ab..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingDisjointSingleThreadSameFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterDiffKeys deleted file mode 100644 index d87ac8174..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterDiffKeys +++ /dev/null @@ -1,19 +0,0 @@ -# ____ ____ ________ -# __|A |_____________________|B ||Z |__ -# -# ____ ________ ____ -# _______|D ||Z ||E |______________ -# -# -0 1 A -2 1 A -0 2 D -2 2 D -2 2 Z -6 2 Z -6 2 E -8 2 E -2 1 B -4 1 B -4 1 Z -8 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterDiffKeysExpected deleted file mode 100644 index a97f25c78..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterDiffKeysExpected +++ /dev/null @@ -1,232 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 2 12.50 62.50 <a href="#m2">[2]</a> A.m () - 2 12.50 75.00 <a href="#m3">[3]</a> B.m () - 2 12.50 87.50 <a href="#m4">[4]</a> D.m () - 2 12.50 100.00 <a href="#m5">[5]</a> E.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 2/2 8 Z.m () - 12.5% <a href="#m2">[2]</a> 1/1 2 A.m () - 12.5% <a href="#m3">[3]</a> 1/1 2 B.m () - 12.5% <a href="#m4">[4]</a> 1/1 2 D.m () - 12.5% <a href="#m5">[5]</a> 1/1 2 E.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 8 (toplevel) -[1] 50.0% 2+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 12.5% 1+0 2 A.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 12.5% 1+0 2 B.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 12.5% 1+0 2 D.m () - 100.0% excl 2 -<a name="m5"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[5] 12.5% 1+0 2 E.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 0.00 1 main - 8 50.00 100.00 0.00 100.00 0.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 12 100.00 33.33 main - 0 0.00 66.67 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 8 ( 50.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 0 0.00 0.00 main - 8 100.00 100.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 2+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 12.5 62.5 1+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 12.5 75.0 1+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 12.5 87.5 1+0 D</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d4')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd4">+</span> 2 12.5 100.0 1+0 E</div> -<div class="parent" id="d4"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m5">[5]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 6+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 2+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 62.5 1+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 75.0 1+0 <a href="#m3">[3]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 87.5 1+0 <a href="#m4">[4]</a> D.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 100.0 1+0 <a href="#m5">[5]</a> E.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterDiffKeysTrace Binary files differdeleted file mode 100644 index 832bbfc54..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterSameKeys deleted file mode 100644 index 82ab14216..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterSameKeys +++ /dev/null @@ -1,19 +0,0 @@ -# ____ ____ ________ -# __|R |_____________________|S ||Z |__ -# -# ____ ________ ____ -# _______|R ||Z ||S |______________ -# -# -0 1 R -2 1 R -0 2 R -2 2 R -2 2 Z -6 2 Z -6 2 S -8 2 S -2 1 S -4 1 S -4 1 Z -8 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterSameKeysExpected deleted file mode 100644 index 623478eee..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterSameKeysExpected +++ /dev/null @@ -1,210 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 4 25.00 75.00 <a href="#m2">[2]</a> R.m () - 4 25.00 100.00 <a href="#m3">[3]</a> S.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 2/2 8 Z.m () - 25.0% <a href="#m2">[2]</a> 2/2 4 R.m () - 25.0% <a href="#m3">[3]</a> 2/2 4 S.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 8 (toplevel) -[1] 50.0% 2+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 25.0% 2+0 4 R.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[3] 25.0% 2+0 4 S.m () - 100.0% excl 4 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 50.00 1 main - 8 50.00 100.00 100.00 0.00 100.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 12 100.00 33.33 main - 8 66.67 66.67 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 12 100.00 33.33 main - 8 66.67 66.67 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 2+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 25.0 75.0 2+0 R</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 4 25.0 100.0 2+0 S</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 6+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 2+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 75.0 2+0 <a href="#m2">[2]</a> R.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 100.0 2+0 <a href="#m3">[3]</a> S.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterSameKeysTrace Binary files differdeleted file mode 100644 index 371f150d4..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadDiffFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterDiffKeys deleted file mode 100644 index 511543fdb..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterDiffKeys +++ /dev/null @@ -1,19 +0,0 @@ -# ____ ____ ________ -# __|A |_____________________|B ||Z |__ -# -# ____ ________ ____ -# _______|R ||Z ||S |______________ -# -# -0 1 A -2 1 A -0 2 R -2 2 R -2 2 Z -6 2 Z -6 2 S -8 2 S -2 1 B -4 1 B -4 1 Z -8 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterDiffKeysExpected deleted file mode 100644 index 1193f5ffd..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterDiffKeysExpected +++ /dev/null @@ -1,232 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 2 12.50 62.50 <a href="#m2">[2]</a> A.m () - 2 12.50 75.00 <a href="#m3">[3]</a> B.m () - 2 12.50 87.50 <a href="#m4">[4]</a> R.m () - 2 12.50 100.00 <a href="#m5">[5]</a> S.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 2/2 8 Z.m () - 12.5% <a href="#m2">[2]</a> 1/1 2 A.m () - 12.5% <a href="#m3">[3]</a> 1/1 2 B.m () - 12.5% <a href="#m4">[4]</a> 1/1 2 R.m () - 12.5% <a href="#m5">[5]</a> 1/1 2 S.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 8 (toplevel) -[1] 50.0% 2+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 12.5% 1+0 2 A.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 12.5% 1+0 2 B.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 12.5% 1+0 2 R.m () - 100.0% excl 2 -<a name="m5"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[5] 12.5% 1+0 2 S.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 0.00 1 main - 8 50.00 100.00 100.00 0.00 100.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 12 100.00 33.33 main - 8 66.67 66.67 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 8 ( 50.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 0 0.00 0.00 main - 8 100.00 100.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 2+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 12.5 62.5 1+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 12.5 75.0 1+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 12.5 87.5 1+0 R</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d4')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd4">+</span> 2 12.5 100.0 1+0 S</div> -<div class="parent" id="d4"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m5">[5]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 6+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 2+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 62.5 1+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 75.0 1+0 <a href="#m3">[3]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 87.5 1+0 <a href="#m4">[4]</a> R.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 100.0 1+0 <a href="#m5">[5]</a> S.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterDiffKeysTrace Binary files differdeleted file mode 100644 index 9f87efc65..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterSameKeys deleted file mode 100644 index 6714ddd72..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterSameKeys +++ /dev/null @@ -1,19 +0,0 @@ -# ____ ____ ________ -# __|A |_____________________|B ||Z |__ -# -# ____ ________ ____ -# _______|A ||Z ||B |______________ -# -# -0 1 A -2 1 A -0 2 A -2 2 A -2 2 Z -6 2 Z -6 2 B -8 2 B -2 1 B -4 1 B -4 1 Z -8 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterSameKeysExpected deleted file mode 100644 index 79c2e6300..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterSameKeysExpected +++ /dev/null @@ -1,203 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 4 25.00 75.00 <a href="#m2">[2]</a> A.m () - 4 25.00 100.00 <a href="#m3">[3]</a> B.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 2/2 8 Z.m () - 25.0% <a href="#m2">[2]</a> 2/2 4 A.m () - 25.0% <a href="#m3">[3]</a> 2/2 4 B.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 8 (toplevel) -[1] 50.0% 2+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 25.0% 2+0 4 A.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[3] 25.0% 2+0 4 B.m () - 100.0% excl 4 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 0.00 1 main - 8 50.00 100.00 100.00 0.00 0.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 12 100.00 33.33 main - 8 66.67 66.67 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 2+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 25.0 75.0 2+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 4 25.0 100.0 2+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 6+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 2+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 75.0 2+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 100.0 2+0 <a href="#m3">[3]</a> B.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterSameKeysTrace Binary files differdeleted file mode 100644 index 74e4c53e9..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapCrossThreadSameFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterDiffKeys deleted file mode 100644 index b92471f84..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterDiffKeys +++ /dev/null @@ -1,13 +0,0 @@ -# ____ ____ ____ ____ ____ -# __|A ||D ||E ||B ||Z |__ -# -0 1 A -2 1 A -2 1 D -4 1 D -4 1 E -6 1 E -6 1 B -8 1 B -8 1 Z -10 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterDiffKeysExpected deleted file mode 100644 index 3b2ffc8d3..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterDiffKeysExpected +++ /dev/null @@ -1,232 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 10 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 2 20.00 20.00 <a href="#m1">[1]</a> A.m () - 2 20.00 40.00 <a href="#m2">[2]</a> B.m () - 2 20.00 60.00 <a href="#m3">[3]</a> D.m () - 2 20.00 80.00 <a href="#m4">[4]</a> E.m () - 2 20.00 100.00 <a href="#m5">[5]</a> Z.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 10 (toplevel) - 0.0% excl 0 - 20.0% <a href="#m1">[1]</a> 1/1 2 A.m () - 20.0% <a href="#m2">[2]</a> 1/1 2 B.m () - 20.0% <a href="#m3">[3]</a> 1/1 2 D.m () - 20.0% <a href="#m4">[4]</a> 1/1 2 E.m () - 20.0% <a href="#m5">[5]</a> 1/1 2 Z.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[1] 20.0% 1+0 2 A.m () - 100.0% excl 2 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 20.0% 1+0 2 B.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 20.0% 1+0 2 D.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 20.0% 1+0 2 E.m () - 100.0% excl 2 -<a name="m5"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[5] 20.0% 1+0 2 Z.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 10 100.00 100.00 80.00 40.00 0.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 8 ( 80.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 4 ( 40.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 4 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 2 20.0 20.0 1+0 A</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 20.0 40.0 1+0 B</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 20.0 60.0 1+0 D</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 20.0 80.0 1+0 E</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d4')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd4">+</span> 2 20.0 100.0 1+0 Z</div> -<div class="parent" id="d4"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m5">[5]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 10 100.0 100.0 5+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 20.0 1+0 <a href="#m1">[1]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 40.0 1+0 <a href="#m2">[2]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 60.0 1+0 <a href="#m3">[3]</a> D.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 80.0 1+0 <a href="#m4">[4]</a> E.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 100.0 1+0 <a href="#m5">[5]</a> Z.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterDiffKeysTrace Binary files differdeleted file mode 100644 index c9c086cea..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterSameKeys deleted file mode 100644 index 27b2bf80c..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterSameKeys +++ /dev/null @@ -1,13 +0,0 @@ -# ____ ____ ____ ____ ____ -# __|R ||R ||S ||S ||Z |__ -# -0 1 R -2 1 R -2 1 R -4 1 R -4 1 S -6 1 S -6 1 S -8 1 S -8 1 Z -10 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterSameKeysExpected deleted file mode 100644 index df55cd463..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterSameKeysExpected +++ /dev/null @@ -1,210 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 10 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 4 40.00 40.00 <a href="#m1">[1]</a> R.m () - 4 40.00 80.00 <a href="#m2">[2]</a> S.m () - 2 20.00 100.00 <a href="#m3">[3]</a> Z.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 10 (toplevel) - 0.0% excl 0 - 40.0% <a href="#m1">[1]</a> 2/2 4 R.m () - 40.0% <a href="#m2">[2]</a> 2/2 4 S.m () - 20.0% <a href="#m3">[3]</a> 1/1 2 Z.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[1] 40.0% 2+0 4 R.m () - 100.0% excl 4 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 40.0% 2+0 4 S.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 20.0% 1+0 2 Z.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 10 100.00 100.00 80.00 0.00 80.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 8 ( 80.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 8 ( 80.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 4 40.0 40.0 2+0 R</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 40.0 80.0 2+0 S</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 20.0 100.0 1+0 Z</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 10 100.0 100.0 5+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 4 4 40.0 40.0 2+0 <a href="#m1">[1]</a> R.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 40.0 80.0 2+0 <a href="#m2">[2]</a> S.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 100.0 1+0 <a href="#m3">[3]</a> Z.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterSameKeysTrace Binary files differdeleted file mode 100644 index 0afca4d06..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadDiffFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterDiffKeys deleted file mode 100644 index a494716e6..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterDiffKeys +++ /dev/null @@ -1,11 +0,0 @@ -# ____ ____ ____ ____ -# __|A ||C ||B ||Z |__ -# -0 1 A -2 1 A -2 1 C -4 1 C -4 1 B -6 1 B -6 1 Z -8 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterDiffKeysExpected deleted file mode 100644 index 720d05ac4..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterDiffKeysExpected +++ /dev/null @@ -1,214 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 8 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 2 25.00 25.00 <a href="#m1">[1]</a> A.m () - 2 25.00 50.00 <a href="#m2">[2]</a> B.m () - 2 25.00 75.00 <a href="#m3">[3]</a> C.m () - 2 25.00 100.00 <a href="#m4">[4]</a> Z.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 8 (toplevel) - 0.0% excl 0 - 25.0% <a href="#m1">[1]</a> 1/1 2 A.m () - 25.0% <a href="#m2">[2]</a> 1/1 2 B.m () - 25.0% <a href="#m3">[3]</a> 1/1 2 C.m () - 25.0% <a href="#m4">[4]</a> 1/1 2 Z.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[1] 25.0% 1+0 2 A.m () - 100.0% excl 2 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 25.0% 1+0 2 B.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 25.0% 1+0 2 C.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 25.0% 1+0 2 Z.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 100.00 100.00 75.00 0.00 0.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 6 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 6 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 2 25.0 25.0 1+0 A</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 25.0 50.0 1+0 B</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 25.0 75.0 1+0 C</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 25.0 100.0 1+0 Z</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 8 100.0 100.0 4+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 2 2 25.0 25.0 1+0 <a href="#m1">[1]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 25.0 50.0 1+0 <a href="#m2">[2]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 25.0 75.0 1+0 <a href="#m3">[3]</a> C.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 25.0 100.0 1+0 <a href="#m4">[4]</a> Z.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterDiffKeysTrace Binary files differdeleted file mode 100644 index c5f9a3e5e..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterSameKeys deleted file mode 100644 index bd645af3f..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterSameKeys +++ /dev/null @@ -1,13 +0,0 @@ -# ____ ____ ____ ____ ____ -# __|A ||A ||B ||B ||Z |__ -# -0 1 A -2 1 A -2 1 A -4 1 A -4 1 B -6 1 B -6 1 B -8 1 B -8 1 Z -10 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterSameKeysExpected deleted file mode 100644 index 0e8f300ea..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterSameKeysExpected +++ /dev/null @@ -1,203 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 10 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 4 40.00 40.00 <a href="#m1">[1]</a> A.m () - 4 40.00 80.00 <a href="#m2">[2]</a> B.m () - 2 20.00 100.00 <a href="#m3">[3]</a> Z.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 10 (toplevel) - 0.0% excl 0 - 40.0% <a href="#m1">[1]</a> 2/2 4 A.m () - 40.0% <a href="#m2">[2]</a> 2/2 4 B.m () - 20.0% <a href="#m3">[3]</a> 1/1 2 Z.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[1] 40.0% 2+0 4 A.m () - 100.0% excl 4 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 40.0% 2+0 4 B.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 20.0% 1+0 2 Z.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 10 100.00 100.00 80.00 0.00 0.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 8 ( 80.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 4 40.0 40.0 2+0 A</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 40.0 80.0 2+0 B</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 20.0 100.0 1+0 Z</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 10 100.0 100.0 5+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 4 4 40.0 40.0 2+0 <a href="#m1">[1]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 40.0 80.0 2+0 <a href="#m2">[2]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 100.0 1+0 <a href="#m3">[3]</a> Z.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterSameKeysTrace Binary files differdeleted file mode 100644 index 65e381a13..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingNestedOverlapSingleThreadSameFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingPairCrossThread b/tools/dmtracedump/tests/filters/testWaitingPairCrossThread deleted file mode 100644 index 6c93bc62f..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPairCrossThread +++ /dev/null @@ -1,14 +0,0 @@ -# ____ ____ ____ -# __|A |______|B ||Z |__ -# -# _____ -# ________|Z |_________________ -# -0 1 A -2 1 A -0 2 Z -2 2 Z -2 1 B -4 1 B -4 1 Z -6 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingPairCrossThreadExpected b/tools/dmtracedump/tests/filters/testWaitingPairCrossThreadExpected deleted file mode 100644 index ed45fffca..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPairCrossThreadExpected +++ /dev/null @@ -1,203 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 8 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 4 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 2 25.00 75.00 <a href="#m2">[2]</a> A.m () - 2 25.00 100.00 <a href="#m3">[3]</a> B.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 8 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 2/2 4 Z.m () - 25.0% <a href="#m2">[2]</a> 1/1 2 A.m () - 25.0% <a href="#m3">[3]</a> 1/1 2 B.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[1] 50.0% 2+0 4 Z.m () - 100.0% excl 4 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 25.0% 1+0 2 A.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 25.0% 1+0 2 B.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 6 75.00 75.00 66.67 0.00 0.00 1 main - 2 25.00 100.00 0.00 0.00 0.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 6 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 6 100.00 66.67 main - 0 0.00 33.33 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 4 50.0 50.0 2+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 25.0 75.0 1+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 25.0 100.0 1+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 8 100.0 100.0 4+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 4 4 50.0 50.0 2+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 25.0 75.0 1+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 25.0 100.0 1+0 <a href="#m3">[3]</a> B.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingPairCrossThreadTrace b/tools/dmtracedump/tests/filters/testWaitingPairCrossThreadTrace Binary files differdeleted file mode 100644 index 4e53dfd22..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPairCrossThreadTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingPairSingleThread b/tools/dmtracedump/tests/filters/testWaitingPairSingleThread deleted file mode 100644 index 45375ca87..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPairSingleThread +++ /dev/null @@ -1,11 +0,0 @@ -# ____ ____ ____ ____ -# __|A ||Z ||B ||Z |__ -# -0 1 A -2 1 A -2 1 Z -4 1 Z -4 1 B -6 1 B -6 1 Z -8 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingPairSingleThreadExpected b/tools/dmtracedump/tests/filters/testWaitingPairSingleThreadExpected deleted file mode 100644 index b3e2b3f94..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPairSingleThreadExpected +++ /dev/null @@ -1,203 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 8 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 4 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 2 25.00 75.00 <a href="#m2">[2]</a> A.m () - 2 25.00 100.00 <a href="#m3">[3]</a> B.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 8 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 2/2 4 Z.m () - 25.0% <a href="#m2">[2]</a> 1/1 2 A.m () - 25.0% <a href="#m3">[3]</a> 1/1 2 B.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[1] 50.0% 2+0 4 Z.m () - 100.0% excl 4 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 25.0% 1+0 2 A.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 25.0% 1+0 2 B.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 100.00 100.00 75.00 0.00 0.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 6 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 6 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 4 50.0 50.0 2+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 25.0 75.0 1+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 25.0 100.0 1+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 8 100.0 100.0 4+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 4 4 50.0 50.0 2+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 25.0 75.0 1+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 25.0 100.0 1+0 <a href="#m3">[3]</a> B.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingPairSingleThreadTrace b/tools/dmtracedump/tests/filters/testWaitingPairSingleThreadTrace Binary files differdeleted file mode 100644 index 3f29843a9..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPairSingleThreadTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterDiffKeys deleted file mode 100644 index 05995f370..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterDiffKeys +++ /dev/null @@ -1,23 +0,0 @@ -# ____ ____ ____ ____ -# __|A |___________|B ||Z |____|Z |_______ -# -# ____ ____ ____ ____ -# _______|Z ||D |___________|E |____|Z |__ -# -# -0 1 A -2 1 A -0 2 Z -2 2 Z -2 2 D -4 2 D -2 1 B -4 1 B -4 1 Z -6 1 Z -4 2 E -6 2 E -6 1 Z -8 1 Z -6 2 Z -8 2 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterDiffKeysExpected deleted file mode 100644 index ba83cee11..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterDiffKeysExpected +++ /dev/null @@ -1,232 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 2 12.50 62.50 <a href="#m2">[2]</a> A.m () - 2 12.50 75.00 <a href="#m3">[3]</a> B.m () - 2 12.50 87.50 <a href="#m4">[4]</a> D.m () - 2 12.50 100.00 <a href="#m5">[5]</a> E.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 4/4 8 Z.m () - 12.5% <a href="#m2">[2]</a> 1/1 2 A.m () - 12.5% <a href="#m3">[3]</a> 1/1 2 B.m () - 12.5% <a href="#m4">[4]</a> 1/1 2 D.m () - 12.5% <a href="#m5">[5]</a> 1/1 2 E.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 4/4 8 (toplevel) -[1] 50.0% 4+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 12.5% 1+0 2 A.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 12.5% 1+0 2 B.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 12.5% 1+0 2 D.m () - 100.0% excl 2 -<a name="m5"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[5] 12.5% 1+0 2 E.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 0.00 1 main - 8 50.00 100.00 0.00 50.00 0.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 8 ( 50.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 100.00 50.00 main - 0 0.00 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 8 ( 50.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 0 0.00 50.00 main - 8 100.00 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 4+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 4+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 12.5 62.5 1+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 12.5 75.0 1+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 12.5 87.5 1+0 D</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d4')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd4">+</span> 2 12.5 100.0 1+0 E</div> -<div class="parent" id="d4"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m5">[5]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 8+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 4+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 62.5 1+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 75.0 1+0 <a href="#m3">[3]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 87.5 1+0 <a href="#m4">[4]</a> D.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 100.0 1+0 <a href="#m5">[5]</a> E.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterDiffKeysTrace Binary files differdeleted file mode 100644 index 30fbe3853..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterSameKeys deleted file mode 100644 index f87446405..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterSameKeys +++ /dev/null @@ -1,23 +0,0 @@ -# ____ ____ ____ ____ -# __|R |___________|S ||Z |____|Z |_______ -# -# ____ ____ ____ ____ -# _______|Z ||R |___________|S |____|Z |__ -# -# -0 1 R -2 1 R -0 2 Z -2 2 Z -2 2 R -4 2 R -2 1 S -4 1 S -4 1 Z -6 1 Z -4 2 S -6 2 S -6 1 Z -8 1 Z -6 2 Z -8 2 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterSameKeysExpected deleted file mode 100644 index 93c4a0521..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterSameKeysExpected +++ /dev/null @@ -1,210 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 4 25.00 75.00 <a href="#m2">[2]</a> R.m () - 4 25.00 100.00 <a href="#m3">[3]</a> S.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 4/4 8 Z.m () - 25.0% <a href="#m2">[2]</a> 2/2 4 R.m () - 25.0% <a href="#m3">[3]</a> 2/2 4 S.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 4/4 8 (toplevel) -[1] 50.0% 4+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 25.0% 2+0 4 R.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[3] 25.0% 2+0 4 S.m () - 100.0% excl 4 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 50.00 1 main - 8 50.00 100.00 50.00 0.00 50.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 66.67 50.00 main - 8 66.67 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 66.67 50.00 main - 8 66.67 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 4+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 4+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 25.0 75.0 2+0 R</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 4 25.0 100.0 2+0 S</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 8+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 4+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 75.0 2+0 <a href="#m2">[2]</a> R.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 100.0 2+0 <a href="#m3">[3]</a> S.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterSameKeysTrace Binary files differdeleted file mode 100644 index 6dc18264d..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadDiffFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterDiffKeys deleted file mode 100644 index bdc437336..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterDiffKeys +++ /dev/null @@ -1,23 +0,0 @@ -# ____ ____ ____ ____ -# __|A |___________|B ||Z |____|Z |_______ -# -# ____ ____ ____ ____ -# _______|Z ||R |___________|S |____|Z |__ -# -# -0 1 A -2 1 A -0 2 Z -2 2 Z -2 2 R -4 2 R -2 1 B -4 1 B -4 1 Z -6 1 Z -4 2 S -6 2 S -6 1 Z -8 1 Z -6 2 Z -8 2 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterDiffKeysExpected deleted file mode 100644 index b154ed134..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterDiffKeysExpected +++ /dev/null @@ -1,232 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 2 12.50 62.50 <a href="#m2">[2]</a> A.m () - 2 12.50 75.00 <a href="#m3">[3]</a> B.m () - 2 12.50 87.50 <a href="#m4">[4]</a> R.m () - 2 12.50 100.00 <a href="#m5">[5]</a> S.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 4/4 8 Z.m () - 12.5% <a href="#m2">[2]</a> 1/1 2 A.m () - 12.5% <a href="#m3">[3]</a> 1/1 2 B.m () - 12.5% <a href="#m4">[4]</a> 1/1 2 R.m () - 12.5% <a href="#m5">[5]</a> 1/1 2 S.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 4/4 8 (toplevel) -[1] 50.0% 4+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 12.5% 1+0 2 A.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 12.5% 1+0 2 B.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 12.5% 1+0 2 R.m () - 100.0% excl 2 -<a name="m5"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[5] 12.5% 1+0 2 S.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 0.00 1 main - 8 50.00 100.00 50.00 0.00 50.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 66.67 50.00 main - 8 66.67 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 8 ( 50.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 0 0.00 50.00 main - 8 100.00 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 4+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 4+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 12.5 62.5 1+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 12.5 75.0 1+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 12.5 87.5 1+0 R</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d4')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd4">+</span> 2 12.5 100.0 1+0 S</div> -<div class="parent" id="d4"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m5">[5]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 8+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 4+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 62.5 1+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 75.0 1+0 <a href="#m3">[3]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 87.5 1+0 <a href="#m4">[4]</a> R.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 12.5 100.0 1+0 <a href="#m5">[5]</a> S.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterDiffKeysTrace Binary files differdeleted file mode 100644 index efb0b1b06..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterSameKeys deleted file mode 100644 index 552ae40df..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterSameKeys +++ /dev/null @@ -1,23 +0,0 @@ -# ____ ____ ____ ____ -# __|A |___________|B ||Z |____|Z |_______ -# -# ____ ____ ____ ____ -# _______|Z ||A |___________|B |____|Z |__ -# -# -0 1 A -2 1 A -0 2 Z -2 2 Z -2 2 A -4 2 A -2 1 B -4 1 B -4 1 Z -6 1 Z -4 2 B -6 2 B -6 1 Z -8 1 Z -6 2 Z -8 2 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterSameKeysExpected deleted file mode 100644 index 82b0356b9..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterSameKeysExpected +++ /dev/null @@ -1,203 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 16 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 8 50.00 50.00 <a href="#m1">[1]</a> Z.m () - 4 25.00 75.00 <a href="#m2">[2]</a> A.m () - 4 25.00 100.00 <a href="#m3">[3]</a> B.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 16 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 4/4 8 Z.m () - 25.0% <a href="#m2">[2]</a> 2/2 4 A.m () - 25.0% <a href="#m3">[3]</a> 2/2 4 B.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 4/4 8 (toplevel) -[1] 50.0% 4+0 8 Z.m () - 100.0% excl 8 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 25.0% 2+0 4 A.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[3] 25.0% 2+0 4 B.m () - 100.0% excl 4 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 50.00 50.00 50.00 0.00 0.00 1 main - 8 50.00 100.00 50.00 0.00 0.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 12 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 66.67 50.00 main - 8 66.67 50.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 8 50.0 50.0 4+0 Z</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 8 8 100.0 100.0 4+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 25.0 75.0 2+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 4 25.0 100.0 2+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 16 100.0 100.0 8+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 8 8 50.0 50.0 4+0 <a href="#m1">[1]</a> Z.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 75.0 2+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 25.0 100.0 2+0 <a href="#m3">[3]</a> B.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterSameKeysTrace Binary files differdeleted file mode 100644 index 497e925f1..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapCrossThreadSameFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterDiffKeys deleted file mode 100644 index edf03c54a..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterDiffKeys +++ /dev/null @@ -1,13 +0,0 @@ -# ____ ____ ____ ____ ____ -# __|A ||D ||B ||E ||Z |__ -# -0 1 A -2 1 A -2 1 D -4 1 D -4 1 B -6 1 B -6 1 E -8 1 E -8 1 Z -10 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterDiffKeysExpected deleted file mode 100644 index 2d597200d..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterDiffKeysExpected +++ /dev/null @@ -1,232 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 10 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 2 20.00 20.00 <a href="#m1">[1]</a> A.m () - 2 20.00 40.00 <a href="#m2">[2]</a> B.m () - 2 20.00 60.00 <a href="#m3">[3]</a> D.m () - 2 20.00 80.00 <a href="#m4">[4]</a> E.m () - 2 20.00 100.00 <a href="#m5">[5]</a> Z.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 10 (toplevel) - 0.0% excl 0 - 20.0% <a href="#m1">[1]</a> 1/1 2 A.m () - 20.0% <a href="#m2">[2]</a> 1/1 2 B.m () - 20.0% <a href="#m3">[3]</a> 1/1 2 D.m () - 20.0% <a href="#m4">[4]</a> 1/1 2 E.m () - 20.0% <a href="#m5">[5]</a> 1/1 2 Z.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[1] 20.0% 1+0 2 A.m () - 100.0% excl 2 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 20.0% 1+0 2 B.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 20.0% 1+0 2 D.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 20.0% 1+0 2 E.m () - 100.0% excl 2 -<a name="m5"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[5] 20.0% 1+0 2 Z.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 10 100.00 100.00 60.00 60.00 0.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 6 ( 60.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 6 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 6 ( 60.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 6 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 2 20.0 20.0 1+0 A</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 20.0 40.0 1+0 B</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 20.0 60.0 1+0 D</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 20.0 80.0 1+0 E</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d4')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd4">+</span> 2 20.0 100.0 1+0 Z</div> -<div class="parent" id="d4"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m5">[5]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 10 100.0 100.0 5+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 20.0 1+0 <a href="#m1">[1]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 40.0 1+0 <a href="#m2">[2]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 60.0 1+0 <a href="#m3">[3]</a> D.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 80.0 1+0 <a href="#m4">[4]</a> E.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 100.0 1+0 <a href="#m5">[5]</a> Z.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterDiffKeysTrace Binary files differdeleted file mode 100644 index b9afef48f..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterSameKeys deleted file mode 100644 index 27b2bf80c..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterSameKeys +++ /dev/null @@ -1,13 +0,0 @@ -# ____ ____ ____ ____ ____ -# __|R ||R ||S ||S ||Z |__ -# -0 1 R -2 1 R -2 1 R -4 1 R -4 1 S -6 1 S -6 1 S -8 1 S -8 1 Z -10 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterSameKeysExpected deleted file mode 100644 index df55cd463..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterSameKeysExpected +++ /dev/null @@ -1,210 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 10 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 4 40.00 40.00 <a href="#m1">[1]</a> R.m () - 4 40.00 80.00 <a href="#m2">[2]</a> S.m () - 2 20.00 100.00 <a href="#m3">[3]</a> Z.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 10 (toplevel) - 0.0% excl 0 - 40.0% <a href="#m1">[1]</a> 2/2 4 R.m () - 40.0% <a href="#m2">[2]</a> 2/2 4 S.m () - 20.0% <a href="#m3">[3]</a> 1/1 2 Z.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[1] 40.0% 2+0 4 R.m () - 100.0% excl 4 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 40.0% 2+0 4 S.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 20.0% 1+0 2 Z.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 10 100.00 100.00 80.00 0.00 80.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 8 ( 80.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 8 ( 80.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 4 40.0 40.0 2+0 R</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 40.0 80.0 2+0 S</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 20.0 100.0 1+0 Z</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 10 100.0 100.0 5+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 4 4 40.0 40.0 2+0 <a href="#m1">[1]</a> R.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 40.0 80.0 2+0 <a href="#m2">[2]</a> S.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 100.0 1+0 <a href="#m3">[3]</a> Z.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterSameKeysTrace Binary files differdeleted file mode 100644 index a52929a06..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadDiffFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterDiffKeys b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterDiffKeys deleted file mode 100644 index c53c90df1..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterDiffKeys +++ /dev/null @@ -1,12 +0,0 @@ -# ____ -# ____ ____|B |____ ____ -# __|A ||C ||Z |__ -# -0 1 A -2 1 A -2 1 C -4 1 B -6 1 B -8 1 C -8 1 Z -10 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterDiffKeysExpected b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterDiffKeysExpected deleted file mode 100644 index 18ce892fd..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterDiffKeysExpected +++ /dev/null @@ -1,214 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 10 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 4 40.00 40.00 <a href="#m1">[1]</a> C.m () - 2 20.00 60.00 <a href="#m2">[2]</a> A.m () - 2 20.00 80.00 <a href="#m3">[3]</a> B.m () - 2 20.00 100.00 <a href="#m4">[4]</a> Z.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 10 (toplevel) - 0.0% excl 0 - 60.0% <a href="#m1">[1]</a> 1/1 6 C.m () - 20.0% <a href="#m2">[2]</a> 1/1 2 A.m () - 20.0% <a href="#m4">[4]</a> 1/1 2 Z.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 6 (toplevel) -[1] 60.0% 1+0 6 C.m () - 66.7% excl 4 - 33.3% <a href="#m3">[3]</a> 1/1 2 B.m () -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[2] 20.0% 1+0 2 A.m () - 100.0% excl 2 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m1">[1]</a> 1/1 2 C.m () -[3] 20.0% 1+0 2 B.m () - 100.0% excl 2 -<a name="m4"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[4] 20.0% 1+0 2 Z.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 10 100.00 100.00 80.00 0.00 0.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 8 ( 80.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 4 40.0 40.0 1+0 C</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 4 6 100.0 100.0 1+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 2 20.0 60.0 1+0 A</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 20.0 80.0 1+0 B</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d3')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd3">+</span> 2 20.0 100.0 1+0 Z</div> -<div class="parent" id="d3"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m4">[4]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 10 100.0 100.0 4+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 4 6 40.0 40.0 1+0 <a href="#m1">[1]</a> C.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 60.0 1+0 <a href="#m2">[2]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 80.0 1+0 <a href="#m3">[3]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 100.0 1+0 <a href="#m4">[4]</a> Z.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterDiffKeysTrace b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterDiffKeysTrace Binary files differdeleted file mode 100644 index 23f418786..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterDiffKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterSameKeys b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterSameKeys deleted file mode 100644 index bd645af3f..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterSameKeys +++ /dev/null @@ -1,13 +0,0 @@ -# ____ ____ ____ ____ ____ -# __|A ||A ||B ||B ||Z |__ -# -0 1 A -2 1 A -2 1 A -4 1 A -4 1 B -6 1 B -6 1 B -8 1 B -8 1 Z -10 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterSameKeysExpected b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterSameKeysExpected deleted file mode 100644 index 0e8f300ea..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterSameKeysExpected +++ /dev/null @@ -1,203 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 10 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 4 40.00 40.00 <a href="#m1">[1]</a> A.m () - 4 40.00 80.00 <a href="#m2">[2]</a> B.m () - 2 20.00 100.00 <a href="#m3">[3]</a> Z.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 10 (toplevel) - 0.0% excl 0 - 40.0% <a href="#m1">[1]</a> 2/2 4 A.m () - 40.0% <a href="#m2">[2]</a> 2/2 4 B.m () - 20.0% <a href="#m3">[3]</a> 1/1 2 Z.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[1] 40.0% 2+0 4 A.m () - 100.0% excl 4 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 40.0% 2+0 4 B.m () - 100.0% excl 4 -<a name="m3"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 2 (toplevel) -[3] 20.0% 1+0 2 Z.m () - 100.0% excl 2 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 10 100.00 100.00 80.00 0.00 0.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 8 ( 80.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 8 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 4 40.0 40.0 2+0 A</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 40.0 80.0 2+0 B</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d2')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd2">+</span> 2 20.0 100.0 1+0 Z</div> -<div class="parent" id="d2"> -<div class="leaf"><span class="leaf"> </span> 2 2 100.0 100.0 1+0 <a href="#m3">[3]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 10 100.0 100.0 5+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 4 4 40.0 40.0 2+0 <a href="#m1">[1]</a> A.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 40.0 80.0 2+0 <a href="#m2">[2]</a> B.m ()</div> -<div class="leaf"><span class="leaf"> </span> 2 2 20.0 100.0 1+0 <a href="#m3">[3]</a> Z.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterSameKeysTrace b/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterSameKeysTrace Binary files differdeleted file mode 100644 index 01e95cd90..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingPartialOverlapSingleThreadSameFilterSameKeysTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingSoloCrossThread b/tools/dmtracedump/tests/filters/testWaitingSoloCrossThread deleted file mode 100644 index c9dbd1a09..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingSoloCrossThread +++ /dev/null @@ -1,12 +0,0 @@ -# ____ ____ ____ -# __|C ||Z |__ -# -# ____ -# ________|Z |_____________ -# -0 1 C -0 2 Z -2 2 Z -4 1 C -4 1 Z -6 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingSoloCrossThreadExpected b/tools/dmtracedump/tests/filters/testWaitingSoloCrossThreadExpected deleted file mode 100644 index 409b17ebe..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingSoloCrossThreadExpected +++ /dev/null @@ -1,192 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 8 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 4 50.00 50.00 <a href="#m1">[1]</a> C.m () - 4 50.00 100.00 <a href="#m2">[2]</a> Z.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 8 (toplevel) - 0.0% excl 0 - 50.0% <a href="#m1">[1]</a> 1/1 4 C.m () - 50.0% <a href="#m2">[2]</a> 2/2 4 Z.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 4 (toplevel) -[1] 50.0% 1+0 4 C.m () - 100.0% excl 4 -<a name="m2"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 2/2 4 (toplevel) -[2] 50.0% 2+0 4 Z.m () - 100.0% excl 4 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 6 75.00 75.00 66.67 0.00 0.00 1 main - 2 25.00 100.00 0.00 0.00 0.00 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 6 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 6 100.00 66.67 main - 0 0.00 33.33 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 4 50.0 50.0 1+0 C</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 1+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 50.0 100.0 2+0 Z</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 8 100.0 100.0 3+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 4 4 50.0 50.0 1+0 <a href="#m1">[1]</a> C.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 50.0 100.0 2+0 <a href="#m2">[2]</a> Z.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingSoloCrossThreadTrace b/tools/dmtracedump/tests/filters/testWaitingSoloCrossThreadTrace Binary files differdeleted file mode 100644 index e73f0400a..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingSoloCrossThreadTrace +++ /dev/null diff --git a/tools/dmtracedump/tests/filters/testWaitingSoloSingleThread b/tools/dmtracedump/tests/filters/testWaitingSoloSingleThread deleted file mode 100644 index 3f0753e20..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingSoloSingleThread +++ /dev/null @@ -1,10 +0,0 @@ -# _____ -# ____|Z |____ ____ -# __|C ||Z |__ -# -0 1 C -2 1 Z -4 1 Z -6 1 C -6 1 Z -8 1 Z diff --git a/tools/dmtracedump/tests/filters/testWaitingSoloSingleThreadExpected b/tools/dmtracedump/tests/filters/testWaitingSoloSingleThreadExpected deleted file mode 100644 index 8d22b637f..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingSoloSingleThreadExpected +++ /dev/null @@ -1,194 +0,0 @@ -<html> -<head> -<script type="text/javascript" src="(null)sortable.js"></script> -<script langugage="javascript"> -function toggle(item) { - obj=document.getElementById(item); - visible=(obj.style.display!="none" && obj.style.display!=""); - key=document.getElementById("x" + item); - if (visible) { - obj.style.display="none"; - key.innerHTML="+"; - } else { - obj.style.display="block"; - key.innerHTML="-"; - } -} -function onMouseOver(obj) { - obj.style.background="lightblue"; -} -function onMouseOut(obj) { - obj.style.background="white"; -} -</script> -<style type="text/css"> -div { font-family: courier; font-size: 13 } -div.parent { margin-left: 15; display: none } -div.leaf { margin-left: 10 } -div.header { margin-left: 10 } -div.link { margin-left: 10; cursor: move } -span.parent { padding-right: 10; } -span.leaf { padding-right: 10; } -a img { border: 0;} -table.sortable th { border-width: 0px 1px 1px 1px; background-color: #ccc;} -a { text-decoration: none; } -a:hover { text-decoration: underline; } -table.sortable th, table.sortable td { text-align: left;}table.sortable tr.odd td { background-color: #ddd; } -table.sortable tr.even td { background-color: #fff; } -</style> -</head><body> - -<a name="contents"></a> -<h2>Table of Contents</h2> -<ul> - <li><a href="#exclusive">Exclusive profile</a></li> - <li><a href="#inclusive">Inclusive profile</a></li> - <li><a href="#thread">Thread profile</a></li> - <li><a href="#class">Class/method profile</a></li> - <li><a href="#method">Method/class profile</a></li> -</ul> - -<a name="exclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> -Total cycles: 8 - -<br><br> -Exclusive elapsed times for each method, not including time spent in -children, sorted by exclusive time. - -<br><br> -<pre> - Usecs self % sum % Method - 4 50.00 50.00 <a href="#m1">[1]</a> C.m () - 4 50.00 100.00 <a href="#m2">[2]</a> Z.m () -</pre> -<a name="inclusive"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Inclusive elapsed times for each method and its parents and children, -sorted by inclusive time. - -<br><br> -<pre> -index %/total %/self index calls usecs name -<a name="m0"></a>---------------------------------------------------- -[0] 100.0% 0+0 8 (toplevel) - 0.0% excl 0 - 75.0% <a href="#m1">[1]</a> 1/1 6 C.m () - 25.0% <a href="#m2">[2]</a> 1/2 2 Z.m () -<a name="m1"></a>---------------------------------------------------- - 100.0% <a href="#m0">[0]</a> 1/1 6 (toplevel) -[1] 75.0% 1+0 6 C.m () - 66.7% excl 4 - 33.3% <a href="#m2">[2]</a> 1/2 2 Z.m () -<a name="m2"></a>---------------------------------------------------- - 50.0% <a href="#m0">[0]</a> 1/2 2 (toplevel) - 50.0% <a href="#m1">[1]</a> 1/2 2 C.m () -[2] 50.0% 2+0 4 Z.m () - 100.0% excl 4 -</pre> -<a name="thread"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Elapsed times for each thread, sorted by elapsed time. -Also includes percentage of time spent during the <i>execution</i> of any filters. - -<br><br> -<pre> - Usecs self % sum % FirstFilter % SecondFilter % RepeatedFilter % tid ThreadName - 8 100.00 100.00 75.00 0.00 0.00 1 main - 0 0.00 100.00 nan nan nan 2 foo - 0 0.00 100.00 nan nan nan 3 bar - 0 0.00 100.00 nan nan nan 4 blah -</pre><br /> - -Break-down of portion of time spent by each thread while waiting on a filter method. -<br/><br/> -<pre> -Filter: FirstFilter -Total waiting cycles: 6 ( 75.00% of total) -Details: - - Waiting cycles % of total waiting time execution time while waiting thread name - 6 100.00 100.00 main - 0 0.00 0.00 foo - 0 0.00 0.00 bar - 0 0.00 0.00 blah -</pre> -<br/><br/> -<pre> -Filter: SecondFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<br/><br/> -<pre> -Filter: RepeatedFilter -Total waiting cycles: 0 ( 0.00% of total) -</pre> -<a name="class"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each class, summed over all the methods -in the class. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Class</div> -<div class="link" onClick="javascript:toggle('d0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd0">+</span> 4 50.0 50.0 1+0 C</div> -<div class="parent" id="d0"> -<div class="leaf"><span class="leaf"> </span> 4 6 100.0 100.0 1+0 <a href="#m1">[1]</a> m ()</div> -</div> -<div class="link" onClick="javascript:toggle('d1')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xd1">+</span> 4 50.0 100.0 2+0 Z</div> -<div class="parent" id="d1"> -<div class="leaf"><span class="leaf"> </span> 4 4 100.0 100.0 2+0 <a href="#m2">[2]</a> m ()</div> -</div> -<a name="method"></a> -<hr> -<a href="#contents">[Top]</a> -<a href="#exclusive">[Exclusive]</a> -<a href="#inclusive">[Inclusive]</a> -<a href="#thread">[Thread]</a> -<a href="#class">[Class]</a> -<a href="#method">[Method]</a> -<br><br> - -Exclusive elapsed time for each method, summed over all the classes -that contain a method with the same name. - -<br><br> -<div class="header"><span class="parent"> </span> Cycles %/total Cumul.% Calls+Recur Method</div> -<div class="link" onClick="javascript:toggle('e0')" onMouseOver="javascript:onMouseOver(this)" onMouseOut="javascript:onMouseOut(this)"><span class="parent" id="xe0">+</span> 8 100.0 100.0 3+0 m</div> -<div class="parent" id="e0"> -<div class="leaf"><span class="leaf"> </span> 4 6 50.0 50.0 1+0 <a href="#m1">[1]</a> C.m ()</div> -<div class="leaf"><span class="leaf"> </span> 4 4 50.0 100.0 2+0 <a href="#m2">[2]</a> Z.m ()</div> -</div> - -</body> -</html> diff --git a/tools/dmtracedump/tests/filters/testWaitingSoloSingleThreadTrace b/tools/dmtracedump/tests/filters/testWaitingSoloSingleThreadTrace Binary files differdeleted file mode 100644 index 3a43c46a0..000000000 --- a/tools/dmtracedump/tests/filters/testWaitingSoloSingleThreadTrace +++ /dev/null |
