mirror of
https://git.yoctoproject.org/poky
synced 2026-04-26 00:32:12 +02:00
pybootchartgui: split the output chart into multiple ones
Split the output chart into multiple ones to make it more readable, it only works with "-o path", which means that it doesn't work if the user doesn't want to save the chart to the disk. For example: $ ./pybootchartgui.py /path/to/tmp/buildstats/core-image-sato-qemux86/201205301810/ -f svg -s 5 -o /tmp/ bootchart written to /tmp/bootchart_1.svg bootchart written to /tmp/bootchart_2.svg bootchart written to /tmp/bootchart_3.svg bootchart written to /tmp/bootchart_4.svg bootchart written to /tmp/bootchart_5.svg [YOCTO #2403] (From OE-Core rev: 04a34899e1c15a70babd97a3a59ccb9f8af05bad) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
bc5b86f025
commit
0ad3f75432
@@ -226,3 +226,39 @@ def parse(paths, prune):
|
||||
#monitored_app = state.headers.get("profile.process")
|
||||
#proc_tree = ProcessTree(state.ps_stats, monitored_app, prune)
|
||||
return state
|
||||
|
||||
def split_res(res, n):
|
||||
""" Split the res into n pieces """
|
||||
res_list = []
|
||||
if n > 1:
|
||||
s_list = sorted(res.start.keys())
|
||||
frag_size = len(s_list) / float(n)
|
||||
# Need the top value
|
||||
if frag_size > int(frag_size):
|
||||
frag_size = int(frag_size + 1)
|
||||
else:
|
||||
frag_size = int(frag_size)
|
||||
|
||||
start = 0
|
||||
end = frag_size
|
||||
while start < end:
|
||||
state = ParserState()
|
||||
for i in range(start, end):
|
||||
# Add these lines for reference
|
||||
#state.processes[pn + ":" + task] = [start, end]
|
||||
#state.start[start] = pn + ":" + task
|
||||
#state.end[end] = pn + ":" + task
|
||||
p = res.start[s_list[i]]
|
||||
s = s_list[i]
|
||||
e = res.processes[p][1]
|
||||
state.processes[p] = [s, e]
|
||||
state.start[s] = p
|
||||
state.end[e] = p
|
||||
start = end
|
||||
end = end + frag_size
|
||||
if end > len(s_list):
|
||||
end = len(s_list)
|
||||
res_list.append(state)
|
||||
else:
|
||||
res_list.append(res)
|
||||
return res_list
|
||||
|
||||
Reference in New Issue
Block a user