有企业邮箱案例的网站,能建商城,网站维护费一年多少钱,交换链接的其它叫法是更多银河麒麟操作系统产品及技术讨论#xff0c;欢迎加入银河麒麟操作系统官方论坛
https://forum.kylinos.cn 了解更多银河麒麟操作系统全新产品#xff0c;请点击访问
麒麟软件产品专区#xff1a;https://product.kylinos.cn
开发者专区#xff1a;https://developer… 更多银河麒麟操作系统产品及技术讨论欢迎加入银河麒麟操作系统官方论坛
https://forum.kylinos.cn 了解更多银河麒麟操作系统全新产品请点击访问
麒麟软件产品专区https://product.kylinos.cn
开发者专区https://developer.kylinos.cn
文档中心https://document.kylinos.cn 服务器环境以及配置
【机型】 处理器 Hygon C86 7265 24-core Processor 内存 512GB 整机类型/架构 X86_64
【内核版本】kernel-4.19.90-23.32.v2101.ky10.x86_64 【OS镜像版本】银河麒麟高级服务器操作系统 Kylin-Server-10-SP2-Release-Build09-20210524-x86_64
现象描述
在银河麒麟高级服务器操作系统V10SP1 系统上跑容器应用从监控上看kylin 的 CPU 和连接耗时都和红帽差距有点大测试数据如下图。 1、intel_kylin组合业务耗时特别高消费数很低
2、hygon_kylin组合消费数比intel_redhat低了30%且高并发下cpu异常升高。
现象分析 intel_kylin问题分析
针对intel_kylin组合业务耗时特别高的问题分析1000线程数业务测试具体数据如下图copy事务最高耗时达到781s平均4s多。 cpu使用率及网络流量监控数据如下图cpu使用率仅15%网络流量最高不足20MB。 在intel_redhat对比测试结果也出现耗时突然升到10000ms的情况分析耗时过高可能是测试程序异常导致数据失真属于异常现象。 hygon_kylin问题分析
1针对hygon_kylin组合在600线程时消费数相比低了30%的问题由于之前没有抓到600线程时的perf、top等数据之后复现时再分析先分析1000线程数具体测试数据。 上图中copy事务耗时最大值达到了18347.5可能部分毛刺影响最终结果抓取机器参数对比hygon和intel机器各项性能指标如下 hygon机器相比intelcpu频率略低测试场景下IPC每cpu周期执行指令数只有intel的一半多因此hygon性能可能相对低一点且测试时限制16C16Ghygon的核心数多的优势没有发挥出来最终可能导致hygon机器测试结果比intel略低。 2分析hygon_kylin环境高并发下cpu使用率升高问题根据hygon_kylin抓到的perf数据转成火焰图如下热点主要在ConsumeMessageT、NettyClientSele和NettyClientWork进程中。 对比intel_redhatperf转换成火焰图效果如下。 在hygon_kylin中ConsumeMessageT进程和intel环境占比接近都达到60%以上说明ConsumeMessageT线程在各自环境中都是主要热点进程
再看hygon_kylin上cpu使用率及网络流量监控cpu使用率达到75% 对比intel_redhat上cpu使用率和网络流量监控平均56%左右。 通过抓取到top数据中的cpu使用率分析hygon_kylin环境cpu使用率升高原因。 对比每个ConsumeMessageT线程cpu使用率两套环境比较接近最高都在12%左右但是统计多个时间点活动的ConsumeMessageT进程数量hygon_kylin环境中有107-135个intel_redhat上只有71-105个猜测cpu使用率可能跟测试程序拉起的ConsumeMessageT线程数有关具体可能跟测试程序关系更大。
小结
通过对上述perf、top数据、测试结果进行分析初步怀疑
1、intel_kylin环境并不是正常情况下测试数据可能有问题
2、hygon机器测试性能低于intel可能会导致测试结果略低
3、hygon_kylin环境在高并发场景下拉起了更多ConsumeMessageT测试进程表现出cpu使用率升高可能跟测试程序关系更大。
分析结果
复测验证
使用相同的测试方法复测收集数据来进行验证期间测试程序经过几次改版最新版本上复测得到的数据如下图所示。 该版本没有复现cpu使用率过高的问题各项指标之间差距也没那么大。
测试波动分析
intel_redhat在800线程时测试了两次第一次测试时消费数较高延迟也较低但是测试快结束时耗时突然升高到第二次测试时耗时平均400ms消费数也有所下降说明测试结果仍会有一定波动。 intel_kylin复测分析
intel_kylin复测数据和cpu使用率如下对比intel_redhat各项数据都相差不大 抓取intel_kylin环境perf数据转换成火焰图效果如下 在intel_redhat环境抓取的perf火焰图 两个环境各个函数热点占比接近没有发现异常开销且测试结果、cpu使用率等也十分接近说明在intel机器下kylin系统和redhat性能相差不大。 hygon_kylin复测分析
hygon_kylin和cpu使用率监控如下图仍有部分毛刺或导致最终平均耗时偏高测试时cpu利用率在40%左右。 抓取perf火焰图如下 对比intel机器海光的swapper占比更小业务进程占比都高一些可能整体cpu使用率仍相对较高而其他函数比例都比较接近没有发现明显异常的函数热点。
再通过抓取top数据进行对比统计各个时间hygon_kylin和intel_rhel机器上的线程数两者都是平均65个活动的ConsumeMessageT线程怀疑新版本的测试程序对此做了一些优化比之前测试的活动线程数少一些相应的cpu使用率也较低。
总结
对比两次测试数据旧版本测试数据如下 新版本各个组合测试数据差距没那么大cpu使用率也更稳定。 结合上述复测数据和问题分析结果
1测试用例中间经过几次改版可能修复了一些bug之前intel_kylin测试时可能是测试程序异常导致数据失真复测intel环境下kylin和redhat系统性能相差不大。
2复测hygon_kylin相比intel_redhat性能仍略差怀疑测试结果有一定波动并且hygon机器性能低于intel测试结果可能跟测试波动和机器性能有关。
3复测hygon_kylin场景cpu使用率没有出现异常升高怀疑也是跟测试程序版本有关最新版已解决相关bug。 目前复测各个环境测试结果相差不大相比之前主要改动为测试程序改版系统没有相关修改怀疑主要还是测试程序的问题。