游客:
新账户
|
登录
|
会员
|
统计
|
帮助
|
繁体
|
English
中国分布式计算论坛
»
分布式综合区
» 请前辈们帮看看:这样一个问题适合用分布式计算吗?
‹‹ 上一主题
|
下一主题 ››
17
1/2
1
2
››
投票
交易
悬赏
活动
打印
|
推荐
|
订阅
|
收藏
标题: 请前辈们帮看看:这样一个问题适合用分布式计算吗?
winde
新手上路
UID 13547
精华 0
积分 3
帖子 3
阅读权限 10
注册 2007-6-12
#1
发表于 2007-6-12 09:10
资料
短消息
加为好友
请前辈们帮看看:这样一个问题适合用分布式计算吗?
有一个数字,有100位,每一位的取值范围:0-9。即该数最大为(10^100-1,10的100次方减1),也即100个9组成。
我想遍历在每个数(从0到10^100-1)情况下,处理一些简单事情。
关键是要遍历的次数较多,从而造成总运算量较大,能否用并行计算进行?如果能,能提高运算效率大概是多少?
对并行计算不了解,呵呵,新手一个。请各位赐教!谢谢!
(8#补充说明问题)
[
本帖最后由 winde 于 2007-6-13 10:29 编辑
]
[广告]
Einstein@Home 官方优化程序,推荐使用!
fwjmath2
新手上路
UID 12645
精华 0
积分 47
帖子 51
阅读权限 10
注册 2007-3-4
来自 gdfs
#2
发表于 2007-6-12 15:05
资料
主页
短消息
加为好友
估计可以,如果每个数可以独立处理的话。但是现在来讲这种计算是不现实的,因为可能性实在太多了。我个人认为你应该考虑的是如何改良算法。
或者你把问题贴出来我们看看?~~~
lch=gta
论坛担当
最菜的小菜
UID 10541
精华
1
积分 818
帖子 795
阅读权限 10
注册 2006-2-14
来自 MIT
#3
发表于 2007-6-12 18:23
资料
短消息
加为好友
遍历每一个数
具体要干什么呢?
20080030成电
论坛担当
UID 9470
精华 0
积分 746
帖子 525
阅读权限 10
注册 2005-12-16
来自 海南临高
#4
发表于 2007-6-12 20:18
资料
短消息
加为好友
数字太大了,不知道什么时候才能算完。
多线程处理,在单机上看能不能提高速度。
LZ的问题也说的不清楚。
20080030成电
论坛担当
UID 9470
精华 0
积分 746
帖子 525
阅读权限 10
注册 2005-12-16
来自 海南临高
#5
发表于 2007-6-12 20:22
资料
短消息
加为好友
如果CPU每秒处理10^10个数字,那么10^100个数字需要10^80秒。
就算是分布式也不能。
20080030成电
论坛担当
UID 9470
精华 0
积分 746
帖子 525
阅读权限 10
注册 2005-12-16
来自 海南临高
#6
发表于 2007-6-12 20:23
资料
短消息
加为好友
写错了,应该是10^90秒
老冬腌菜
资深顾问
UID 9354
精华
1
积分 1051
帖子 792
阅读权限 10
注册 2005-12-12
#7
发表于 2007-6-12 22:03
资料
短消息
加为好友
很多时候有些循环可以在很前面跳到下一个
比如
for a1 = 0 to 9 step 1
......
for a2 = 0 to 9 step 1
......
for a3 = 0 to 9 step 1
......
next a3
next a2
next a1
有的时候不需要遍历到 a100,而只需要遍历到 a2 就可以确定这个不行,这样可以提高一些速度……
现在开始狂算Protein@Home、Riesel Sieve Project~
winde
新手上路
UID 13547
精华 0
积分 3
帖子 3
阅读权限 10
注册 2007-6-12
#8
发表于 2007-6-13 10:22
资料
短消息
加为好友
没想到有这么多高手关注,先谢谢大家!
我是在做一个神经网络之遗传算法,考虑到遗传算法可能最终不能给出最优问题解答,就考虑到遍历。呵呵,只是想尝试下。遍历这么大的数,按常规算法来说,以现有计算机计算能力可能就是痴人说梦。
不过,看到这里的“并行计算”,就想问大家,有没好的算法和其它解决思路。
其中网络的权值加偏移值共100位,每个权值、偏移值变化范围为:0-9(是我人为特意这样设定)。
[
本帖最后由 winde 于 2007-6-13 10:25 编辑
]
winde
新手上路
UID 13547
精华 0
积分 3
帖子 3
阅读权限 10
注册 2007-6-12
#9
发表于 2007-6-13 10:38
资料
短消息
加为好友
QUOTE:
原帖由
老冬腌菜
于 2007-6-12 22:03 发表
很多时候有些循环可以在很前面跳到下一个
比如
for a1 = 0 to 9 step 1
......
for a2 = 0 to 9 step 1
......
for a3 = 0 to 9 step 1
......
next a3
next a2
...
这个思路我会考虑并试验下,谢谢!
behaviorist
新手上路
UID 13567
精华 0
积分 11
帖子 11
阅读权限 10
注册 2007-6-13
#10
发表于 2007-6-14 05:25
资料
短消息
加为好友
FOR i = 1 TO 10
FOR j = 1 TO i
FOR k = 1 TO j
NEXT k
NEXT j
NEXT i
一共经历了多少次 k 循环...
老冬腌菜
资深顾问
UID 9354
精华
1
积分 1051
帖子 792
阅读权限 10
注册 2005-12-12
#11
发表于 2007-6-14 22:01
资料
短消息
加为好友
1+(1+2)+.......+(1+2+........+10)
=(1^2+2^2+.......+10^2+1+2+3+......+10)/2
=(10*11*21/6+10*11/2)/2
=(385+55)/2
=220
现在开始狂算Protein@Home、Riesel Sieve Project~
fwjmath2
新手上路
UID 12645
精华 0
积分 47
帖子 51
阅读权限 10
注册 2007-3-4
来自 gdfs
#12
发表于 2007-6-18 15:53
资料
主页
短消息
加为好友
我觉得这个数字还是太大了。不过如果说是神经网络的话,我建议用模拟退火法试试,因为这个问题的解质量的变化应该是连续的。这个算法也不保证能出全局最优解,但可以多次运行求出很多局部最优解,可以作为一种补充,同时也便于实现并行计算。具体情况可以找些书看看。
fwjmath2
新手上路
UID 12645
精华 0
积分 47
帖子 51
阅读权限 10
注册 2007-3-4
来自 gdfs
#13
发表于 2007-6-18 16:09
资料
主页
短消息
加为好友
不好意思,借别人的手机不大会用重复发帖了。再补充一点,就是如果有什么可行的已知的约束条件的话也可以加到算法中。无论是什么算法,多一点信息都意味着少一点计算时间。
碧城仙
管理员
UID 403
精华
55
积分 8797
帖子 8083
阅读权限 102
注册 2004-1-24
来自 华东理工大学
#14
发表于 2007-6-18 17:12
资料
主页
短消息
加为好友
回复 #13 fwjmath2 的帖子
重复帖已删除,你们慢慢讨论,我细细看。
快是快乐的一半,快乐才是计算的全部。
癌症研究相关项目:Folding@home、Rosetta@home、Help Conquer Cancer(WCG)、Cels@Home
usafchn
论坛知事
UID 12558
精华 0
积分 223
帖子 221
阅读权限 10
注册 2007-2-9
来自 杭州
#15
发表于 2007-7-24 19:19
资料
短消息
加为好友
QUOTE:
原帖由
老冬腌菜
于 2007-6-12 22:03 发表
很多时候有些循环可以在很前面跳到下一个
比如
for a1 = 0 to 9 step 1
......
for a2 = 0 to 9 step 1
......
for a3 = 0 to 9 step 1
......
next a3
next a2
...
这种穷举搜索法也许是最糟糕的,是否可以考虑一下深搜和广搜
17
1/2
1
2
››
投票
交易
悬赏
活动
控制面板首页
编辑个人资料
积分交易
公众用户组
好友列表
当前时区 GMT+8, 现在时间是 2008-7-24 20:22
沪ICP备05042587号
Powered by
Discuz!
5.5.0
© 2001-2007 Comsenz Inc.
TOP
清除 Cookies
-
联系我们
-
中国分布式计算总站
-
Archiver
-
WAP