操作系统概念LAB4—矩阵相乘—实验报告

操作系统概念LAB4—矩阵相乘—实验报告

ID:38471897

大小:50.50 KB

页数:4页

时间:2019-06-13

操作系统概念LAB4—矩阵相乘—实验报告_第1页
操作系统概念LAB4—矩阵相乘—实验报告_第2页
操作系统概念LAB4—矩阵相乘—实验报告_第3页
操作系统概念LAB4—矩阵相乘—实验报告_第4页
资源描述:

《操作系统概念LAB4—矩阵相乘—实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、LAB4实验报告实验目的:1.矩阵相乘实验内容:给定两个矩阵A和B,其中A是具有M行、K列的矩阵,B为K行、N列矩阵,A和B的矩阵积为C,C为M行,N列。矩阵C中第i行、第j列的元素Ci,j就是矩阵A第i行每个元素和矩阵B第j列每个元素乘积的和。本实验的目的是通过对矩阵乘法是多线程实现,让学生加深对线程的理解与调用。实验步骤:在Linux操作系统上,利用Linux处理多线程的优点,编写程序用多线程实现矩阵乘法。实现A、B两个矩阵的乘法,并输出计算结果。实验代码如下:#include#include#incl

2、ude#include#include#include#defineRANGE100#defineM2#defineK2#defineN2voidgene_matrix();voidread_matrix();intmatrixA[M][N]={{1,1},{2,2}};intmatrixB[N][M]={{4,14},{5,25}};intarr[M][M][N];intres[M][N]={0};void*func(void*arg);main(){clo

3、ck_tstart=clock();inti,j,k,cnt,cnt2;pthread_ttids[N];for(i=0;i

4、res[i][j]+=arr[i][j][k];printf("res[%d][%d]=%d",i,j,res[i][j]);}clock_tfinish=clock();printf("n",(long)(finish-start)/1E6);}void*func(void*arg){intk=*(int*)arg;inti,j;printf("Enterfunc");for(i=0;i

5、"func=%d",arr[i][j][k]);}}pthread_exit(NULL);}voidgene_matrix(){FILE*file1,*file2;if((file1=fopen("/home/timelong/Desktop/matrixA","wt"))==NULL){perror("fopen");exit(1);}if((file2=fopen("/home/timelong/Desktop/matrixB","wt"))==NULL){perror("fopen");exit(1);}inti,j;srand(

6、(unsigned)time(NULL));for(i=0;i

7、1=fopen("/home/timelong/Desktop/matrixA","rt"))==NULL){perror("fopen");exit(1);}if((file2=fopen("/home/timelong/Desktop/matrixB","rt"))==NULL){perror("fopen");exit(1);}inti,j;for(i=0;i

8、atrixA[i][j]);}fclose(file1);for(i=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。