alibaba / alibaba/tidevice

a question about the performance data.

Open
#290 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
2.6k
Forks
469
PR merge metrics
No merged PRs in 30d

Description

I'm testing some test automation open source.
When measuring performance information, the results of pyidevice and tidevice differ in some ways.
Compared to pyidevice, The data in the first row of the tidvice result does not exist. The rest of the data exists.
Can you check this? I started the app after executing the command. mabye timing issues?

$ tidevice perf -o cpu -B com.aaa.bbb
**??? // missing data**
{'timestamp': 1678093097101, 'pid': 5020, 'value': 0.33430576602225337, 'sys_value': 236.2912087912088, 'count': 6}
{'timestamp': 1678093097862, 'pid': 5020, 'value': 0.013103374504391915, 'sys_value': 225.5775577557756, 'count': 6}
{'timestamp': 1678093098862, 'pid': 5020, 'value': 0.018070079154281122, 'sys_value': 123.35393539353935, 'count': 6}
{'timestamp': 1678093099858, 'pid': 5020, 'value': 0.12342693958897713, 'sys_value': 143.8644688644689, 'count': 6}
{'timestamp': 1678093100859, 'pid': 5020, 'value': 0.41109598427681404, 'sys_value': 160.46321102698505, 'count': 6}
{'timestamp': 1678093101860, 'pid': 5020, 'value': 0.09325557107446522, 'sys_value': 214.24900057110224, 'count': 6}
{'timestamp': 1678093102864, 'pid': 5020, 'value': 0.0028057081157343753, 'sys_value': 133.65987460815046, 'count': 6}

$ pyidevice instruments sysmontap -b com.aaa.bbb -proc_filter physFootprint,cpuUsage --processes --sort cpuUsage
**[('xxx', {'cpuUsage': 1.1589278758745025, 'pid': 5020, 'physFootprint': 115983280, 'name': 'xxx'})]**
[('xxx', {'cpuUsage': 0.33430576602225337, 'pid': 5020, 'physFootprint': 32736136, 'name': 'xxx'})]
[('xxx', {'cpuUsage': 0.013103374504391915, 'pid': 5020, 'physFootprint': 32801672, 'name': 'xxx'})]
[('xxx', {'cpuUsage': 0.018070079154281122, 'pid': 5020, 'physFootprint': 32899976, 'name': 'xxx'})]
[('xxx', {'cpuUsage': 0.12342693958897713, 'pid': 5020, 'physFootprint': 33178504, 'name': 'xxx'})]
[('xxx', {'cpuUsage': 0.41109598427681404, 'pid': 5020, 'physFootprint': 33325960, 'name': 'xxx'})]
[('xxx', {'cpuUsage': 0.09325557107446522, 'pid': 5020, 'physFootprint': 33473416, 'name': 'xxx'})]
[('xxx', {'cpuUsage': 0.0028057081157343753, 'pid': 5020, 'physFootprint': 33473416, 'name': 'xxx'})]

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the comparison with `tidevice perf -o cpu -B com.aaa.bbb` and `pyidevice instruments sysmontap -b com.aaa.bbb -proc_filter physFootprint,cpuUsage --processes --sort cpuUsage`, paying attention to when the app starts. Trace how the first performance sample is collected and determine whether the missing row is expected startup timing behavior. Done means the first sample is explained or the two command outputs include equivalent data.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, performance
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.