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

调优过程

前提条件

  • 服务器和操作系统正常运行。
  • PC端已经安装SSH远程登录工具。
  • 目标环境上鲲鹏DevKit系统性能分析工具已经安装完成,并正常运行。

调优前性能测试

下载实践demo中demo.py,执行以下命令,进行调优前测试。此时插入2000000条数据,每次执行的时候就会执行commit操作。

1
python3 demo.py

数据插入很慢,20秒钟只能插入几百条数据。

执行性能全景分析

  1. 登录系统性能分析Web界面。
  2. 创建“全景分析”任务。
    表1 任务配置参数说明

    参数

    说明

    分析对象

    系统

    分析类型

    全景分析

    采样类型

    系统性能、系统设置、PCIe拓扑、任务调度

    采样时长

    20秒

    采样间隔

    1秒

  3. 任务分析成功后,在分析结果的“性能”页签中查看存储IO中的“%util”以及CPU利用率中的“%iowait”指标。

    从分析结果可以看到,在I/O请求发送到设备期间所消耗的CPU时间百分比、CPU等待存储IO操作导致空闲状态的时间占CPU总时间的百分比都很高。

    图1 查看分析结果-存储IO
    图2 查看分析结果-CPU占用率

性能瓶颈分析和优化

在性能全景分析的结果中,存储IO中的%util以及CPU利用率中的%iowait两项指标的值都很高,说明程序在执行磁盘操作的时间很长。查看代码,发现每一条语句插入时都需和磁盘交互一次。

将代码进行修改,修改后为实践demo中demo1.py,采用多插入的代码,操作命令:

1
python3 demo1.py

执行结果如下:20秒可以执行几十万的数据,插入很快