杭州锐达数字技术有限公司
查看: 10165|回复: 15

"ABAQUS JOB ONE BY ONE“ 我所见过的最好用的ABAQUS作业批提交器

[复制链接]
发表于 2009-1-11 16:34 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?我要加入

x
        前 不久,我在SIMWE看到这个贴子:http://forum.simwe.com/thread-778314-1-1.html。ABAQUS-BAT这个软件给了我很大启发。想起自己在过去的一年里由于ABAQUS不能自动批提交任务,而成天被困在电脑附近,就后悔自己怎么就没想到自己做个批提交器呢。于是利用了些业余时间,我也制作了一个ABAQUS任务提交器:ABAQUS Job One By One,在程序里我加了些暂停、终止、排序等功能。
       在这个论坛里,我学到了很多东西,全拜托众坛友无私的奉献。快过年了,我把这个小软件:ABAQUS Job One By One 1.0 ,送给大家。这个软件我在SIMWE、博研联盟也发出了。

       最后,感谢SIMWE的garethz版主。

       在这里简单的写下使用方法和一些注意事项:(不看也行)

         1.任务暂停、恢复和终止功能,大概需要花几秒钟的时间才能落实到求解器的进程,所以点击“暂停当前任务”或“终止当前任务”按扭后不要着急,没有必要多次点击。同时,如果提交的任务比较简单,几秒或几十秒就算完了,那可能您都没有时机点击这两个按扭。
     
         2.求解器暂停后,其进程的CPU占用率会降到0。您可以做些别的工作。
           
         3.终止后的任务就不能恢复计算了,只能在下次计算时重新提交了。
     
         4.提交任务前,记着启动FLEXnet license service服务。
     
         5.选定一个或多个任务后,点击:“设定输出文件夹”按钮,可以设定结果文件的存放路径。建议不要将结果文件路径选择到U盘。
     
         6.如果要修改ABAQUS命令行,请细心一些,不要改错,命令行末尾的“interactive”最好不要删除。
     
         7.本程序不生成BAT文件,所以您也得不到BAT文件。
     
         8.如果程序意外退出了,注意,我指的是意外的退出,比如用任务管理器将其关闭。如果是您点击窗体右上角的“×”按扭将它关闭了,因该不会发生下面的情况的。意外退出后分两种情况:a.正有任务在计算中。如果是Standard任务,您就用不着担心什么了,这个任务会自动算完的。如果是Explicit任务,这个任务可能会在后台被“阻塞”,“阻塞”就是进程因某个条件没有符合而一直无法运行。说的稍深一些,就是Explicit.exe将“匿名管道”的缓冲区写满了,等待我的程序去读取,而我的程序已经被强行结束了,没有来的及通知Explicit.exe一声,“不用写管道了”,所以Explicit.exe就将管道写满后,傻等在那里了,等着我去读取,此时Explicit.exe的CPU占用率为零。就这个问题,我发现,ABAQUS软件也没有解决的很好。我现在已初步的想出了几个解决方式,时间和精力的原因,没有加入,可能要替换窗口函数,或者多线程,还要用一些API  HOOK技术,在2.0版中——如果有时间的话——再增加吧,到那时,这个软件可能就不止一个文件了,甚至是个安装包了,当然我会尽量做个绿色软件的。好,回到主题,这个时候,您可用任务管理器将Explicit.exe强行关闭,因为Explicit.exe已经“阻塞”了,不会完成计算了。正在计算的这个任务只能下次重新提交了。b.正有任务处于暂停状态。如果是正常的退出我的软件,我的软件会自动恢复当前暂停的任务,然后再退出的。但是在强行退出的情况下,就有一点点麻烦,您需要知道这个任务的名字和结果文件存放路径。任务的名字就是这个任务的输入文件(后缀名为.Inp文件)的名字,也是ABAQUS命令行中"Job ="这里的等于号后面的那个单词。结果文件存放路径,在我和程序里默认是和该项任务的输入文件的路径相同,但是您如果在使用本软件时进行了重新设定,那就是您设定的那个路径。现在,假设这个正处于暂停状态的任务的名字是Job-3ABC,结果文件存放路径是D:\ABAQ\Tep。您可以按如下步骤操作,要用到CMD的DOS窗口,不过,不要害怕,很简单的。步骤为:鼠标点击桌面左下角的“开始”按扭,弹出开始菜单——》 点击开始菜单上的“运行(R)...”——》在弹出的窗口的文本框中输入“CMD”然后回车。这时打开了一个黑色的DOS窗口——》您不用管窗口中显示的东西是什么意思,只需在窗口中依次输入以下命令就OK了:第一个命令,就是结果文件存放路径的前两个字符:D:,只输入D:然后回车。第二个命令,CD D:\ABAQ\Tep。就是在结果文件存放路径之前添加CD这个命令,CD命令和路径D:\ABAQ\Tep之间要有一个空格,然后回车。第三个命令,ABAQUS Resume Job = Job-3ABC,然后回车。此时,这个被暂停的任务就被恢复了,过一会,等它算完了,自己就会结束的。同样的,如果这个正处于暂停状态的任务的名字是Beam,结果文件存放路径是C:\Work\Beams。那么您在DOS窗口中输入的命令将是C:然后CD C:\Work\Beams然后ABAQUS Resume Job = Beam。

        9.当添加新任务时,程序默认的结果文件输出路径与输入文件的路径相同,所以,此时,如果您所选择的输入文件路径下已经存在结果文件,程序会询问您是否将这些结果文件放入回收站。如果您不想将这些结果文件放入回收站,就请点击“取消”按扭,这项任务还是会添加进任务列表,只是结果文件的输出路径待定。然后,您可以进一步选中该任务,点击“设定输出文件夹”按扭,为该任务设定输出文件夹。

        10.如果您的电脑是多核系统,软件会自动提示您是否添加适用于多核系统的ABAQUS命令。关于多核的命令行参数请看:http://bbs.ustc.edu.cn/cgi-bin/bbsanc?path=/groups/GROUP_5/FEA/DBC96AF46/D9FCED690/M.1053333567.A
     
        11.希望您能无所顾忌的将意见与建议反馈给我。
     
        12.该软件在XP SP2、VB6.0 SP6、ABAQUS 6.6-1、单核CPU的条件下通过检验。



         由于不能上传RAR附件,大家可以到http://www.baisi.net/viewthread.php?tid=2402409&extra=page%3D1下载。
ABAQUS Job One By One说明(附图).JPG

评分

2

查看全部评分

回复
分享到:

使用道具 举报

发表于 2009-1-21 15:19 | 显示全部楼层
不错,我一般在linux下也有个程序。
其实这个脚本主要的问题就是隔一段时间判断任务是否停止。
我看到很多这种程序用的是累加器来实现间隔判断的,这会大大影响速度。
在linux下有个命令是sleep,他会启动CPU的辅助计时器,而不会占用任何cpu计算资源。
不知在windows下你是怎样实现的?也是这个方法吗?
发表于 2009-2-24 16:34 | 显示全部楼层

回复 沙发 zhangmeng 的帖子

你好
你在linux下的程序是否能发我一份

我的邮箱是 jyz@hhu.edu.cn
谢谢
发表于 2009-3-5 14:48 | 显示全部楼层
有没有跟abaqus 6.8相适应的abaqus job one by one啊
发表于 2009-3-20 10:24 | 显示全部楼层
chenbuster@tom.com
斑竹给我发一份 3Q
发表于 2009-4-28 09:53 | 显示全部楼层
好东西,这下方便了
发表于 2009-5-9 22:01 | 显示全部楼层
帖子很好,但是我用不起来,在SIMWE的时候就请G老大帮助了好几次,都不能解决我的问题,现在批处理也只能自己做一个可执行文件,相对来说也很好。
发表于 2010-3-8 15:09 | 显示全部楼层
能给我发一个嘛?
wanglei4002@163.com
谢谢
发表于 2010-3-19 08:46 | 显示全部楼层
我平时用的BAT文件,不知6.9能用吗
发表于 2010-10-12 11:56 | 显示全部楼层
呵呵,谢谢分享啊
发表于 2010-12-3 22:14 | 显示全部楼层
现在正版的ABAQUS可以通过TOKEN来管理,往服务器扔就可以了,程序会自动来排队找资源的,如果计算集群的,那也一样的。

如果是在本机上计算,那也是很容易的,如我要计算3个job01.inp、job02.inp、job03.inp,那么建个批文件,内容如下:
xxxx\abq691.exe j=job01 cpu=8 int
xxxx\abq691.exe j=job02 cpu=8 int
xxxx\abq691.exe j=job03 cpu=8 int
就可以了,而且自己要那个结果,可以先算那个,LINUX下道理也是一样的。
发表于 2011-1-1 11:34 | 显示全部楼层
很好,simwe上的我也用过,感谢楼主!
确实很方便。
发表于 2011-4-15 20:20 | 显示全部楼层
谢谢楼主 好东西
发表于 2011-8-8 16:47 | 显示全部楼层
版主,能不能给我发一份,我的邮箱是shiyan_gwm@yahoo.cn,谢谢
发表于 2013-10-31 19:29 | 显示全部楼层
步骤为:鼠标点击桌面左下角的“开始”按扭,弹出开始菜单——》 点击开始菜单上的“运行(R)...”——》在弹出的窗口的文本框中输入“CMD”然后回车
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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