设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4265|回复: 6

[交流] 关于Simtalk编程优化的问题

  [复制链接]
发表于 2015-8-3 19:55:24 | 显示全部楼层 |阅读模式
再编程的时候是不是语句越简单,所需运行时间越少。) T% O% ~' i$ E, U
例如:# u0 N- G9 o" }/ h
if  a=1 then5 Q7 D( G5 `6 y0 c( ~& m$ d
     b:=b+1;
' H( n  s. Y( w. j+ pelse) M6 e9 Y: g- Z4 M
end;5 `8 }8 I1 ^* T4 u; k9 V# z
2 q, t8 O& W7 x, G- z6 f& p
if  a=1 then
+ A9 r8 v5 }" ~& ?     b:=b+1;
$ v# Q) R: k7 p9 ~( B5 \/ bend;
5 `. U& i: `3 r" t9 f, v1 h都是同一个功能,a为1则b加一,若不满足则什么都不执行。请问是否第一个程序比第二个程序多运算了一次?1 w0 R6 S. v, J' |4 \
若是这样,对于较大的复杂模型,程序较多时,省去不必要的语句优化程序结构是否会大幅提高运算效率?
 楼主| 发表于 2015-8-3 23:54:26 | 显示全部楼层
taoyifei2000 发表于 2015-8-3 23:41 0 d' q$ K3 P+ e' s
程序的优化还是很重要的,规模大的模型越发明显,尤其在做大量仿真实验时,直接影响运行效率。
  C% t( E: _. W1 k1 h0 G* D
3 t) z. l- X( H比如之前做 ...

. o! k0 r' H# l非常感谢您的指导,正在学习中!
 楼主| 发表于 2015-8-3 23:58:04 | 显示全部楼层
zsp643295840 发表于 2015-8-3 20:34 . V" Z5 X6 f* A; N- V! {3 V( B
有时候还有其他的考虑,比如为了调试的方便,一般把非正常情况归为else语句中,例如3 ^; |3 _3 r& ?# d
if  --  then
8 R2 @- _! \4 V7 H+ M' }4 u4 R3 s--

) o& Y9 U0 E, w- ~我的意思是不需要就尽可能省去else,模型太复杂,运行次数较多,越简单则效率越高,当然简单程序单次运行可能没什么区别。
0 x( Z% |+ [7 G; u* C您说的debug我没接触过,我的理解是对可能一些没考虑到的情况进行debug,是一个完善和寻找所有情况的过程么?
发表于 2015-8-4 16:35:54 | 显示全部楼层
基本来说以目前的计算机运行速度 那个else对程序运行基本没有影响 即使模型非常大。。。) e5 y4 U' @; k
; s/ l; Y' L0 F0 x$ L/ s5 s* @/ e
对模型运行速度产生较大影响的! b5 s! k! Z9 O9 l5 ^( y( x& h
3 X# o& C9 o: ?: i
第一个是对大表格的检索,不过如果逻辑有需求,这个检索过程是绕不过去的,解决方法基本是建立更优的数据结构来减轻系统的排序压力
* m- P3 @/ i2 l# [) ?( M; A" k& I& |, m0 b6 L* |; n
比如你有60000个托盘在仓库 你取货时需要寻找某一个。。。就是从6w个里面找。。。如果进行数据分级,第一级是货品,第二级是巷道,第三级是托盘,虽然要进行三次检索,但是一般来说每次检索都是1000以内的检索,运行速度就会大大提高了。。。
9 q5 {; g: Q; [* ~! `1 a: Q% l/ b0 W: ?3 E3 @  }6 ]& ?. ^4 ^, P
第二个就是动画,最简单就是关掉动画。。。高级一点可以在程序里面关掉所有动画相关的程序。。。删除掉不需要的实体。。。甚至去掉模型背景 等等。。。都可以显著提高运行速度。。。
 楼主| 发表于 2015-8-4 16:53:38 | 显示全部楼层
五五 发表于 2015-8-4 16:35 % L  A( E/ P0 O8 q
基本来说以目前的计算机运行速度 那个else对程序运行基本没有影响 即使模型非常大。。。. _  S& f) p% g  h3 v' v

9 U: Q5 z+ u( Y. l+ A对模型运行速度产 ...

7 I9 S) \3 ], B8 C& ?: U谢谢,关掉动画这个很明显,有一次偶然关掉了动画,运行速度大幅提高。算是阴差阳错吧
发表于 2015-8-8 23:02:53 | 显示全部楼层
优化主要还是针对大的模型,或者模型不大但是运行很慢,感觉对这两种情况比较有意义吧。
 楼主| 发表于 2015-8-9 14:09:48 | 显示全部楼层
dongshui8558 发表于 2015-8-8 23:02 0 Q4 T; F! D& ^. Z3 Z
优化主要还是针对大的模型,或者模型不大但是运行很慢,感觉对这两种情况比较有意义吧。 ...
9 r2 r$ a4 x) U3 F
是的,就是模型较大,而且电脑配置不高,已经尽可能删减不必要的实体,所以才想在程序上下功夫
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-7-2 15:14 , Processed in 0.017109 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表