鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

视频流云手机密度测试

  1. 从DemoVideoEngine.tar.gz中解压cfct_config配置文件。
    #cd /home/kbox_video/
    #tar -xvf DemoVideoEngine.tar.gz cfct_config
    #chmod 644 cfct_config
  2. 核对BIOS配置参数及GPU工作模式,参照配置BIOS配置GPU工作模式
  3. 通过BMC调整服务器的风扇转速百分比为100%。
    1. SSH登录BMC。
      ssh {BMC用户名}@{BMC IP地址}
    2. 将风扇模式设置为手动调速。
      ipmcset -d fanmode -v 1 0
    3. 调整风扇转速百分比为100%。
      ipmcset -d fanlevel -v 100
    4. 查询风扇状态。
      ipmcget -d faninfo

    命令执行的回显信息如下:

  4. GPU驱动进程绑定到空闲核,网卡中断绑定空闲核请参见《Kbox云手机容器 特性指南》中的“网卡绑定CPU”章节。
    #ps -ef |grep gfx
    #taskset -pc 32-33 1379
    #taskset -pc 64-65 1511

    若查询出4个GPU驱动进程,则将前2个驱动进程绑到32-33核,后2个驱动进程绑到64-65核。

  5. 单队列网卡中断散列。对单队列网卡可以使用RPS将中断分散到各个core处理,避免软中断集中到一个core导致该core软中断过高形成性能瓶颈。具体的方法是输入如下内容,本文以网卡enp125s0f1为例进行说明。
    #systemctl stop irqbalance.service
    #systemctl disable irqbalance.service
    #echo ff > /sys/class/net/enp125s0f1/queues/rx-0/rps_cpus
    #echo 4096 > /sys/class/net/enp125s0f1/queues/rx-0/rps_flow_cnt
    #echo 32768 > /proc/sys/net/core/rps_sock_flow_entries
  6. 将cfct_config配置文件中“CPU_BIND_MODE”字段设置为如表1所示值(“0”表示2容器2核的绑核方式)。
    表1 测试规格与CPU_BIND_MODE值对应关系

    测试规格

    CPU_BIND_MODE

    7265F+W6800密度摸高115路,地铁跑酷新手关,720p@30fps

    0

    7260+W6600密度测试100路,地铁跑酷新手关,720p@30fps

    0

    若测试的是表1中7260+W6600密度测试100路的规格,请确认已执行W6600密度测试配置修改步骤。

  7. 使用cfct_video脚本启动多路容器,此处启动容器的数量需要根据步骤6中表1具体测试规格决定,这里以115路为例,依次输入如下命令。
    以下四行命令的含义分别是:启动云手机、打开游戏、进入新手关页面、截图。
    #./cfct_video qstart 1 115
    #./cfct_video start_game 1 115
    #./cfct_video play_game 1 115
    #./cfct_video screencap 1 115

    待截图完成后,将截图下载至本地。若看到截图全为地铁跑酷游戏界面,如下图所示,即证明已成功启动。

  8. 在另外一台服务器上准备两台Kbox云手机(以kbox_1和kbox_2为例)用来安装压测工具(CloudPhoneClientEmulator_20230413.apk)或视频流客户端APK。

    Kbox云手机规格要求:8核/32GB内存/64GB存储空间,两台Kbox云手机上安装好压测工具后,连接服务端(每个压测工具限制同时连接数不能超过58路),收集15min数据。

    具体方法是,打开压测工具,在左上角输入15,右上角单击“开始”。

    15分钟倒计时结束后会生成如下图的帧率数据分析报告:

  9. 视频流引擎中获取native_perf_tools_20230415.tar.gz并解压,进入native_perf_tools文件夹,依次输入以下命令,收集15min数据。`{prefix_number}`为存储采集数据文件夹的前缀,下图中以`115`为例。
    #source env.sh
    #./native_get_perf_data.sh all {prefix_number}

  10. 收集完成后,将以下几个数据文件下载至本地,解析后生成测试报告。
    1. 服务端“native_perf_tools”文件夹下的log文件夹,其中包含了服务端的性能数据,如CPU、GPU、编码卡等性能数据。
    2. 客户端的“/home/mount/data/kbox_1/data/media/0/logs”“/home/mount/data/kbox_2/data/media/0/logs”目录下,压测工具收集的接收帧率数据。
    3. 真机客户端的“/sdcard/log”目录下的client.log,是客户端的日志,包括解码帧率、网络Lag等数据。
    4. 将上述3步所说的文件和文件夹放到同一个路径下,此处以“D:\tmp”为例。
      下载ExtractingData_20230310.tar.gz并解压,进入“ExtractingData”文件夹下,输入:
      python parse.py D:\tmp

      “D:\tmp”下会生成一个output文件夹,里面有相应的表格和图片。