作者automaton ()
看板MATLAB
标题[讨论] FOR 回圈突然变超级慢??
时间Thu Aug 9 20:41:37 2018
各位学长/姊 好:
如下图,为什麽我的for回圈在116次以内都是0.6秒内完成,
但是一跨过116次後所消耗的时间就变超久,而且不成比例的耗时。
想请问各位学长姊,这是什麽问题? 我该如何改善呢? 谢谢喔!
以前相同的程式码在64bit下执行,没有这个问题。
今天因为要配合资料库的需求改使用32bit版本,请问会是这个问题点吗?
https://imgur.com/a/t2YihNy
https://imgur.com/a/Iy1Ro2S
https://imgur.com/a/5zGX9Ir
https://imgur.com/a/DmPA9on
https://imgur.com/a/4B9imAP
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.112.43.9
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1533818499.A.1FF.html
1F:推 profyang: jit compiler的关系? 08/09 22:25
请问profyang学长,jit 是什麽意思??
2F:推 diva: 试试把你的ansdata在for回圈之前初始化(预设矩阵的大小) 08/10 04:22
回diva学长,我有利用cell来初始话ansdata这个矩阵,但是没有改善耶
再麻烦学长指导
https://imgur.com/a/OUv5XVC
※ 编辑: automaton (140.112.43.9), 08/10/2018 12:25:19
3F:推 profyang: 就是Matlab会即时compile 印象中for回圈不要太大的时候 08/10 13:03
4F:→ profyang: 现在的Matlab相对没有jit的时候快很多 08/10 13:03
5F:→ profyang: 也就是你116以前的那麽快是jit的功劳 之後太慢就是jit不 08/10 13:04
6F:→ profyang: 够强了 08/10 13:04
7F:→ profyang: 这只是我猜测而已 对这我也不是很懂 08/10 13:04
8F:→ profyang: 另外你ansdata里面是数字的话用zeros可能比较好 08/10 13:06
9F:→ sppmg: 首先,请用贴code 网站好吗!这样很难看! 08/11 20:53
10F:→ sppmg: 用profile测一下,慢的不见得是ansdata。memory 检查记忆体 08/11 21:00
11F:→ sppmg: 也可以ansdata 不存,看会不会慢 08/11 21:01
12F:→ name0625: 是不是记忆体不够,吃到虚拟记忆体去了? 08/28 08:07