并行性能评估工具中的工具优化与GASP接口
1. 并行性能评估工具的优化方法
在并行性能评估中,为了有效控制性能数据的收集和分析,有多种工具优化方法。
1.1 阈值控制
在执行过程中,可设置一个阈值。当例程执行低于该阈值时,仅记录该实例到跟踪文件中。通过这种方式,虽会截断超出给定阈值的例程的性能信息,但能将性能数据限制在前几个例程中,且消息通信事件不受此选项影响。
1.2 基于调用路径的控制
KOJAK工具包中的Expert工具可通过检查通信事件自动诊断性能瓶颈。为生成适用于Expert的跟踪文件,可限制仅对调用MPI例程的例程进行插桩,具体操作步骤如下:
1. 配置TAU生成调用路径配置文件。
2. 用户将调用路径深度设置为足够高的阈值,使每个调用路径都能到达顶级例程。
3. 使用脚本解析配置文件,提取直接或间接调用MPI例程的例程名称。
4. 将该列表作为包含列表提供给插桩器,插桩器仅对与MPI例程有调用路径的例程进行插桩。
不过,此方法存在缺点。若一个例程在某些执行实例中调用MPI例程,而在其他实例中不调用,所有实例都会被记录,可能会增加跟踪文件大小,且需要启用调用路径分析重新执行程序。
1.3 基于跟踪的控制
可通过事件缓冲区跟踪所有调用。当执行MPI例程时,检查缓冲区,移除不直接调用该MPI例程的跟踪记录。但此方案在使用固定大小缓冲区的跟踪生成库中效果不佳。当缓冲区溢出时,所有记录都将刷新到跟踪文件。若MPI事件未发生,无法确定未来是否会发生,因此需增加跟踪缓冲区大小并继续处理跟踪记录。当遇到MPI事件时,可再次检查跟踪
超级会员免费看
订阅专栏 解锁全文
2835

被折叠的 条评论
为什么被折叠?



