面向64位UniCore体系结构的C语言函数库的移植与优化

来源 :北京大学 | 被引量 : 0次 | 上传用户:zoeshuwen88
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
作为目标文件的集合,C语言函数库为系统运行和软件开发提供了必要的支持。64位技术的普及为计算机的发展注入了强劲动力。UniCore-3处理器是我国自主研发的64位处理器。为支持UniCore-3处理器的软件研发和应用,需要面向64位UniCore体系结构分析、移植和优化相应的C语言函数库。  本文首先分析对比了Glibc、Newlib、uClibc、EGlibc和Bionic五个有代表性的C语言函数库,并选择Glibc函数库作为移植和优化对象。然后,本文分析总结了Glibc函数库的整体框架及其面向X86-64、LA64、SPARC64、S390-64、MIPS64和PowerPC64六个主要的64位体系结构的移植和优化情况,为后续工作提供了参考。最后,本文面向64位UniCore体系结构对Glibc函数库进行了移植和优化工作。本文在机制分析的基础上重点从代码修改、源码编译和整体测试三个阶段对移植工作进行了总结,并针对strlen、memcpy、memccpy、memset、strcpy、strcat、memcmp和strcmp八个函数进行了分析、优化和评测工作。  本文的测试结果表明,面向64位UniCore体系结构移植的Glibc函数库能够配合整套编译工具链完成自举编译并通过GCC测试套件和SPEC程序的测试,符合基本的应用要求。本文的评测结果显示,相关函数的优化工作均取得了一定效果,其中memccpy、strcpy、strcat和strcmp四个函数通过拓展基本操作单位实现的加速比均在5.9以上,strlen、memcpy、memset和memcmp四个函数通过手工汇编优化实现的加速比均高于1。
其他文献
在过去近二十年时间里,超级计算机的计算能力呈指数增长,现已向百亿亿次量级(E级)迈进。巨大的挑战和机遇伴随着大规模的异构系统环境而到来。应用软件需要顺应超级计算机的发展
基于语义特征的模型信息的一体化表示方法具有十分重要的意义,既表示了模型的几何拓扑信息,满足了CAD环节的计算需要,也表示了其工艺材料及特征约束等语义属性信息,有利于CAE
实时系统是一类具有时间限制的系统,系统的正确性不仅仅取决于计算结果的正确性,也取决于得出结果的时间。传统的实时系统大多属于硬实时系统,这种系统一般运行环境明确、任
随着网络技术的发展,一些新型网络应用对数据的完整性验证提出了更高的功能与安全要求。尤其是无线传感器网络以及云存储的出现与发展,数据异地采集与存储的模式对数据完整性
如今,形式化方法越来越多地被应用到与生命财产安全密切相关的计算机软件领域。其中,编程语言的形式化操作语义起着一个重要的作用,比起通常用自然语言描述的编程语言规范,形
随着智能手机的普及,Android操作系统逐渐流行起来,并在2011年超越塞班,成为最流行的智能手机操作系统。Android巨大的市场占有率也吸引了众多的开发者为其开发应用程序。然
随着生物医药技术以及计算机科学技术的发展,质谱分析技术在蛋白质组学及糖组学等多领域得到了应用,包括蛋白质鉴定、糖分子结构鉴定、生物标记物发现与疾病诊断建模等。  质
云计算自从被提出以后,就一直是国内外计算机网络技术研究的一个热点。随着云计算的广泛应用,云计算平台的安全性成为了云计算的核心问题之一。云计算与传统计算相比最大的变化
学位
在软件迭代更新的开发过程中,会出现测试用例与被测代码不一致的情况,即当前的程序代码,并不能够全部通过旧版本的测试用例。这可能由当前代码的错误引发,也可能是测试用例造成。