42、可扩展性能分析的并行跟踪数据接口

可扩展性能分析的并行跟踪数据接口

1. 引言

事件跟踪是并行应用程序事后性能分析中广泛接受的技术。在运行时记录带时间戳的事件,如进入函数或发送消息,之后借助软件工具进行分析。例如,vampir 或 paraver 等图形化跟踪浏览器,提供可缩放的时间线显示,便于手动细粒度调查并行性能行为。

然而,鉴于通常会生成大量数据,像 kojak 工具集中的 expert 这样的自动离线跟踪分析器,能通过自动搜索跟踪中的低效行为复杂模式并量化其重要性,更快地为用户提供相关信息。这种方法通常比使用上述跟踪浏览器进行手动分析更快,并且能保证覆盖整个事件跟踪,不会遗漏任何模式实例。

为简化 expert 中的分析逻辑,它基于 earl 设计。earl 是一个 C++ 类库,提供对单个全局跟踪文件中各个事件的高级访问接口。与只能按顺序读取单个事件记录的低级接口不同,earl 允许随机访问各个事件。为避免限制跟踪文件大小,earl 假设访问具有局部性,允许在主内存中缓冲最近访问的上下文,同时从文件中读取该上下文之外的事件。此外,为支持识别模式组成部分,earl 提供一组抽象来表示给定事件时的执行状态信息,以及相关事件之间的链接。

但顺序分析单个且可能很大的全局跟踪文件,对于在数千个处理器上运行的应用程序扩展性不佳。即使利用访问局部性,主内存可能也不足以存储当前工作集事件。此外,将各个进程生成的本地事件跟踪数据合并为单个全局跟踪文件的步骤非常耗时,而且跟踪数据量可能无法放入单个文件,这表明需要以更分布式的方式进行分析。

为实现现代大规模系统及其上运行的应用程序的可扩展跟踪分析,设计了并行跟踪数据接口 pearl,作为并行跟踪分析算法和工具的构建块。

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值