|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 新手求助,基于多核的并行计算问题
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
2312
人关注过本帖
标题:
新手求助,基于多核的并行计算问题
只看楼主
加入收藏
lyl930130
等 级:
论坛游侠
帖 子:323
专家分:111
注 册:2013-5-13
结帖率:
91.43%
楼主
收藏
已结贴
√
问题点数:20 回复次数:14
新手求助,基于多核的并行计算问题
我是新手不太清楚,cuda应该属于C吧
现在关于并行计算的加法想法是这样的
对于abcdefghijklmn+ABCDEFGHIJKLMN...分成n个进程块同时进行加法运算
用2个数组分别存储余数和进位数,然后在类似上面的方法依次相加
但是现在有个问题是进位和余数因为要错一位相加,在快与块之间那间隔的一位要怎么处理?
另外还有更好的计算思路吗
搜索更多相关主题的帖子:
计算
2013-05-23 09:21
举报帖子
使用道具
赠送鲜花
lyl930130
等 级:
论坛游侠
帖 子:323
专家分:111
注 册:2013-5-13
第
2
楼
收藏
得分:0
大家都说一下思路一起探讨一下吧,可能我的表达有问题,不清楚的可以再问
2013-05-24 12:35
举报帖子
使用道具
赠送鲜花
韶志
来 自:斗气大陆
等 级:
贵宾
威 望:
44
帖 子:2223
专家分:13592
注 册:2013-3-22
第
3
楼
收藏
得分:0
这个真的不知道...
三十年河东,三十年河西,莫欺少年穷!
2013-05-24 12:50
举报帖子
使用道具
赠送鲜花
我叫沃恩
来 自:Asia
等 级:
贵宾
威 望:
10
帖 子:1234
专家分:3865
注 册:2013-3-29
第
4
楼
收藏
得分:0
学习!
因为我是菜鸟,所以应该被骂!
细节+坚持=成功!
2013-05-24 13:19
举报帖子
使用道具
赠送鲜花
邓士林
来 自:淮河河畔
等 级:
贵宾
威 望:
61
帖 子:2392
专家分:13384
注 册:2013-3-3
第
5
楼
收藏
得分:0
进位和余数因为要错一位相加----------------没看懂,
字符进行加法怎么又冒出余数了啊
Maybe
2013-05-24 14:36
举报帖子
使用道具
赠送鲜花
lyl930130
等 级:
论坛游侠
帖 子:323
专家分:111
注 册:2013-5-13
第
6
楼
收藏
得分:0
回复 5楼 邓士林
哦,那个余数就是比如5+8=1 3
这里1是进位,3我把它叫余数
错位相加我的意思是比如
5+5+5+5+5+5+5+5+5+5+5
+5+5+5+5+5+5+5+5+5+5+5
=
0 0 0 0 0 0 0 0 0 0 0
+1+1+1+1+1+1+1+1+1+1+1
2013-05-25 07:50
举报帖子
使用道具
赠送鲜花
beyondyf
等 级:
贵宾
威 望:
103
帖 子:3282
专家分:12654
注 册:2008-1-21
第
7
楼
收藏
得分:0
因为第i位的计算依赖于第i-1位的计算结果,所以不可能进行并行计算。
重剑无锋,大巧不工
2013-05-25 09:17
举报帖子
使用道具
赠送鲜花
xhd504070596
等 级:
论坛游民
帖 子:12
专家分:11
注 册:2013-5-24
第
8
楼
收藏
得分:0
理解你的意思了- -不过 我是小白 没试过这种算法
2013-05-25 09:22
举报帖子
使用道具
赠送鲜花
lyl930130
等 级:
论坛游侠
帖 子:323
专家分:111
注 册:2013-5-13
第
9
楼
收藏
得分:0
回复 7楼 beyondyf
这个可以的,只不过至少要进行两次运算
2013-05-25 19:32
举报帖子
使用道具
赠送鲜花
beyondyf
等 级:
贵宾
威 望:
103
帖 子:3282
专家分:12654
注 册:2008-1-21
第
10
楼
收藏
得分:20
以下是引用
lyl930130
在2013-5-25 19:32:00的发言:
这个可以的,只不过至少要进行两次运算
至少几次并不重要,至少只要一次。重点在至多需要几次。举个例子,11111111 + 88888889。
不是说不可以,只是成本很高,也不见得比单线程解决来的快。可以单独计算每一位的加法及进位情况,然后各位计算结果与进位各自形成两个数,重复这一过程直到进位数为0。最好的情况下这个过程只进行一次,最坏的情况下这个次数等于数的长度(分割长度,可以多位作为一组)。而且别忘了,线程调用也是要消耗资源的。除非是进行很高精度的大数运算(数百万位这个量级),否则我不会考虑并行计算。
当然,作为学习实践,我并不反对拿小一点的数来练手,但并没有很好的算法支持。
重剑无锋,大巧不工
2013-05-25 20:18
举报帖子
使用道具
赠送鲜花
15
1/2页
1
2
快速回复:
新手求助,基于多核的并行计算问题
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.017393 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved