找回密码
 新注册用户
搜索
查看: 17436|回复: 22

[原创] 原创软件-SETI@REST-调节BOINC的GPU使用率

[复制链接]
发表于 2013-2-18 19:36:54 | 显示全部楼层 |阅读模式
本帖最后由 polone 于 2014-1-18 12:20 编辑

大家好!
我是一名SETI忠实的FANS。
用GPU计算SETI的时候,我感到计算机非常卡,于是写了个小工具,解决了这个问题。
我给这个工具取名叫SETI@REST

他能够在人操作电脑的时候适当降低GPU使用率(可以控制GPU使用在50%左右),
如果空闲1秒,立刻使GPU满载。

界面如图:
setirest_screenshot.png

SETI@REST能够调节BOINC的GPU使用率,解决电脑卡顿。
在GPU运算时,GPU完全分配给了BOINC,这时电脑会非常卡。SETI@REST调节BOINC的GPU计算,在用户操作电脑时降低GPU计算,闲置后立刻使GPU满负载。

效果如图:
setirest_gpuz.png

另一项功能是使一部分支持SpeedFan的风扇全速运转。在有些电脑上SpeedFan设置风扇转速100%时,只能持续数秒。SETI@REST能使这些风扇满速运转。

第一次使用时设置好进程关键字(默认设了2个),然后打开GPU-Z,调节Toggle Intensity到电脑不卡为止

然后最小化到托盘就可以了!

我在自己的电脑(DELL E6410,Windows XP, NVS3100)上测试了SETI@HOME的GPU计算程序,效果较理想,现在没有参加其他的GPU项目,所以其他的GPU计算程序还没有测试过,应该是通用的。



setirest_0.1_18.zip (22.15 KB, 下载次数: 5706)


评分

参与人数 16基本分 +259 收起 理由
vardrag + 4 灰常好!
zflowers + 15 辛苦了!
Lightalt + 60 赞一个!
Youth + 50 赞一个!
dabaichi + 4 有用!感谢分享!
YI_YU + 4 程序员是Boinc最大的财富。。。。.
CCCP0081 + 15 发财啦
8cbx + 8 很给力!
昂宿星团人 + 20 发现高人!
gameboybf2142 + 5 高人啊!
w2xcn + 5 高人呀!!!!
zwd97 + 6 赞一个!
YuezhouLyu + 6 很给力!
HewInz + 15 MilkyWay也能用
kehq + 15 很给力!

查看全部评分

回复

使用道具 举报

发表于 2013-2-18 20:10:02 | 显示全部楼层
哇!
请问这个软件可以用于其他项目的GPU应用限制吗?
回复

使用道具 举报

 楼主| 发表于 2013-2-18 20:18:00 | 显示全部楼层
xx318088 发表于 2013-2-18 20:10
哇!
请问这个软件可以用于其他项目的GPU应用限制吗?

版主好!现在我只在GPU上算SETI ,其他的GPU项目我没试过~不过原理应该是一样的。
可以在进程关键词里加上那个项目的gpu进程名称关键词,然后再调整下Toggle Intensity,用GPU-Z看有没有效果
回复

使用道具 举报

发表于 2013-2-18 22:54:18 | 显示全部楼层
好顶赞!!!
回复

使用道具 举报

发表于 2013-2-19 11:49:26 | 显示全部楼层
楼主可以把这个软件发给BOINC的开发者,让他们整合进BOINC!!
回复

使用道具 举报

发表于 2013-2-19 13:17:04 | 显示全部楼层
请问能简单介绍一下原理吗?谢谢LZ了
回复

使用道具 举报

发表于 2013-2-19 13:28:26 | 显示全部楼层
简单测试有效
回复

使用道具 举报

 楼主| 发表于 2013-2-19 22:06:16 | 显示全部楼层
litimetal 发表于 2013-2-19 13:17
请问能简单介绍一下原理吗?谢谢LZ了

原理和TThrottle的差不多吧,主要是依进程关键字先找到GPU进程,随后对GPU进程Suspend和Resume,来控制GPU的使用率。
在我的笔记本上,操作电脑的时候,只要把GPU使用率控制在60%左右,基本上就不感觉到卡了。

评分

参与人数 2基本分 +9 收起 理由
dabaichi + 4 学习了!
litimetal + 5 了解了,谢谢

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2013-2-19 22:08:38 | 显示全部楼层
nobodyk 发表于 2013-2-19 13:28
简单测试有效

哇,大叔也来啦!

感谢大家支持~
回复

使用道具 举报

发表于 2013-2-19 23:38:15 | 显示全部楼层
这个不错
回复

使用道具 举报

发表于 2013-2-20 00:04:45 | 显示全部楼层
Toggle Intensity 怎么只有1~4,默认的5怎么没有?
回复

使用道具 举报

发表于 2013-2-20 10:51:23 | 显示全部楼层
目测,从网页平滑滚动的效果来看,对CC有点作用。

只是我的GPU-Z一会可以测出GPU Load,一会儿测不出。

现在又犯毛病了,估计是驱动问题,
回复

使用道具 举报

发表于 2013-2-20 19:48:49 | 显示全部楼层
本帖最后由 Meditation 于 2013-2-20 19:50 编辑

感谢楼主的智慧贡献 不知可否对GPU使用再添加一些功能 我这里有一个想法

现在 BOINC自带一个功能 可以把某个程序加入一个exclusive applications这个列表 当运行这个程序一段时间后 BOINC自动 暂停当前任务 包括CPU和GPU 当然可以在cc_config.xml追加<exclusive_gpu_app>字段来只暂停GPU 但应该针对多GPU系统也是暂停全部GPU 所以我希望楼主能开发一个功能 比如当GPU 0和GPU 1同时参加BOINC运算时 如果现在正在玩某个大型游戏 需要GPU资源时 我们可以让系统选择 哪个GPU去应对游戏 哪个GPU去应对BOINC 而不要单纯地 只要发现某个程序在运行就把GPU都暂停掉
回复

使用道具 举报

发表于 2013-2-20 20:01:06 | 显示全部楼层
说到GPU占用时 我还想说说CPU占用 BOINC只是简单地按百分比来限制CPU资源 而并不是按逻辑核心来分配 比如我这里是四核八线程的CPU 当设置为CPU占用12.5%时 的确我发现BOINC只会处理1个任务 其余7个任务都暂停 但对应到CPU 就不是这个情况了 因为默认 任何程序都可以使用8个线程 所以 CPU截图可以看到 每个线程都有运算量 只是都比较小而已 而我所期待的 也是按逻辑核心和物理核心来分配BOINC的使用资源 这样 我就可以让两个物理核心(对应到4个逻辑核心)满载 而不影响到另外两个物理核心以及对应的逻辑核心 这样 BOINC对系统的压力应该会小很多 因为至少有两个物理核心是完全没有被调用的 系统反应会很快 当然我这个想法不知是不是合理 希望楼主也参考一下 主要的目的 还是可以在更细微的层面指派CPU和GPU 减小BOINC对系统程序的影响
回复

使用道具 举报

 楼主| 发表于 2013-2-21 12:44:11 来自手机 | 显示全部楼层
Meditation 发表于 2013-2-20 19:48 感谢楼主的智慧贡献 不知可否对GPU使用再添加一些功能 我这里有一个想法 现在 BOINC自带一个功能 可以把某 ...

我也想加入对多个GPU进程进行控制,目前手上没有多GPU环境,如果有双GPU,BOINC能够同时在每个GPU上跑一个计算程序吗?目前打算先增加对N卡GPU使用率读取的功能,以及多GPU计算进程的控制。如果有2块卡,不是sli的话,玩游戏也只有一块卡能用吧?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 新注册用户

本版积分规则

论坛官方淘宝店开业啦~

Archiver|手机版|小黑屋|中国分布式计算总站 ( 沪ICP备05042587号 )

GMT+8, 2024-4-27 02:35

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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