龙芯多核平台上性能研究工具的设计与实现-design and implementation of performance research tool on godson multi-core platform.docxVIP

  • 6
  • 0
  • 约4.76万字
  • 约 71页
  • 2018-05-28 发布于上海
  • 举报

龙芯多核平台上性能研究工具的设计与实现-design and implementation of performance research tool on godson multi-core platform.docx

龙芯多核平台上性能研究工具的设计与实现-design and implementation of performance research tool on godson multi-core platform

图片目录图1.1Intel处理器发展历史2图1.2基于时间的采样5图1.3基于时间的采样6图2.1Cause寄存器14图2.2性能计数器24号15图2.3性能计数器25号16图2.4性能计数器的工作流程19图2.5通用异常处理表20图2.6单进程采样的执行流程23图3.1TProfiler软件架构26图3.2sys_perf_event_open流程图29图3.3基本硬件事件数组31图3.4Cache相关的硬件事件数组31图3.5性能计数器的操作函数32图3.6内存文件映射33图3.7系统调用的文件操作集34图3.8内存操作函数集35图4.1进程创建流程图37图4.2上下文初始化流程38图4.3进程创建中perf_event_fork流程图39图4.4系统启动时的调度初始化40图4.5进程调度流程图41图4.6支持内存映射的内核函数流程图42图4.7进程描述符扩展43图4.8数据结构perf_event_context44图4.9TProfiler主要数据结构关系图45图4.10perf_event的主要变量46图4.11perf_event_attr主要变量48图4.12perf_mmap_data主要变量49图4.13溢出中断处理过程50图5.1TProfiler测试用例bad_cache54图5.2TProfiler主页面布局55图5.3进程的采样结果55图5.4代码注释56图5.5函数调用图57图5.6多线程测试结果57图5.7实时显示系统采样58图5.8good_cache代码59图5.9TProfiler与Oprofile测试结果对比59表目录表2.1Cause寄存器域14表2.3控制域格式16表2.4计数使能位定义16表2.5计数器0事件16表2.6计数器1事件17表2.7高优先级异常入口20表2.8Cause寄存器IP位对应中断21表5.1TProfiler与VTune功能对比53中国科学技术大学学位论文原创性声明本人声明所呈交的学位论文,是本人在导师指导下进行研究工作所取得的成果。除已特别加以标注和致谢的地方外,论文中不包含任何他人已经发表或撰写过的研究成果。与我一同工作的同志对本研究所做的贡献均已在论文中作了明确的说明。作者签名:签字日期:中国科学技术大学学位论文授权使用声明作为申请学位的条件之一,学位论文著作权拥有者授权中国科学技术大学拥有学位论文的部分使用权,即:学校有权按有关规定向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅,可以将学位论文编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。本人提交的电子文档的内容和纸质论文的内容相一致。保密的学位论文在解密后也遵守此规定。□公开□保密(年)作者签名:导师签名:签字日期:签字日期:第1章绪论1.1研究背景近年来,片上多核(ChipMultiProcessor,CMP)处理器已经取代单核处理器成为主流。为了最大限度的利用多核平台的计算资源,多线程程序的设计提上日程。多线程技术的出现已经有几十年的历史,但是在多核出现之前,它一直属于比较深奥的理论。迄今为止,许多程序员都曾经在常见的多线程设计问题中经历挫折,主要原因是多线程程序的运行行为并不像单线程那样容易理解。因此,我们就需要一种工具来帮助程序员理解多线程程序的运行行为,指导程序员设计出高质量的代码。1.1.1多核处理器的发展在多核处理器出现之前的将近30年里,处理器的性能提升一直接近摩尔定律,即每18个月提升一倍。一直以来微处理器性能的提升主要依靠两个方面:更高的主频和更多的片上资源。主频的提升带来了处理器计算能力的提高,而片上晶体管数目的增加则有力的推动了处理器结构的改进,如超标量结构,分支预测技术,以及片上Cache。这些技术可以大量挖掘指令并行性和有效使用程序的局部性原理。资料显示:二十世纪八十年代中期以来,微处理器频率的提升超过了100倍,而片上集成晶体管的数量的增加则达到了惊人的10000倍。以微处理器的霸主Intel为例:1985年10月17日Intel推出划时代的产品80386,其内部包含了27.5万个晶体管,时钟频率为12.5MHZ,此后逐渐提高到20MHZ、25MHZ、33MHZ、40MHZ;1989年推出的80486片上集成的晶体管数量就突破了100万个,时钟频率达到了50MHZ;直至3.4GHZ的奔腾4(Hinton,2001)至尊版处理器容纳的晶体管数量已经达到了1.78亿个。图1.1给出了单核时代Intel处理器的发展历程。在这段时间里,主频的提升和晶体管的增加给Intel带来了巨大的成功。程序员也习惯了由硬件的发展自然而然的获取程序性能的提高。每当出现新一代的体系结构平台,原来的程序无需修改或者仅做少量改动就可以轻而易举的获得摩尔

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档