




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验九:基于实验九:基于 Cache 的矩阵乘积算法性能改善实验的矩阵乘积算法性能改善实验 一、背景知识 Bill Joy(Sun Microsystems 公司首席科学家兼首席执行官)曾开玩笑地说,高速缓存 (Cache)是计算机科学中唯一重要的思想。虽然是一句玩笑话,但从中也可以看出高速缓 存在计算机系统结构中确实占据了很重要的地位。 描述 Cache 概念的第一篇论文可以追溯到 1965 年 Wilkes 发表的论文“M.V. Wilkes, “Slave Memories and Dynamic Storage Allocation,“ Trans. IEEE, Vol. EC-14, No. 2, Apr. 1965, pp. 270-271” ,他在文中说“讨论这样一种存储器的使用方式,一个容量为 32000 个字的快 速主存在一个容量为 100 万个字的速度较慢的主存的控制下工作,则以这种方式,在实际情 况中,有效的存储器访问时间接近于快速存储器而不是较慢的存储器” 。Wilkes1913 年出生 于英国,曾参与 EDSAC 的设计,1980 年因对 Cambridge Ring Network 的突出贡献而获得 Eckert-Mauchly 奖。随后,IBM(何处无君影)在 1968 年生产出第一台带有 Cache 的商业 化计算机 IBM 360/85,测试表明,在 11 个测试程序中,只有 3 个程序是 360/91(时钟周期 60ns)胜过了 360/85(时钟周期 80ns) 。之后就展开了关于 Cache 的大讨论。编译器和操作 系统系统结构支持研讨会(Symposium on Architecture Support for Compilers and Operating Systems,ASPLOS)和国际计算机系统结构研讨会(International Computer Architecture Symposium,ISCA)从 20 世纪 90 年代以来,发表的关于 Cache 的论文不计其数,以致有 些人戏称 ISCA 为国际 Cache 结构研讨会。 时至今日,Cache 应用无处不在。下图是张晓东教授在龙星课程讲稿中给出的单机系统 中 Cache 分布情况,在网络中,Cache 也是比比皆是,如代理服务器,DNS 服务器等等。另 一方面,张教授也认为,目前计算机系统的情况是,CPU 时钟非常丰富,存储空间也足够 的大,瓶颈问题是数据取不出来,而 Cache 思想则是解决办法之一。 那么,Cache 对我们有什么实际意义呢?无论我们将来是从事高性能计算,还是感兴趣 于网络开发,亦或喜欢数据库研发,都离不开要考虑系统的具体结构,都绕不过 Cache 思想 对系统性能的影响。 本实验通过一个简单的例子,验证 Cache 对系统性能的影响。请按要求完成实验,获 得实验数据,并对实验结果给出合理的解释。 本实验做完,我们的系统结构实验课程就算结束了。回顾这 9 个实验,几乎无一例外 2 的是验证型的实验,这确实是个缺憾!但是,如果给出设计型或综合性的实验题目,又有多 少人能完成呢?通过大家这一学期对本实验课的态度,从预习到实验到实验报告,我感觉不 到大家对本实验的热情,也没有看到大家的能力。但愿是我眼晕,希望大家用最后一个实验 报告给我一个证明,使我对下一级的同学充满希望。 二、实验目的: 1、了解 Cache 对系统性能的影响 2、了解基于系统结构的算法设计思想 三、实验内容: 1、用 C 语言实现矩阵(方阵)乘积一般算法(程序 1) ,填写下表: 矩阵大小10050010001500200025003000 一般算法执行时间 2、程序 2 是基于 Cache 的矩阵(方阵)乘积优化算法,填写下表: 矩阵大小10050010001500200025003000 优化算法执行时间 3、计算优化后的加速比(speedup) 3 三、实验报告 1、认真记录实验数据 2、分析实验数据 附: 程序 1: #include #include #include main(int argc,char *argv) float *a,*b,*c,temp; long int i,j,k,size,m; struct timeval time1,time2; if(argcn“,argv0); exit(-1); size=atoi(argv1); m=size*size; a=(float*)malloc(sizeof(float)*m); b=(float*)malloc(sizeof(float)*m); c=(float*)malloc(sizeof(float)*m); for(i=0;i #include #include main(int argc,char *argv) float *a,*b,*c,temp; long int i,j,k,size,m; struct timeval time1,time2; if(argcn“,argv0); exit(-1); size=atoi(argv1); m=size*size; a=(float*)malloc(sizeof(float)*m); b=(float*)malloc(sizeof(float)*m); c=(float*)malloc(sizeof(float)*m); for(i=0;isize;i+) for(j=0;jsize;j+) ai*size+j=(float)(rand()%1000/100.0); ci*size+j=(float)(rand()%1000/100.0); gettimeofday( 5 for(i=0;isize;i+) for(j=0;jsize;j+) bi*size+j=cj*size+i; for(i=0;isize;i+) for(j=0;jsize;j+) ci*size+j=0; for(k=0;ksize;k+) ci*size+j+=ai*size+k*bj*size+k; gettimeofday( time2.tv_sec-=time1.tv_sec; time2.tv_usec-=time1.tv_usec; if(tim
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年甘利欣胶囊项目市场调查研究报告
- 2025年家饰用品项目市场调查研究报告
- 智能温控脚底按摩垫行业跨境出海战略研究报告
- 烘焙酱料生产厂行业跨境出海战略研究报告
- 炭黑导电塑料行业深度调研及发展战略咨询报告
- 智能灯杯行业跨境出海战略研究报告
- 智能生产流程行业跨境出海战略研究报告
- 专利转让 许可合同范例
- 智能抗冲击强度分选机行业深度调研及发展战略咨询报告
- 个人借款诈骗合同范例
- 国家助学贷款还款救助归档材料清单
- 11《杠杆》教学设计-2023-2024学年科学五年级下册人教鄂教版
- 2024版恶性肿瘤患者营养治疗指南解读课件
- 阳光心理-健康人生小学生心理健康主题班会课件
- 乐理知识考试题库130题(含答案)
- 2025届四川省成都市高三上学期毕业班摸底测试(零诊)历史试题(解析版)
- 小学五年级数学奥林匹克竞赛试卷及答案
- YB 4019-1991 轻烧菱镁矿粉化学分析方法柠檬酸法测定轻烧菱镁矿粉的活性
- 路面工程练习试卷1(共101题)
- 人教PEP版英语六上Unit 5《What does he do》(B Let's learn)说课稿
- DL∕T 802.8-2014 电力电缆用导管技术条件 第8部分:埋地用改性聚丙烯塑料单壁波纹电缆导管
评论
0/150
提交评论