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

Long Latency Load 事件调优(三维动态数组)

  1. 准备源码llc_miss.c。

    实践demo文件可以在demo获取。

    获取源码后赋予执行文件所有用户只读、只写、可执行权限。

    1
    chmod 777 llc_miss.c
    

    编译llc_miss.c并赋予执行文件所有用户只读、只写、可执行权限;并保证上级目录均为755权限。

    1
    gcc -g -Wl,--build-id llc_miss.c -o llc_miss && chmod 777 llc_miss
    
  2. 创建访存分析。

    使用鲲鹏DevKit系统性能分析工具针对llc_miss.c进行访存分析(Miss事件分析),采样范围:用户态。

    表1 任务配置参数说明

    参数

    说明

    分析对象

    应用

    应用路径

    /opt/testdemo/llc_miss

    分析类型

    访存分析

    访存分析类型

    Miss事件分析

    采样时长

    5秒

    采样间隔

    默认值8192

    延迟采样时长

    1秒

    最小延迟(时钟周期)

    默认

    指标类型

    Long Latency Load

    采样范围

    用户态

  3. 查看结果。
    图1 分析结果
  4. 优化源码llc_miss.c。

    优化后的源码为demo中的llc_miss_clean.c

  5. 再次创建访存分析。

    使用鲲鹏DevKit系统性能分析工具针对llc_miss_clean.c进行访存分析(Miss事件分析),采样范围:用户态。

    表2 任务配置参数说明

    参数

    说明

    分析对象

    应用

    应用路径

    /opt/testdemo/llc_miss_clean

    分析类型

    访存分析

    访存分析类型

    Miss事件分析

    采样时长

    5秒

    采样间隔

    默认值8192

    延迟采样时长

    1秒

    最小延迟(时钟周期)

    默认

    指标类型

    Long Latency Load

    采样范围

    用户态

  6. 查看优化后的结果。
    发现优化后的/opt/testdemo/llc_miss_clean构造三维动态数组就Long Latency Load事件发生降低到0。
    图2 优化后的分析结果