Lines Matching +full:sample +full:- +full:time
5 //===----------------------------------------------------------------------===//
9 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
11 //===----------------------------------------------------------------------===//
80 void statistic::addSample(double sample) { in addSample() argument
81 sample -= offset; in addSample()
82 KMP_DEBUG_ASSERT(std::isfinite(sample)); in addSample()
84 double delta = sample - meanVal; in addSample()
88 m2 = m2 + delta * (sample - meanVal); in addSample()
90 minVal = std::min(minVal, sample); in addSample()
91 maxVal = std::max(maxVal, sample); in addSample()
93 hist.addSample(sample); in addSample()
110 double delta = other.meanVal - meanVal; in operator +=()
113 // then the compiler would not be able to re-order over brackets. In C++ it in operator +=()
118 meanVal = meanVal * dscBydnsc + other.meanVal * (1 - dscBydnsc); in operator +=()
165 return i - logOffset; in minBin()
167 return -logOffset; in minBin()
172 for (int i = numBins - 1; i >= 0; i--) { in maxBin()
174 return i - logOffset; in maxBin()
176 return -logOffset; in maxBin()
179 // Which bin does this sample belong in ?
180 uint32_t logHistogram::findBin(double sample) { in findBin() argument
181 double v = std::fabs(sample); in findBin()
183 // According to a micro-architect this is likely to be faster than a binary in findBin()
185 // it will only have one branch mis-predict in findBin()
186 for (int b = 0; b < numBins - 1; b++) in findBin()
189 return numBins - 1; in findBin()
192 void logHistogram::addSample(double sample) { in addSample() argument
193 if (sample == 0.0) { in addSample()
201 KMP_DEBUG_ASSERT(std::isfinite(sample)); in addSample()
202 uint32_t bin = findBin(sample); in addSample()
206 bins[bin].total += sample; in addSample()
227 if (i + 1 == numBins - 1) in format()
245 __kmp_stats_thread_ptr->incrementNestValue(); in start()
255 stat->addSample(((tick - startTime) - totalPauseTime).ticks()); in stop()
260 stats_ptr->push_event( in stop()
261 startTime.getValue() - __kmp_stats_start_time.getValue(), in stop()
262 tick.getValue() - __kmp_stats_start_time.getValue(), in stop()
263 __kmp_stats_thread_ptr->getNestValue(), timerEnumValue); in stop()
264 stats_ptr->decrementNestValue(); in stop()
267 /* We accept the risk that we drop a sample because it really did start at in stop()
278 KMP_DEBUG_ASSERT(this->timer_stack.size() == 0); in init()
294 KMP_DEBUG_ASSERT(this->timer_stack.size() > 0); in push()
297 current_timer = &(timer_stack[stack_size - 2]); in push()
298 new_timer = &(timer_stack[stack_size - 1]); in push()
300 current_timer->pause(tick); in push()
301 new_timer->start(tick); in push()
307 // stop current timer (record event/sample) in pop()
313 old_timer = &(timer_stack[stack_size - 1]); in pop()
314 new_timer = &(timer_stack[stack_size - 2]); in pop()
316 old_timer->stop(tick); in pop()
317 new_timer->resume(tick); in pop()
323 // stop current timer (record event/sample) in exchange()
328 KMP_DEBUG_ASSERT(this->timer_stack.size() > 0); in exchange()
331 current_timer = &(timer_stack[stack_size - 1]); in exchange()
332 current_timer->stop(tick); in exchange()
335 new_timer = &(timer_stack[stack_size - 1]); in exchange()
336 new_timer->start(tick); in exchange()
345 this->pop(); in windup()
365 // event2 or zero if event1 == event2. This sorts by start time (lowest to
371 if (ev1->getStart() < ev2->getStart()) in compare_two_events()
372 return -1; in compare_two_events()
373 else if (ev1->getStart() > ev2->getStart()) in compare_two_events()
392 newnode->setGtid(gtid); in push_back()
393 newnode->prev = this->prev; in push_back()
394 newnode->next = this; in push_back()
395 newnode->prev->next = newnode; in push_back()
396 newnode->next->prev = newnode; in push_back()
400 kmp_stats_list *ptr = this->next; in deallocate()
401 kmp_stats_list *delptr = this->next; in deallocate()
404 ptr = ptr->next; in deallocate()
406 delptr->_event_vector.deallocate(); in deallocate()
407 delptr->~kmp_stats_list(); in deallocate()
413 it.ptr = this->next; in begin()
434 this->ptr = this->ptr->next; in operator ++()
438 this->ptr = this->ptr->next; in operator ++()
441 kmp_stats_list::iterator kmp_stats_list::iterator::operator--() { in operator --()
442 this->ptr = this->ptr->prev; in operator --()
445 kmp_stats_list::iterator kmp_stats_list::iterator::operator--(int dummy) { in operator --()
446 this->ptr = this->ptr->prev; in operator --()
450 return this->ptr != rhs.ptr; in operator !=()
453 return this->ptr == rhs.ptr; in operator ==()
456 return this->ptr; in operator *()
468 for (int i = l - 1; i >= 0; --i) { in lastName()
493 buffer[buflen - 1] = char(0); in getImageName()
500 time(&timer); in getTime()
504 strftime(buffer, buflen, "%Y-%m-%d_%H%M%S", tm_info); in getTime()
506 strftime(buffer, buflen, "%Y-%m-%d %H%M%S", tm_info); in getTime()
523 case 't': // Insert time and date in generateFilename()
548 // init() is called very near the beginning of execution time in the constructor
604 fprintf(statsOut, "%-35s, %s\n", timeStat::name(s), in printTimerStats()
605 stat->format(tag, true).c_str()); in printTimerStats()
611 fprintf(statsOut, "Total_%-29s, %s\n", timeStat::name(s), in printTimerStats()
621 if (stat->getCount() != 0) { in printTimerStats()
625 fprintf(statsOut, "%s\n", stat->getHist()->format(tag).c_str()); in printTimerStats()
637 fprintf(statsOut, "%-25s, %s\n", counter::name(counter_e(s)), in printCounterStats()
638 stat->format(' ', true).c_str()); in printCounterStats()
646 if (stat->getCount() != 0) { in printCounterStats()
648 fprintf(statsOut, "%s\n", stat->getHist()->format(' ').c_str()); in printCounterStats()
661 fprintf(statsOut, "%-25s, %s\n", counter::name(counter_e(c)), in printCounters()
662 formatSI((double)stat->getValue(), 9, ' ').c_str()); in printCounters()
669 // sort by start time before printing in printEvents()
670 theEvents->sort(); in printEvents()
671 for (int i = 0; i < theEvents->size(); i++) { in printEvents()
672 kmp_stats_event ev = theEvents->at(i); in printEvents()
677 1.2 - (ev.getNestLevel() * 0.2), color.r, color.g, color.b, in printEvents()
688 for (it = __kmp_stats_list->begin(); it != __kmp_stats_list->end(); it++) { in windupExplicitTimers()
690 ptr->getPartitionedTimers()->windup(); in windupExplicitTimers()
691 ptr->endLife(); in windupExplicitTimers()
697 int size = __kmp_stats_list->size(); in printPloticusFile()
714 " yautorange: -1 %d\n\n", in printPloticusFile()
720 " label: Time (ticks)\n" in printPloticusFile()
730 size - 1); in printPloticusFile()
764 * the date and time this experiment ran.
769 std::time_t now = std::time(0); in printHeaderInfo()
774 fprintf(statsOut, "# Time of run: %s\n", &buffer[0]); in printHeaderInfo()
797 // constructors so will take time to create. in outputStats()
821 for (it = __kmp_stats_list->begin(); it != __kmp_stats_list->end(); it++) { in outputStats()
822 int t = (*it)->getGtid(); in outputStats()
826 printTimerStats(statsOut, (*it)->getTimers(), 0); in outputStats()
827 printCounters(statsOut, (*it)->getCounters()); in outputStats()
832 kmp_stats_event_vector events = (*it)->getEventVector(); in outputStats()
847 statistic *threadStat = (*it)->getTimer(s); in outputStats()
852 totalStats[s].addSample(threadStat->getTotal()); in outputStats()
859 allCounters[c].addSample((double)(*it)->getCounter(c)->getValue()); in outputStats()
881 for (it = __kmp_stats_list->begin(); it != __kmp_stats_list->end(); it++) { in __kmp_reset_stats()
882 timeStat *timers = (*it)->getTimers(); in __kmp_reset_stats()
883 counter *counters = (*it)->getCounters(); in __kmp_reset_stats()
892 (*it)->resetEventVector(); in __kmp_reset_stats()
899 __kmp_stats_global_output->outputStats(heading); in __kmp_output_stats()
920 __kmp_stats_list->deallocate(); in __kmp_stats_fini()