于基龙芯2f平台的web服务器性能测试设计毕业设计Word格式.docx
- 文档编号:18167081
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:25
- 大小:54.26KB
于基龙芯2f平台的web服务器性能测试设计毕业设计Word格式.docx
《于基龙芯2f平台的web服务器性能测试设计毕业设计Word格式.docx》由会员分享,可在线阅读,更多相关《于基龙芯2f平台的web服务器性能测试设计毕业设计Word格式.docx(25页珍藏版)》请在冰豆网上搜索。
关键词:
龙芯;
cpu
ABSTRACT
GodsonisindependentlydevelopedCPU,usingreducedinstructionset,set,similartotheMIPSinstructionset,thefirsttypeofspeedis266MHz,startedin2002.Godson-2speedsupto1GHz.Godson-3iscomingsoon.Asweallknow,CPUistodeterminetheperformanceofthecorecomponentsofthecomputer,alsothecoreofthesystem.ittakechargeoftheinstructionsfimplementationofthesystem,mathandlogicoperations;
datastorageandtransmission,andinternalandexternalinput/outputcontrol.IntheareaofcorecomponentsofthecomputermarketThemostfamiliarbrandsareIntelandAMD.Noonecanshaketheirstrongpositionintheprocessormarket,InCPUtechnology,wenowhavealargergapbetweenforeignmanufacturers.withthelackofCPUchipwithindependentintellectualpropertyrights,China'
scomputerindustryisamajor"
core"
disease,thesee-workers,ournetworkofpeopleeternalpaininthechest.
Inthepast,representingtheleadinginternationalITtechnologiessuchasIntelCPUchiphasbeendominatedbyforeigngiants,Chinesecompaniesandconsumerspaidahugeamountofroyalties.Fortunately,BLXcompanyhaslaunchedthe"
Godson-1"
"
Godson-2"
breakingtheChineseno"
ofhistory.Godson’birthwaspraisedasamilestoneontheroadoftheindustryofscienceandtechnologyindustries.Commercializationofthe"
Godson"
ThesuccessfuldevelopmentofCPU1indicatesthatChinahasbrokentheforeignmonopolymasteringthekeytechnologyofmodernCPUdesign,tochangetheinformationindustryinChina"
nocore"
ofthesituationhastakenanimportantstep.theformationofindependentintellectualpropertyrightsinChina'
scomputerindustryhasanimportantroleinpromotingChina'
sCPUcoretechnology,nationalsecurity,economicdevelopmenthasapivotalrole.Godsonapplication,oneoftheimportantareasisaswebserverplatform,itslowenergyconsumption,stability,considerablecostwillhelpGodsonintheservermarketspringupeverywhere.Therefore,Godson-basedwebserverperformancetestingplatformisessential
Keywords:
Godson;
第1章前言
1.1龙芯2FCPU基本情况
龙芯CPU基本情况龙芯是我国自主开发的通用cpu,采用简单指令集,类似于MIPS指令集龙芯二号CPU采用先进的四发射超标量超流水结构,片内一级指令和数据高速缓存各64KB,片外二级高速缓存最多可达8MB.最高频率为1000MHz,功耗为3-5瓦,远远低于国外同类芯片,其SPECCPU2000测试程序的实测性能是1.3GHz的威盛处理器的2-3倍,已达到中等Pentium4水平.过去,代表着国际IT顶尖技术的CPU芯片一直被英特尔等国外巨头所垄断,中国企业及消费者为之付出了巨额版权费。
商品化的“龙芯”1号CPU的研制成功标志着我国已打破国外垄断,
初步掌握了当代CPU设计的关键技术,为改变我国信息产业“无芯”的局面迈出了重要的步伐,对我国形成有自主知识产权的计算机产业有重要的推动作用,对中国的CPU核心技术、国家安全、经济发展都有举足轻重的作用。
虽然“龙芯2号”正火热推广,但“龙芯3号”也开始研制了,2008年末4核龙芯3号流片成功,采用65nm工艺,主频1GHz,晶体管数目达到4.25亿个。
“龙芯3号”早期是一款4核处理器,并增加专门服务于Java程序的协处理器,以提高Linux环境下Java程序的执行效率,指令缓存追综技术等。
“龙芯3号”最终将实现对内峰值每秒500-1000亿次的计算速度。
1.2o32,n32,n64三种ABI介绍
1.2.1ABI概念介绍
本次测试人物需要测试三种不同ABI的系统。
下面是对ABI以及o32,n32,n64概念的介绍。
所谓ABI就是应用程序二进制接口,描述了应用程序和操作系统之间,一个应用和它的库之间,或者应用的组成部分之间的低接口。
ABI不同于API,API定义了源代码和库之间的接口,因此同样的代码可以在支持这个API的任何系统中编译,然而ABI允许编译好的目标代码在使用兼容ABI的系统中无需改动就能运行。
ABI掩盖了各种细节,例如:
调用约定控制着函数的参数如何传送以及如何接受返回值;
系统调用的编码和一个应用如何向操作系统进行系统调用;
以及在一个完整的操作系统ABI中,对象文件的二进制格式、程序库等等。
一个完整的ABI,像Intel二进制兼容标准,允许支持它的操作系统上的程序不经修改在其他支持此ABI的操作体统上运行。
ABI是用于标识处理器的工作模式及规范目标文件的编码格式。
MIPS指令集架构自MIPS3起正式支持64位工作模式,故编码可以遵从o32、n32与n64等ABI。
o32与n64即纯粹的32位与64位模式,二者除指针与变量类型的长度差异外,n64还用寄存器来传递更多的参数,性能有所提高。
n32则是32位数据结构和64位指令的结合体,重点在于仅将long与double类型编译为64位,其余指针与变量类型设定与o32相同。
1.2.2o32,n32,n64三种ABI
O32
O32使用严格的32位处理器的芯片。
在这32位,一个是保留供Irix操作系统的使用,留下31为地址位,因此,为2GB的内存,这意味着代码和数据的总和不得超过2GB,对于大多数应用程序,这仍然是不够的。
但是,由于内存价格下降,某些类别计划寻求更大的缓冲内存中的数据集。
目前32位Oracle符合这个标准。
N32
大多数现代应用需要更多的计算性能,保持高度的交互性,而操纵非常大的数据集。
同时,应用程序已经被设计为一个32位程序。
由于N32ABI的能增加了百分之25的应用程序的性能,
除了算法的改进,N32具有更好的性能,因为它使用的一些CPU的64位功能。
由于N32仍然保留32位寻址计划,O32代码可以受益于与N32重新编译。
在实践中,N32汇编规定了严格的规划条件.N32和O32ABI二进制不兼容。
N64
N64采用64位地址模式,并且数据结构也是64位的。
这使得26位的寻址,或大约40亿倍O32或N52更大的允许。
由于记忆能力超出了最高的潜在可配置的今天,N6是对未来的架构。
1.3关于benchmark
benchmark问题就是基准测试问题。
我们说Benchmark测试中最重要的是标准规范,也就是说,其实工具等因素是不重要的,只要大家都是用同一标准规范、同一工具进行系统测试,那么测试结果也就具有了比较意义。
从这个意义出发,benchmark测试实际上就成了各个厂商展示其技术实力的舞台.任何厂家或其它测试者都可以根据TPC组织公布的规范标准,最优地构造出自己的系统,使用最优的平台和最高效的应用程序。
1.4LINUXBENCHMARK介绍
Linuxbenchmark即本次测试web服务器性能的测试方案。
国外有众多优秀的测试软件,如loadrunner,webload等,可免费开源的并不多。
相比之下,siege是一款比较优秀的免费开源软件。
本设计选用的benchmark是开源软件siege。
具体参数如下:
格式:
siege-c500-r50-furl.txt
Transactions:
总共完成请求次数
Availability:
测试的有效性
Elapsedtime:
总共用时
Datatransferred:
传输总数据
Responsetime:
响应时间,显示网络连接的速度
Transactionrate:
每秒处理次数
Throughput:
数据吞吐量每秒即平均每秒传送数据
Concurrency:
实际并发处理次数
Successfultransactions:
成功的传输次数
Failedtransactions:
失败的传输次数
Longesttransaction:
每次传输所花最长时间
Shortesttransaction:
每次传输所花最短时间
其中衡量测试性能最重要的参数Elapsedtime以及Concurrency。
Concurrency反映了服务器的并行处理能力,Elapsedtime反映了服务器的总体处理速度。
但在使用siege前要对它修改配置参数。
Siege配置修改如下:
Vi~./siegerc
verbose=false测试结果不输出在屏幕上
concurrent=50默认并发用户为50
delay=1测试是延迟一秒发到服务器
1.5web服务器以及相关内容介绍
WEB服务器也称为WWW(WORLDWIDEWEB)服务器,主要功能是提供网上信息浏览服务。
通俗的讲,Web服务器传页面使浏览器可以浏览,提供的是客户端应用确切一点,你可以说:
Web服务器专门处理HTTP请求,过很多协议来为应用程序
Web服务器可以解析HTTP协议。
当Web服务器接收到一个HTTP请求(request),会返回一个HTTP响应(response),例如送回一个HTML页面。
为了处理一个请求(request),Web服务器可以响应(response)一个静态页面或图片,进行页面跳转(redirect),或者把动态响应(dynamicresponse)的产生委托(delegate)给一些其它的程序例如CGI脚本,JSP(JavaServerPages)脚本,servlets,ASP(ActiveServerPages)脚本,服务器端(server-side)JavaScript,或者一些其它的服务器端技术。
无论它们的目的如何,这些服务器端的程序通常产生一个HTML的响应(response)来让浏览器可以浏览。
目前最流行的web服务器是apache.鉴于apache的开源,稳定,扩展性好等优点,本次设计选用的是apache.服务器端的脚本采用PHP编写。
第2章环境搭建
2.1不同ABI操作系统搭建
2.1.1debian-o32-ext3系统的搭建
龙芯MIPSO32ABI下的MIPS1指令集架构,ext3文件系统,Debian发行版debian系统下默认的程序都是使用O32MIPS1指令集编译的,所以这个系统的构建与常见的linux系统构建没有差别
1>
切换成root用户,准备分区,格式化成ext3,挂载
2>
使用wget命令下载系统包wgetp:
//
3>
解压缩到准备好的分区中,假设是/mnt/hda9
tarjxvf20100131.tar.bz2-C/mnt/hda9
4>
下载龙芯的内核,放到boot中去,配置boot.cfg文件。
这里我们把硬盘的分区1专门用来放内核文件,所以只需要修改boot.cfg文件即可,增加新的系统项。
5>
修改/mnt/hda9/etc/fstab文件,主要是硬盘的分区挂载位置
6>
下载显卡驱动源代码,编译成.so文件,放到/usr/lib/xorg/modules/drivers下面,由于现在的默认的龙芯系统都是O32MIPS1的,所以该系统的显卡驱动是现成的。
针对显卡,需要修改/etc/X11/xorg.conf文件,主要设置显卡和分辨率信息,配置文件相对简单。
7>
当做完这些后,系统就可以使用了。
作为基本系统,我们增加两个服
务,一个是sshd,用来通过网络登录维护使用;
另一个是openvpn,通过vpn远程的方式,即可远程维护,也就是说我可以通过vpn和ssh登录到毕设的龙芯机器上安装或调试程序。
8>
最后可能需要更新到最新版,设定aptitude源,然后aptitudeupdate;
aptitudedist-upgrade
2.1.2debian-o32-ext4系统的搭建
ext4版本的系统再建一个ext4的分区,然后把系统copy过去就行,最后改fstab和boot.cfg配置文件
2.1.3gentoo-N32-ext3系统的搭建
龙芯MIPSN32ABI下的MIPS3指令集架构,ext3文件系统,Gentoo发行版
使用wget命令下载系统包,MIP3stage3的包wget
解压缩到准备好的分区中,假设是/mnt/hda9,使用lzma命令和tar解
压缩。
下载显卡驱动源代码,编译成.so文件,注意是-abi=n32-march=loongson2f,放到/usr/lib/xorg/modules/drivers下面,由于现在的默认的龙芯系统都是O32MIPS1的,所以该系统的显卡驱动是现成的。
作为基本系统,我们增加两个服务,一个是sshd,用来通过网络登录维护使用;
该系统不建议更新到最新版,更新适度即可,主要是保证基本系统的软件版本都差不多就行。
由于现有的Mips软件大都是O32的,也就是说纯32位的,所以直接迁移到N32上面会有bug,升级更新都要慎重
2.1.4gentoo-N32-ext4系统的搭建
ext4版本的系统再建一个ext4的分区,然后把系统copy过去就行,最后改fstab和boot.cfg配置文件。
2.1.5憨牛-N64-ext3系统的搭建
龙芯MIPSN64ABI,ext3文件系统,LFS版(linuxfromscratch)是纯64位的版本。
下载显卡驱动源代码,编译成.so文件,注意是-abi=n64,放到/usr/lib/xorg/modules/drivers下面,由于现在的默认的龙芯系统都是O32MIPS1的,所以该系统的显卡驱动是现成的。
针对显卡,需要修改/etc/X11/xorg.conf文件,主要设置显卡和分辨率信息,配置文件相对简单
2.1.6憨牛-N64-ext3系统的搭建
ext4版本的系统再建一个ext4的分区,然后把系统copy过去就行,最后改fstab和boot.cfg配置文件.
2.1.7gentoo-o32-ext3系统的搭建
龙芯MIPSO32ABI下的MIPS3指令集架构,ext3文件系统,Gentoo发行版龙芯2F支持MIP3指令集,所以没有现成的可用。
使用wget命令下载系统包,MIP3stage3的包wgethttp:
//distfiles.gentoo.org/experimental/mips/stages/mips3/2008.0/stage3-mips3-2008.0.tar.bz2
解压缩到准备好的分区中,假设是/mnt/hda9tarjxvf20100131.tar.bz2-C/mnt/hda9
下载显卡驱动源代码,编译成.so文件,注意是-march=mip3,放到/usr/lib/xorg/modules/drivers下面,由于现在的默认的龙芯系统都是O32MIPS1的,所以该系统的显卡驱动是现成的。
针对显卡,需要修改/etc/X11/xorg.conf文件,主要设置显卡和分辨率信息,配置文件相对简单。
该系统需要更新到最新版,过程相对复杂,请参考gentoodocumentation。
需要先升级gcc、binutils、glibc,然后重新编译系统,由于gentoo是源码管理维护的,所以编译的时间很长,错误基本都是软件版本的依赖关系,不会出现特别复杂的程序错误。
该系统难点是gentoo的源码管理维护,所有程序基本都会编译一遍。
gentoo包管理程序是emerge,整个系统的升级命令是emerge-avuDNworld
2.1.8gentoo-o32-ext4系统的搭建
2.1.9fstab文件的修改
Linuxfstab文件表:
表2-3fstab的修改
Fs_spec
Fs_file
Fs_type
Fs_options
Fs_pass
Debian-o32-et3
/dev/hda1
/mnt/hda1
Ext3
defaults
0
Debian-o32-et4
/dev/hda2
/mnt/hda2
Ext4
Gentoo-o32-et3
/dev/hda3
/mnt/hda3
Gentoo-o32-et4
/dev/hda4
/mnt/hda4
Gentoo-n32-et3
/dev/hda5
/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基龙芯 平台 web 服务器 性能 测试 设计 毕业设计