27、基于仿真的性能分析:CPN 工具的应用与实践

基于仿真的性能分析:CPN 工具的应用与实践

1. 从最终标记收集数据

在仿真过程中,监控器起着关键作用,它不仅有用于从 CPN 模型初始标记收集数据的起始函数,还有能从最终标记收集数据的停止函数。不过,停止函数不能用于从绑定元素收集数据。

以协议系统的吞吐量为例,它指的是协议系统在单位时间内交付的正确(非重复)数据包数量。为了计算这个性能指标,我们实现了一个名为 Throughput 的用户自定义数据收集监控器,其停止函数如下:

fun stop () =
let
val received
= Real.fromInt
(DataPacketDelay.count());
val modeltime = Real.fromInt (ModelTime());
in
SOME (received / modeltime)
end;

该监控器无需从位置标记收集数据,因此停止函数没有参数。通过 DataPacketDelay.count() 函数获取仿真期间接收到的正确数据包数量, ModelTime() 函数返回从仿真开始到结束所经过的模型时间。在进行除法运算前,使用 Real.fromInt 函数将观测数量和模型时间转换为实数,最后使用 SOME 构造函数返回数据值。

再看接收器利用率的计算,对应的监控器为 ReceiverUtilisation。接收器在 ReceivePacket 转换发生时开始忙碌,我们可以通过将 ReceivePacket

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值