- 博客(6)
- 资源 (5)
- 收藏
- 关注
原创 MPI 带状划分矩阵转置
MPI矩阵操作分两部分: 1.读文件 2.操作 读文件的时候可以使用MPI_File_read来直接分配数据。 矩阵存储的格式:连续内存空间,头两个int表示行列数,后续位置使用double表示数据,行优先存储。 文件使用二进制方式直接存储矩阵内存块。 转置非方阵,使用新申请的内存。如果使用O(1)的内存,并没有规则的交换的过程,所以不大现实,逻辑太复杂,太慢。 #include
2013-04-19 14:28:49 2571 1
原创 MPI_File_read 读不出数据
昨天写程序,MPI_File_read读不出数据,error code和status.count都是很不正常的大数。 查了很久似乎没人遇到过,但是明显不靠谱啊。。。 最后明白了,文件的访问权限不够,需要用root运行才能读root创建的文件。。。
2013-04-18 20:05:09 941
原创 pthread 快排 失败的优化版
为了改善快排并行度的问题,我设计了如下改进算法: 用第一个元素做pivot,其余元素平均分配给可用线程,并行进行局部的快排(都与pivot做比较)。在作完比较之后,使用额外空间将所有数据归并到一起(使用memcpy)。进行下一次迭代。 然后就出现了一系列的问题,其一就是for循环中声明的变量,在一次迭代结束后会被释放变量所占用内存(貌似是个栈),如果传递指向这块内存的指针,会出错。而且for循
2013-04-15 20:41:58 981 1
原创 pthread 快排 基础版
快排是一个很适合做并行的算法,因为一次划分相当于一次反归并,把数据划分为两个不相关的部分,可以并行处理。但是快排,包括归并排序都有一个缺点:并行度是变化的,而且最终会是1,即有一次迭代需要纯串行。经过一番思考,我拿出了一个改进版方案,由于对pthread不熟悉,还有懒,代码写的很烂。改进版见:pthread 快排 失败的优化版 本文是基础的快排并行化,用算法导论的快排伪码改成。可以通过一个给
2013-04-15 20:24:56 1359
原创 exif id name映射表
#include #include using namespace std; unsigned int hexToUInt(char id[],int size) { unsigned int result=0; int ratio=1; for(int i=size-1;i>1;--i) { int digit=0; if(id[
2013-04-07 22:04:57 950
原创 方阵操作方法集
方阵的生成 读写文件 转置和显示 #include #include #include #include #include using namespace std; template int inline size(T type,char *file) { ifstream in(file); in.seekg(0,ios::end); int size=in.tellg()
2013-04-01 15:49:55 825
基于fjtask jsp的 并行解决数独问题的实现 超炫html5前台
2012-08-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人