Lines Matching +full:timestamp +full:- +full:names
3 # Copyright (c) 2002-2003, 2009, Jeffrey Roberson <jeff@freebsd.org>
37 # - Install the ports/x11-toolkits/py-tkinter package; e.g.
38 # pkg install x11-toolkits/py-tkinter
39 # - Add KTR_SCHED to KTR_COMPILE and KTR_MASK in your KERNCONF; e.g.
44 # - It is encouraged to increase KTR_ENTRIES size to gather enough
49 # - Rebuild kernel with proper changes to KERNCONF and boot new kernel.
50 # - Run your workload to be profiled.
51 # - While the workload is continuing (i.e. before it finishes), disable
58 # - Dump the trace to a file: 'ktrdump -ct > ktr.out'
59 # - Alternatively, use schedgraph.d script in this directory for getting
61 # - Run the python script: 'python schedgraph.py ktr.out' optionally provide
65 # Add a per-source summary display
67 # Mouse-over popup of full thread/event/row label (currently truncated)
71 # colours to represent them ;-)
129 lineno = -1
294 self.bind("<Control-w>", self.destroycb)
383 self.bind("<Control-w>", self.destroycb)
497 self.bind("<Control-w>", self.destroycb)
510 self.tk_popup(event.x_root-3, event.y_root+3)
543 self.bind("<Control-w>", self.destroycb)
577 r.bind("<Button-1>", self.linkpress)
626 def __init__(self, source, name, cpu, timestamp, attrs): argument
630 self.timestamp = int(timestamp)
641 statstr += " at: " + str(self.timestamp)
646 if (i != len(self.attrs) - 1):
654 ("Timestamp", self.timestamp),
689 return self.source.eventat(self.idx - 1)
697 self.dispcnt -= 1
707 return source.findevent(self.timestamp)
712 def __init__(self, source, name, cpu, timestamp, attrs): argument
713 Event.__init__(self, source, name, cpu, timestamp, attrs)
717 l = canvas.create_oval(xpos - XY_POINT, ypos,
718 xpos + XY_POINT, ypos - (XY_POINT * 2),
727 def __init__(self, source, name, cpu, timestamp, attrs): argument
728 Event.__init__(self, source, name, cpu, timestamp, attrs)
734 self.duration = duration = next.timestamp - self.timestamp
739 print("Unsynchronized timestamp")
740 print(self.cpu, self.timestamp)
741 print(next.cpu, next.timestamp)
744 xpos + delta, ypos - 10, fill=color, width=0,
752 def __init__(self, source, count, cpu, timestamp, attrs): argument
755 Event.__init__(self, source, "count", cpu, timestamp, attrs)
762 self.duration = duration = next.timestamp - self.timestamp
765 print("Unsynchronized timestamp")
766 print(self.cpu, self.timestamp)
767 print(next.cpu, next.timestamp)
772 l = canvas.create_rectangle(xpos, ypos - yhight,
780 def __init__(self, source, cpu, timestamp, last=0): argument
782 cpu = source.events[len(source.events) -1].cpu
785 StateEvent.__init__(self, source, "pad", cpu, timestamp, [])
790 duration = next.timestamp - self.timestamp
838 if (event.cpu != cpu and event.cpu != -1):
847 ypos = ypos - (self.ysize() / 2)
857 ypos - self.ysize() - canvas.bdheight,
878 def findevent(self, timestamp): argument
880 if (event.timestamp >= timestamp and event.type != "pad"):
996 (index, cpu, timestamp, group, id, type, dat, dat1, attrstring) = m.groups();
999 if (self.checkstamp(timestamp) == 0):
1000 print("Bad timestamp at", lineno, ":", end=' ')
1001 print(cpu, timestamp)
1034 args = (dat, cpu, timestamp, attrs)
1062 def checkstamp(self, timestamp): argument
1063 timestamp = int(timestamp)
1065 self.timestamp_f = timestamp;
1067 timestamp -2048> self.timestamp_l):
1069 self.timestamp_l = timestamp;
1091 return (self.timestamp_f - self.timestamp_l);
1110 e = PadEvent(source, -1, self.timestamp_l)
1112 e = PadEvent(source, -1, self.timestamp_f, last=1)
1138 status.startup("Drawing names")
1154 self.bind("<Button-1>", self.master.mousepress);
1155 self.bind("<Button-3>", self.master.mousepressright);
1156 self.bind("<ButtonRelease-1>", self.master.mouserelease);
1157 self.bind("<B1-Motion>", self.master.mousemotion);
1180 self.ratio = (ktrfile.timespan() - 1) / 2**31 + 1
1200 self.bind("<Button-1>", self.mousepress)
1201 self.bind("<Button-3>", self.master.mousepressright);
1202 self.bind("<Button-4>", self.wheelup)
1203 self.bind("<Button-5>", self.wheeldown)
1204 self.bind("<ButtonRelease-1>", self.master.mouserelease);
1205 self.bind("<B1-Motion>", self.master.mousemotion);
1243 self.parent.display_yview("scroll", -1, "units")
1261 midpoint = xstart + ((xend - xstart) / 2)
1268 xsize = (xend - xstart) / 2
1269 self.xview_moveto(midpoint - xsize)
1316 self.names = None
1326 self.bind_all("<Control-q>", self.quitcb)
1335 self.names = SchedNames(self, self.display)
1344 self.names["yscrollcommand"] = self.scrollY.set
1350 self.names.grid(row=1, column=0, sticky=N+S)
1361 self.names.draw()
1369 self.constwidth = width - int(self.display["width"])
1401 # user can't mouseover a non-contiguous area.
1415 return source.y - self.bdheight - source.ysize()
1442 diff = source2.ysize() - source1.ysize()
1443 self.names.moveline(y2, diff);
1445 source1.move(self.display, 0, y1targ - y1)
1446 source2.move(self.display, 0, y2targ - y2)
1447 source1.movename(self.names, 0, y1targ - y1)
1448 source2.movename(self.names, 0, y2targ - y2)
1471 off = newy - self.sourcestart(source)
1472 self.sourceshiftall(newy-1, self.sourcesize(source))
1506 off = (newy + size) - self.sourcestart(source)
1553 self.sourceshift(source, -size)
1564 self.sourceshiftall(start, -self.sourcesize(source))
1570 source.movename(self.names, 0, off)
1571 self.names.moveline(start, off);
1577 self.names.update_idletasks()
1591 (start, end) = self.names.yview()
1592 starty = start * float(self.names.ysize)
1604 self.names.yview(*args)
1609 scalemax = ktrfile.timespan() / (width - self.constwidth)
1613 self.names.updatescroll()