是否可以测量时间渲染图吗

2视图(30天)
我想记录的时间渲染图。有办法监听的“开始”和“结束”渲染图吗?
日志呈现时我们可以通过测量时间运行drawnow命令(或drawnow命令的一些变种……)。
h_tic =抽搐;
drawnow ();
elapsed_time = toc (h_tic);
然而这力量呈现发生。我喜欢一个日志渲染的一般解,当这种情况发生。因此我认为我需要使用某种听机制,启动和停止测量基于渲染的启动和停止。

接受的答案

沃尔特·罗伯森
沃尔特·罗伯森 2017年12月23日
不,在当前版本的MATLAB没有方法来衡量所花费的时间,呈现图。drawnow暂停()和()确保呈现子系统已接受的命令他们继续之前,但渲染引擎运行在一个不同的线程,并“接受”的命令不会告诉你任何关于渲染完成后。呈现可能会通过OpenGL层和可能会部分由GPU和其他物品在MATLAB的控制权,所以即使知道当呈现层提交命令另一个硬件水平不会告诉你多长时间图呈现。
最接近的是使用第三方Psychtoolbox,跟踪在一个框架水平——但可以得出什么是相当限制。
1评论
吉姆Hokanson
吉姆Hokanson 2017年12月23日
我希望会有事件显示渲染是开始和结束。我认为至少在结束等markedClean事件可以发现。

登录置评。

答案(1)

骑自行车的人
骑自行车的人 2017年12月23日
取决于你想知道什么, 分析 您的代码可能会得到你想要的。
1评论
吉姆Hokanson
吉姆Hokanson 2017年12月23日
谢谢。我希望这是一个通用的解决方案,日志渲染时间。分析减缓执行,实际上并不显示呈现时间(我认为),除非你有显式的调用渲染时间。我将更新我的问题。

登录置评。

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!