gravatar

Einstein@Home credit might be over-estimated

因為 credit 是以最先 return result 兩台電腦所得到最低的 credit 為準, 因此如果今天有台電腦 P4 3G, 他花的時間是 P3 1.xG 的一半就能跑完一個 workunit, 但是如這個 work unit 已經有其他較慢電腦決定了 credit, 那麼可能經由 P4 3G 算出來 claim credit 是 50, 而早就決定好的 credit 是 100, 所以 P4 3G 一樣得到 100 的 credit 而非 50. 再者, 跑一個 work unit 只需要其他電腦的一半, 因此花同樣的時間甚至可以跑完 2 work units. 如果以這樣來算, 原本 50 * 2 = 100, 但是結果變成 100 * 2 = 200, 得到多一倍的 credit. 那要怎麼做? 我猜, 先讓 boinc 一次 request 很多 work units, 把 network 連線功能關閉, 在 deadline 之前其實算得完都沒關係, 但要等其他較慢的機器 return 較多的 credit 後, 再把自己的 return 回去後得到更多 credit. 不過這是理想而言, 實際上很多 P4 2G, 3G 以上的 cpu 在跑, 不能也無法確定永遠會先 return credit 的電腦都比自己慢.