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

[公告] 关于积分计算的说明

[复制链接]
发表于 2013-4-26 17:42:17 | 显示全部楼层 |阅读模式
近来有一些用户问一些有关积分计算的问题,再此我说明一下:
  我们按照BOINC标准方式给予积分的
  1GFLOPS运行24小时,能获得200积分


回复

使用道具 举报

发表于 2013-4-26 17:52:51 | 显示全部楼层
欢迎管理员~~
回复

使用道具 举报

发表于 2013-4-26 21:30:57 | 显示全部楼层
brief
回复

使用道具 举报

 楼主| 发表于 2013-4-26 22:35:24 | 显示全部楼层
BOINC 的积分系统

积分主要用来衡量用户贡献的多少,大多数分布式计算项目或平台均提供了特定的积分系统,比如 SETI@home 项目在迁移至 BOINC 前的积分方式是记录完成的任务单元的数量。
BOINC 平台也有自己独特的积分系统,因为在 BOINC 平台上可以运行的项目千差万别,比如项目 A 的任务单元在某台机器里需要 3 个小时完成,而项目 B 的计算包在这台机器里需要 30 个小时才能完成,或者项目 A 本身的任务包的完成时间就有一定的浮动范围,显然,用任务单元的数目来衡量用户贡献的计算量不再可行;类似的,机器性能也有差别,用完成任务单元所需的 CPU 时间来衡量工作量也是不行的。
作为一个通用的计算平台,BOINC 平台的积分系统必须通过一定的算法才能较为准确地记录用户实际完成的计算量。
原始的 BOINC 积分系统
BOINC 平台在发展前期采用的积分系统是综合下面几方面来完成的:
● 对计算机性能的基准测试
● 完成任务单元所耗费的 CPU 时间
● 不同用户完成同一任务单元的情况
具体地说,BOINC 客户端会定期地(一般是一周左右)在所运行的计算机上运行基准测试程序,对该计算机的整数及浮点计算能力做出一个评估。然后,客户端在完成分布式计算项目的任务单元后,也会记录下完成该任务单元所耗费的 CPU 时间。依据基准测试的结果和计算任务单元所用的时间,算出一个申请积分(Claimed Credit,具体算法见本站论坛中的这个主题),并在向项目的服务器上报计算结果的同时提交该申请积分的数值。
在大部分分布式计算项目中,项目服务端会将同一个任务包分发给多个用户进行计算,以保证计算结果的可靠性,BOINC 平台同样如此。对于同一个任务包,不同用户返回的计算结果中附带的申请积分一般都会各不相同,此时,项目的服务端一般会选取中间位置的申请积分做为最终的授予得分(Granted Credit)分别授予给完成这个任务单元的所有用户。
比如,对于 任务单元 X,用户甲、乙、丙都成功完成了该任务单元的计算,且申请积分分别是 9、11、12,则最终各个用户的得分都是 11 分。
但仍有部分分布式计算项目并不适用于这种冗余计算方式(比如一些蛋白质结构预测的项目),也就是说同一个任务单元只会分发给一位用户进行计算,在这种情况下,用户的申请积分就等于最终的授予积分了。
改进的 BOINC 积分系统
原始的 BOINC 积分系统主要存在以下几方面的问题:
基准测试不准,尤其是跨操作系统平台时,比如同一台计算机分别安装 Windows 版本客户端和 Linux 版本的客户端,做出的基准测试结果可能就相差比较大。
容易导致作弊,从发展之初,BOINC 平台就开放了服务端和客户端的全部源代码,如果用户下载了客户端的源代码,自行编译的过程中修改或优化原有的基准测试代码,就可能导致他自制的 BOINC 客户端的基准测试成绩大幅偏高。
由上述对积分系统计算申请积分的说明,基准测试成绩的变化,就会导致任务单元申请积分的相应变化。对于有冗余计算的项目,这将导致平均授予积分的小量增加,而对于没有冗余计算的项目,这将直接导致授予积分的相应提高。
针对原始 BOINC 积分系统存在的问题,目前 BOINC 平台上的大部分主流计算项目(如 SETI@home、Einstein@Home 等)均采取了另外一种积分策略,在计算这些项目的任务单元时,客户端将不再根据自身基准测试的结果和完成任务单元所用的计算时间来计算申请积分的值,而是根据服务端预先指定的一个值作为申请积分,换句话说,也就是完成任务单元的计算所能得到的积分是由项目的服务端预先就决定好的。

希望能对大家有帮助!
回复

使用道具 举报

 楼主| 发表于 2013-4-26 22:36:42 | 显示全部楼层
superTWT 发表于 2013-4-26 17:52
欢迎管理员~~

谢谢!
回复

使用道具 举报

发表于 2013-4-26 23:48:08 | 显示全部楼层
支持一下
然后呢 吐槽一下为毛 刚下的就是高优先级呢
回复

使用道具 举报

发表于 2013-4-27 10:17:27 | 显示全部楼层
deadline are close than others
回复

使用道具 举报

发表于 2013-4-27 12:24:35 | 显示全部楼层
本帖最后由 superTWT 于 2013-4-27 12:25 编辑

请问下管理员   接下来一段时间CAS@HOME的任务包充足么
回复

使用道具 举报

 楼主| 发表于 2013-4-27 17:01:21 | 显示全部楼层
H-Dan 发表于 2013-4-26 23:48
支持一下
然后呢 吐槽一下为毛 刚下的就是高优先级呢

刚下的任务高优先级应该与deadline有关!
ps:TreeThreader 98%的作业运行时间低于4.16小时(在一台普通主机上),数据库中记录运行时间最长的作业为26.1小时(该作业运行在一个速率极低的主机上,该主机的计算能力为0.79GFLOPS每秒)。 基于上述分析,我们将TreeThreader作业的deadline设置为36小时。可能是这个原因,刚下的任务优先级较高!
回复

使用道具 举报

 楼主| 发表于 2013-4-27 17:02:15 | 显示全部楼层
superTWT 发表于 2013-4-27 12:24
请问下管理员   接下来一段时间CAS@HOME的任务包充足么

下面CAS@home任务将会很重,有5万条蛋白质序列要预测,
但是由于每次前端服务器只能同时允许300条并行运行,
所以不是每个时刻都有任务发送出来的。


回复

使用道具 举报

发表于 2013-4-27 17:08:52 | 显示全部楼层
提个建议:

BOINC本身的benchmark不一定很准确,而且可能被篡改。所以现在很多大项目都采用了固定积分制度。如果每个包的计算量大约是一个固定值,那么可以现在某台“标准机器”上运行这个包,确定每个包需要的计算量和获得的分数,然后直接指定每个包能获得的分数,而不需要根据志愿者机器benchmark的结果计算分数。
回复

使用道具 举报

发表于 2013-4-27 17:17:54 | 显示全部楼层
fwjmath 发表于 2013-4-27 17:08
提个建议:

BOINC本身的benchmark不一定很准确,而且可能被篡改。所以现在很多大项目都采用了固定积分制度 ...

支持这个,WCG似乎就是这样的。标准方式不公平
回复

使用道具 举报

 楼主| 发表于 2013-4-27 18:42:23 | 显示全部楼层
fwjmath 发表于 2013-4-27 17:08
提个建议:

BOINC本身的benchmark不一定很准确,而且可能被篡改。所以现在很多大项目都采用了固定积分制度 ...

谢谢您的建议,我会反映上去!
回复

使用道具 举报

发表于 2013-4-28 13:11:21 | 显示全部楼层
liqiang 发表于 2013-4-27 17:02
下面CAS@home任务将会很重,有5万条蛋白质序列要预测,
但是由于每次前端服务器只能同时允许300条并行运 ...

那么这个前端服务器的问题      以后会得到解决吗?
回复

使用道具 举报

 楼主| 发表于 2013-4-28 16:35:54 | 显示全部楼层
superTWT 发表于 2013-4-28 13:11
那么这个前端服务器的问题      以后会得到解决吗?

以后我们会解决这个问题的, 当300不能满足我们的需要时,我们会重点解决这个问题。
回复

使用道具 举报

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

本版积分规则

论坛官方淘宝店开业啦~
欢迎大家多多支持基金会~

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

GMT+8, 2025-4-20 21:09

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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