欢迎来到天天文库
浏览记录
ID:12928053
大小:466.00 KB
页数:28页
时间:2018-07-19
《多核研究性课题实验报告》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、辽宁师范大学计算机与信息技术学院综合性实验报告课程名称:多核并行程序设计实验题目:基于主成分分析的并行程序设计学生姓名:孙蕾专业:计算机科学与技术学号:005实验日期:2012年11月25日实验成绩:一、实验目的通过对主成分分析法进行研究,了解主成分分析在生产生活中的重要应用性。在此基础上找到算法,给出计算对称矩阵特征值的串行算法,并在此基础上利用多核程序设计将其并行化,以优化运行速度。通过本实验了解并行程序设计原理并达到基本能应用的水平。二、实验内容1.对主成分分析法进行学习,明白其原理以及在现实
2、生活中的应用方面和实际意义。2.按照对主成分分析的理解找到计算特征值的算法并完成串行程序。3.在串行程序的基础上应用多核程序设计的原理将程序并行化,分别对串行程序和并行程序计算运行时间,计算加速比,加深多核程序设计的理解。4.总结研究中的问题以及克服方法,心得和体会。三、实验过程(含结果抓图)1.串行程序代码及结果抓图#include#include#include#include//+++++++++++++++++
3、++++++++++++++++++++++++++++++++++++++++++++++++++++//classMatrix定义矩阵类constintMax_xy=20;//矩阵的最大维数classMatrix{private:doubledata[Max_xy][Max_xy];unsignedx,y;//x,y;public:Matrix();//默认构造函数Matrix(constMatrix&source);//拷贝构造函数voidcreat();//输入矩阵voidinit();vo
4、idtranspose();//矩阵转置voidshow();//输入此矩阵doublemode()const;//求一维矩阵的长度voidcheck_shiduichen();//检查是否为是对称矩阵voidcreat_unit(unsignedi);//生成i行单位矩阵voidset_x(unsignedxx);//设置行数voidset_y(unsignedyy);//设置列数unsignedget_x();//得到行数unsignedget_y();//得到列数voidshucheng(do
5、ublechangshu);//数乘运算voidsetdata(unsignedi,unsignedj,doublesource);//定位输入数据doublegetdata(unsignedi,unsignedj);//定位得到数据voidsturm();//求特征值unsignedsturm_s(doublem);//计算sturm系列的同好数Matrixoperator=(constMatrix&right);friendMatrix&operator+(constMatrix&left,co
6、nstMatrix&right);//重载+号friendMatrix&operator-(constMatrix&left,constMatrix&right);//重载-号friendMatrix&operator*(constMatrix&left,constMatrix&right);//重载乘号friendostream&operator<<(ostream&os,constMatrix&source);//重载输出friendvoidHouseholder(Matrix&source);
7、//用Householde矩阵将实对称矩阵化为三对角矩阵};Matrixtemp_Matrix;//全局变量Matrix//===================================================================//--------------------默认构造函数Matrix::Matrix(){init();}//----------------------------拷贝构造函数Matrix::Matrix(constMatrix&source)
8、{init();x=source.x;y=source.y;for(unsignedi=0;i
此文档下载收益归作者所有