最新工具手冊請參照 https://github.com/bytedance/emuMonitor/blob/master/docs/emuMonitor_user_manual.pdf
一、簡介
Emulator: BD02_emu Hardware: Palladium Z1 Configmgr:
V21.02.201.s005System Status: ONLINE
Rack 0 has 2 clusters
Cluster 0 has 6 logic drawers CCD: ONLINE
Logic drawer 0 has 8 domains Logic drawer: ONLINE
Domain Owner PID T-Pod Design ElapTime ReservedKey
0.0 <user> n212-207-138:215761 -- -- emu_top 00:44:06 --
0.1 <user> n212-207-138:215761 -- -- emu_top 00:44:06 --
0.2 <user> n212-207-138:215761 -- -- emu_top 00:44:06 --
0.3 <user> n212-207-138:215761 -- -- emu_top 00:44:06 --
0.4 <user> n212-207-138:215761 -- -- emu_top 00:44:06 --
0.5 <user> n212-207-138:215761 -- -- emu_top 00:44:06 --
0.6 <user> n212-207-138:215761 -- -- emu_top 00:44:06 --
0.7 <user> n212-207-138:215761 -- -- emu_top 00:44:06 -- ...
二、環境依賴
2.1 操作系統依賴
2.2 python版本依賴
2.3 使用環境依賴
-
For palladium:環境中已安裝cadence的工具test_server,且執行test_server的機器允許用戶ssh登錄。
-
For zebu:環境中已安裝synopsys的工具zRscManager,且可進行sysstat與sysreport查詢。
三、工具安裝及配置
3.1 工具下載
[liyanqing@personal_pc test]$ git clone https://github.com/bytedance/emuMonitor.git
Cloning into 'emuMonitor'...
remote: Enumerating objects: 38, done.
remote: Counting objects: 100% (38/38), done.
remote: Compressing objects: 100% (32/32), done.
remote: Total 38 (delta 2), reused 38 (delta 2), pack-reused 0
Unpacking objects: 100% (38/38), done.
3.2 工具安裝
[liyanqing.1987@ic-admin2 tools]$ cd emuMonitor-master/
[liyanqing.1987@ic-admin2 emuMonitor-master]$ ls bin
common config db docs install.py lib LICENSE README requirements.txt test tools
[root@ic-admin2 emuMonitor-master]# pip3 install -r requirements.txt
WARNING: Running pip install with root privileges is generally not a good idea. Try `pip3 install --user` instead.
Collecting matplotlib==3.3.4 (from -r requirements.txt (line 1))
Downloading https://bytedpypi.byted.org/packages/pypi/matplotlib/matplotlib-3.3.4-cp36-cp36m-manylinux1_x86_64.whl (11.5MB) 100% |████████████████████████████████| 11.5MB 69.3MB/s ...
Requirement already satisfied: six>=1.5 in /usr/lib/python3.6/site-packages (from python-dateutil>=2.1->matplotlib==3.3.4->-r requirements.txt (line 1))
Installing collected packages: kiwisolver, cycler, pyparsing, pillow, matplotlib, sip, PyQt5, ptyprocess, pexpect
Running setup.py install for pillow ... done
Successfully installed PyQt5-5.10.1 cycler-0.11.0 kiwisolver-1.3.1 matplotlib-3.3.4 pexpect-4.6.0 pillow-8.4.0 ptyprocess-0.7.0 pyparsing-3.1.1 sip-4.19.8
[root@ic-admin2 emuMonitor-master]# python3 install.py
>>> Check python version.
Required python version : (3, 8)
Current python version : (3, 8)
>>> Generate script "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/bin/pmonitor".
>>> Generate script "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/bin/psample".
>>> Generate script "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/bin/zmonitor".
>>> Generate script "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/tools/patch".
>>> Generate script "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/test/pmonitor_test".
>>> Generate script "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/test/psample_test".
>>> Generate script "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/test/zmonitor_test".
>>> Generate script "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/test/gen_test_db".
>>> Generate config file "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/config/config.py".
>>> Generate config file "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/test/test_config/test_config.py".
Done, Please enjoy it.
3.3 工具配置
######## For Palladium ########
# Specify the database directory.
db_path = "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/db"
# Specify test_server path for Palladium Z1.
Z1_test_server = ""
# Specify test_server path for Palladium Z2.
Z2_test_server = ""
# Specify test_server execute hosts for Palladium Z1, make sure you can ssh the host without password.
Z1_test_server_host = ""
# Specify test_server execute hosts for Palladium Z2, make sure you can ssh the host without password.
Z2_test_server_host = ""
# Specify project list file.
project_list_file = "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/config/project_list"
# Specify project & execute_host relationship file.
project_execute_host_file = "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/config/project_execute_host"
# Specify project & user relationship file.
project_user_file = "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/config/project_user"
# Specify which are the primary factors when getting project information, it could be one or serveral items between "user/execute_host/submit_host".
project_primary_factors = "user execute_host"
######## For Zebu ########
# Specify zRscManager path for Zebu.
zRscManager = ""
# Specify zebu system directory.
ZEBU_SYSTEM_DIR = ""
# Specify check status command.
check_status_command = zRscManager + " -nc -sysstat " + ZEBU_SYSTEM_DIR + " -pid ; rm ZEBU_GLOBAL_SYSTEM_DIR_global_mngt.db"
# Specify check report command.
check_report_command = zRscManager + " -nc -sysreport " + ZEBU_SYSTEM_DIR + " -from FROMDATE -to TODATE -noheader -fields 'opendate, closedate, modulesList, user, pid, pc' -nofilter ; rm ZEBU_GLOBAL_SYSTEM_DIR_global_mngt.db"
######## For Palladium ########
# Specify the database directory.
db_path = "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/db"
# Specify test_server path for Palladium Z1.
Z1_test_server = "/ic/software/cadence/vxe/22.04/bin/test_server"
# Specify test_server path for Palladium Z2.
Z2_test_server = "/ic/software/cadence/wxe/21.00.s007/bin/test_server"
# Specify test_server execute hosts for Palladium Z1, make sure you can ssh the host without password.
Z1_test_server_host = "10.212.207.136"
# Specify test_server execute hosts for Palladium Z2, make sure you can ssh the host without password.
Z2_test_server_host = "10.232.129.12"
# Specify project list file.
project_list_file = "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/config/project_list"
# Specify project & execute_host relationship file.
project_execute_host_file = "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/config/project_execute_host"
# Specify project & user relationship file.
project_user_file = "/ic/data/usr/liyanqing.1987/tools/emuMonitor-master/config/project_user"
# Specify which are the primary factors when getting project information, it could be one or serveral items between "user/execute_host/submit_host".
project_primary_factors = "user execute_host"
######## For Zebu ########
# Specify zRscManager path for Zebu.
zRscManager = "/ic/software/synopsys/zebu/Q-2020.03-SP1-4/bin/zRscManager"
# Specify zebu system directory.
ZEBU_SYSTEM_DIR = "/ic/data/usr/emu/common/ZEBU_SYSTEM_DIR"
# Specify check status command.
check_status_command = zRscManager + " -nc -sysstat " + ZEBU_SYSTEM_DIR + " -pid ; rm ZEBU_GLOBAL_SYSTEM_DIR_global_mngt.db"
# Specify check report command.
check_report_command = zRscManager + " -nc -sysreport " + ZEBU_SYSTEM_DIR + " -from FROMDATE -to TODATE -noheader -fields 'opendate, closedate, modulesList, user, pid, pc' -nofilter ; rm ZEBU_GLOBAL_SYSTEM_DIR_global_mngt.db"
四、工具使用
4.1 psample:palladium信息採樣程序
4.1.1 幫助信息
[liyanqing.1987@n212-206-207 palladiumMonitor]$ bin/psample -h
usage: psample.py [-h] [-H {Z1,Z2}]
optional arguments:
-h, --help show this help message and exit
-H {Z1,Z2}, --hardware {Z1,Z2}
Specify hardware, it could be "Z1" or "Z2", default is "Z1".
4.1.2 採樣範例
[liyanqing.1987@personal_pc palladiumMonitor]$ ssh 10.212.207.136
Last login: Thu Mar 16 14:50:38 2023 from n212-206-207
[liyanqing.1987@n212-207-136 palladiumMonitor]$ bin/psample -H Z1
>>> Sampling palladium usage information ...
Sample Time : 20230316_145600
Hardware : Palladium Z1
Emulator : BD02_emu
Status : ONLINE
Utilization : 0.83
[ic_admin@n212-207-136 db]$ tail -n 1 Z1/BD02_emu/utilization 20230316
145600 : 0.83
[ic_admin@n212-207-136 db]$ ls Z1/BD02_emu/2023/03/16/
... 100002 120001 140002 145600
4.2 pmonitor:palladium信息展示程序
4.2.1 工具載入
[liyanqing.1987@personal_pc palladiumMonitor]$ bin/pmonitor
4.2.2 CURRENT頁
4.2.3 HISTORY頁
4.2.4 UTILIZATION頁
4.2.5 COST頁面
4.3 zmonitor: zebu信息展示程序
4.3.1 工具載入
[liyanqing.1987@personal_pc ~]$>zmonitor
4.3.2 CURRENT頁
4.3.3 HISTORY頁
4.3.4 UTILIZATION頁
五、技術支持
-
部署和使用技術指導。
-
接收bug反饋並修復。
-
接收功能修改建議。(需審覈和排期)
-
通過Contact郵箱聯繫開發者。
-
加入官方技術支持羣。
附錄
附1. 變更歷史
日期
|
版本
|
變更描述
|
2023.9.4
|
1.0
|
發佈第一個正式release版本
|
|
|
|