为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

2021年perflab实验报告资料

2019-09-18 10页 doc 156KB 2阅读

用户头像

is_179289

暂无简介

举报
2021年perflab实验报告资料2021年perflab实验报告资料2021年perflab实验报告资料PAGE/NUMPAGES2021年perflab实验报告资料课程试验汇报课程名称:计算机组成与结构试验项目名称:perflab-handout专业班级:姓名:学号:指导教师:杨科华完成时间:年5月27日信息科学与工程学院试验题目:perflab程序性能调优试验目:了解编译器,学习程序优化,从优化程序代码和程序实施速度两方面着手。试验要求:此次试验,要求针对每个函数、每个人均最少写出3种优化版本、并依据driver汇报结果进行性能分析...
2021年perflab实验报告资料
2021年perflab实验资料2021年perflab实验报告资料PAGE/NUMPAGES2021年perflab实验报告资料课程试验汇报课程名称:计算机组成与结构试验项目名称:perflab-handout专业班级:姓名:学号:指导教师:杨科华完成时间:年5月27日信息科学与工程学院试验目:perflab程序性能调优试验目:了解编译器,学习程序优化,从优化程序代码和程序实施速度两方面着手。试验要求:此次试验,要求针对每个函数、每个人均最少写出3种优化版本、并依据driver汇报结果进行性能试验环境:ubuntu-15.10、x32系统、VMwareworkstation试验内容及操作步骤:         将下载下来kernels.c中rotate、smooth函数进行优化。 rotate函数作用是将图像逆时针旋转90°,smooth函数作用是对于图像中每一个像素点,取它和周围像素点平均值,让图片变得模糊。下面对代码进行逐一优化。源代码CPE测试:1.Naive_rotate1)源代码:charnaive_rotate_descr[]="naive_rotate:Naivebaselineimplementation";voidnaive_rotate(intdim,pixel*src,pixel*dst){inti,j;for(i=0;i方案
,由图可知,速度提升不大,性能优化结果也不是很好。再分析源代码,从cache友好性来分析,这个代码效率机会很低,所以根据cache大小,应在存放时候进行32个像素依次存放(列存放)。做到cache友好这么就能够能够大幅度提升效率。4)优化代码2以下:charrotate_descr2[]="rotate2:version2 break into 4*4 blocks";voidrotate2(intdim,pixel*src,pixel*dst){inti,j,ii,jj;for(ii=0;ii>2;dst[RIDX(0,0,dim)].blue=(src[RIDX(0,0,dim)].blue+src[RIDX(1,0,dim)].blue+src[RIDX(0,1,dim)].blue+src[RIDX(1,1,dim)].blue)>>2;dst[RIDX(0,0,dim)].green=(src[RIDX(0,0,dim)].green+src[RIDX(1,0,dim)].green+src[RIDX(0,1,dim)].green+src[RIDX(1,1,dim)].green)>>2;dst[RIDX(0,dim-1,dim)].red=(src[RIDX(0,dim-1,dim)].red+src[RIDX(1,dim-1,dim)].red+src[RIDX(0,dim-2,dim)].red+src[RIDX(1,dim-2,dim)].red)>>2;dst[RIDX(0,dim-1,dim)].blue=(src[RIDX(0,dim-1,dim)].blue+src[RIDX(1,dim-1,dim)].blue+src[RIDX(0,dim-2,dim)].blue+src[RIDX(1,dim-2,dim)].blue)>>2;dst[RIDX(0,dim-1,dim)].green=(src[RIDX(0,dim-1,dim)].green+src[RIDX(1,dim-1,dim)].green+src[RIDX(0,dim-2,dim)].green+src[RIDX(1,dim-2,dim)].green)>>2;dst[RIDX(dim-1,0,dim)].red=(src[RIDX(dim-1,0,dim)].red+src[RIDX(dim-2,0,dim)].red+src[RIDX(dim-1,1,dim)].red+src[RIDX(dim-2,1,dim)].red)>>2;dst[RIDX(dim-1,0,dim)].blue=(src[RIDX(dim-1,0,dim)].blue+src[RIDX(dim-2,0,dim)].blue+src[RIDX(dim-1,1,dim)].blue+src[RIDX(dim-2,1,dim)].blue)>>2;dst[RIDX(dim-1,0,dim)].green=(src[RIDX(dim-1,0,dim)].green+src[RIDX(dim-2,0,dim)].green+src[RIDX(dim-1,1,dim)].green+src[RIDX(dim-2,1,dim)].green)>>2;dst[RIDX(dim-1,dim-1,dim)].red=(src[RIDX(dim-1,dim-1,dim)].red+src[RIDX(dim-1,dim-2,dim)].red+src[RIDX(dim-2,dim-1,dim)].red+src[RIDX(dim-2,dim-2,dim)].red)>>2;dst[RIDX(dim-1,dim-1,dim)].blue=(src[RIDX(dim-1,dim-1,dim)].blue+src[RIDX(dim-1,dim-2,dim)].blue+src[RIDX(dim-2,dim-1,dim)].blue+src[RIDX(dim-2,dim-2,dim)].blue)>>2;dst[RIDX(dim-1,dim-1,dim)].green=(src[RIDX(dim-1,dim-1,dim)].green+src[RIDX(dim-1,dim-2,dim)].green+src[RIDX(dim-2,dim-1,dim)].green+src[RIDX(dim-2,dim-2,dim)].green)>>2;//boarderfor(i=1;i
/
本文档为【2021年perflab实验报告资料】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索