| 摘要 | 第1-5页 |
| ABSTRACT | 第5-10页 |
| 图片目录 | 第10-11页 |
| 表目录 | 第11-12页 |
| 第1章 绪论 | 第12-20页 |
| ·研究背景 | 第12-15页 |
| ·多核处理器的发展 | 第12-13页 |
| ·龙芯处理器概述 | 第13-14页 |
| ·实现TProfiler 的意义 | 第14-15页 |
| ·性能分析的几种技术 | 第15-17页 |
| ·插桩技术 | 第16页 |
| ·采样技术 | 第16-17页 |
| ·论文的研究目标和主要工作 | 第17-19页 |
| ·论文的结构 | 第19-20页 |
| 第2章 TProfiler 设计方案 | 第20-36页 |
| ·相关工作 | 第20-24页 |
| ·Gprof | 第21页 |
| ·VTune | 第21-22页 |
| ·Oprofile | 第22-23页 |
| ·PAPI | 第23-24页 |
| ·龙芯3A 平台的硬件支持 | 第24-32页 |
| ·Cause 寄存器(13) | 第25-26页 |
| ·性能计数器(24,25) | 第26-29页 |
| ·性能计数器的工作流程 | 第29-30页 |
| ·中断处理 | 第30-32页 |
| ·设计方案 | 第32-35页 |
| ·单进程采样 | 第33-35页 |
| ·分层结构 | 第35页 |
| ·小结 | 第35-36页 |
| 第3章 TProfiler 软件架构 | 第36-48页 |
| ·TProfiler 的功能 | 第36-37页 |
| ·TProfiler 的软件设计框架 | 第37-38页 |
| ·TProfiler 的模块划分 | 第38-43页 |
| ·前端 | 第38-39页 |
| ·后端 | 第39-43页 |
| ·TProfiler 中内核层与用户层的数据交换 | 第43-46页 |
| ·参数传递 | 第43-44页 |
| ·内存映射 | 第44-46页 |
| ·小结 | 第46-48页 |
| 第4章 TProfiler 内核扩展 | 第48-64页 |
| ·单进程采样的实现 | 第48-54页 |
| ·进程创建 | 第48-50页 |
| ·进程调度 | 第50-52页 |
| ·内存映射 | 第52-54页 |
| ·主要数据结构扩展 | 第54-60页 |
| ·与进程上下文相关的扩展 | 第54-56页 |
| ·与硬件事件相关的数据结构 | 第56-60页 |
| ·TProfiler 的溢出中断处理 | 第60-62页 |
| ·小结 | 第62-64页 |
| 第5章 实验验证 | 第64-74页 |
| ·TProfiler 与VTUNE 的功能对比 | 第64-66页 |
| ·基于TProfiler 的性能调优 | 第66-69页 |
| ·图形界面的布局 | 第66-67页 |
| ·针对进程的统计结果 | 第67-68页 |
| ·代码注释 | 第68页 |
| ·函数调用图 | 第68-69页 |
| ·多线程程序的分析 | 第69-70页 |
| ·内核的运行行为 | 第70页 |
| ·TProfiler 与Oprofile 测试结果对比 | 第70-72页 |
| ·小结 | 第72-74页 |
| 第6章 全文总结 | 第74-78页 |
| ·研究工作和成果 | 第74-75页 |
| ·未来工作展望 | 第75-78页 |
| 参考文献 | 第78-80页 |
| 在读期间发表的学术论文与取得的研究成果 | 第80-81页 |
| 在读期间参与的科研项目 | 第81-82页 |
| 致谢 | 第82页 |