全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3053 6
2013-10-14
悬赏 20 个论坛币 未解决
我用SAS写了个程序,要跑上几十个小时(In Batch mode)。可我发现,一开始运行的时候速度很快,CPU的占用率也很高(大概80%左右),但跑了几个小时候,速度明显慢下来的,CPU的占用率也降下来了(只有百分之几了),机子本身并不卡,就是莫名的慢了(好像机器不再全力的运行了)。我想请问下高手,这是何缘故?
是不是一个程序运行久了,电脑会自动保护自己,不会再给那个程序分配那么多资源了(CPU占用率降低)。那如何才能让电脑避开这种保护,让它一直开足马力运行呢。
我的电脑配置是:内存 8G,CPU: i5-3470@3.20GHz

急需解决,非常感谢!!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2013-10-14 13:19:42
是不是你的日志和输出结果累积太多了?

可以用
dm "log; clear;"
dm "odsresults; clear;"

有一些情况下,我们需要提取出某过程输出结果中的某表格中的内容,但是此时必须输出一个结果,结果就会越堆越多,速度会越来越慢。建议每生成几百个结果清空一次日志和输出结果,这样速度会比较稳定。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-10-14 13:23:16
跑几十个小时的程序,多想想办法优化一下,节省点时间
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-10-14 13:26:54
renkun 发表于 2013-10-14 13:19
是不是你的日志和输出结果累积太多了?

可以用
这个我都用上了,我还用了关闭各种打印,都还是这样呀?
PROC Printto log='recycle bin';run;
PROC Printto Print='recycle bin';run;

如果是数据本身堆砌造成的,CPU的占用率应该不会降低的,我一开始最快的时候cpu占用率是80%左右,到后来就只有百分之几了。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-10-14 13:34:04
Imasasor 发表于 2013-10-14 13:23
跑几十个小时的程序,多想想办法优化一下,节省点时间
优化的效果已经很minor了,还是要解决根本的问题
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-10-14 13:47:34
也有可能是你的电源模式设置不对,或者电脑散射不好也会导致CPU温度太高导致CPU自动减速。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群