首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 312 毫秒
1.
基于剖视的优化技术根据程序先前运行时收集的剖视信息来指导编译优化。文章给出了一种在GCC中基于值剖视的代码特例化实现方法。NPB和SPEC CPU2000基准程序测试结果表明,该代码特例化方法能够有效提高程序性能,同时引入的开销较小。  相似文献   

2.
随着程序的规模的扩大和复杂度的提高,通过直接分析源码进行程序切片,变得十分困难。在现有的利用编译优化技术来优化程序切片的方法中,存在无法有效利用程序的编译时信息和编译器的优化技术,以及对语言的支持不完善的问题。为此,分析了GCC编译器在编译时的中间表示,首次提出了基于GCC关键变量数据流分析算法的程序切片技术,以程序的GIMPLE中间表示为基础,以程序基本块为单位,通过迭代求解数据流方程,分析程序基本块内和不同基本块间的关键变量数据流信息。该程序切片技术可以获取源程序中仅与预设目标函数相关的关键变量和关键语句,缩减程序规模。最后通过实验,证明了该算法的可行性。  相似文献   

3.
在分析GCC结构的基础上, 阐述了GCC在C4350AL处理器上的移植与优化方案. 针对C4350AL对GCC的x86后端进行了扩展, 实现了GCC对C4350AL的识别. 根据C4350AL的结构特性, 在GCC中为建立了流水线模型描述, 并基于SPEC2006测试程序对模型效果进行了验证. 实验表明采用该模型使得GCC在C4350AL上获得了性能的提升.  相似文献   

4.
易会战  罗兆成 《软件学报》2013,24(8):1761-1774
当前,很多部门使用高性能计算机周期性地进行业务性的数值计算。维护这些业务系统的主要代价是每天消耗的大量电能,降低能量消耗能够极大地降低维护业务系统的成本。高性能业务系统的核心是微处理器,当前,微处理器普遍支持动态电压调节技术。该技术通过降低微处理器的电压和频率减小微处理器的能耗,但是一般会导致系统性能的下降。提出了一种面向高性能业务应用的能量优化技术。该技术利用系统支持的多个频率层次,建立性能约束下的能量优化模型,优化业务应用的能耗。根据程序信息获取方式的差别,提出了SEOM 和 CEOM 两种能量优化模型,SEOM模型的程序信息可以直接测试获取,CEOM的程序信息采用编译器插桩方法获取。使用典型平台对能耗优化效果进行了验证,最多可节省12%的能耗。  相似文献   

5.
石博慧  陈英 《微机发展》2004,14(8):67-70
GCC是基于Linux下的开放源码的优化编译系统,可以接收多种高级源语言,广泛支持多平台操作系统。其代码优化机制,不仅能兼顾时间、空间效率,生成高质量的目标代码,而且具有很强的可移植性与可扩充性,是编译器优化研究的目标。通过对GCC的整体结构、优化策略、优化方法与关键技术、中间语言等进行详细的剖析,抽取出完整的GCC优化体系结构。文中集中探讨了GCC的优化策略和实现技术,首先从GCC优化体系的总体规划入手,着重分析了GCC的优化组织策略,设计、引入中间代码RTL的技巧和内涵,进一步研究了GCC所涉及的控制流分析技术、数据流分析技术的实现机制。  相似文献   

6.
GCC是基于Linux下的开放源码的优化编译系统,可以接收多种高级源语言,广泛支持多平台操作系统.其代码优化机制,不仅能兼顾时间、空间效率,生成高质量的目标代码,而且具有很强的可移植性与可扩充性,是编译器优化研究的目标.通过对GCC的整体结构、优化策略、优化方法与关键技术、中间语言等进行详细的剖析,抽取出完整的GCC优化体系结构.文中集中探讨了GCC的优化策略和实现技术,首先从GCC优化体系的总体规划入手,着重分析了GCC的优化组织策略,设计、引入中间代码RTL的技巧和内涵,进一步研究了GCC所涉及的控制流分析技术、数据流分析技术的实现机制.  相似文献   

7.
主流通用处理器都已经实现了多核并行以及处理器核内的SIMD并行。虽然GCC编译器实现了面向SIMD并行的自动向量化,但是编译器针对OpenMP并行程序的自动向量化效果仍很不理想。针对多线程并行的OpenMP程序,基于GCC的OpenMP编译实现,扩展了数据对齐属性指导语句,使编译器在自动向量化时能够进行更准确的数据对齐与否的判断,优化了GCC编译器的自动向量化。  相似文献   

8.
最大程度地优化代码和挖掘应用程序的潜在性能,是高性能编译器设计中非常重要的一个任务。基于profiling的反馈式编译优化是一种有效的编译优化模式,它通过程序运行时的剖面信息来指导对代码的优化。本文总结了GCC在实现这种模式上的一般流程、所遇到的问题和解决方法,深入分析了GCC4.0的插桩方法、反馈数据文件格式,以及在
中间语言中标注反馈信息等的实现机制。  相似文献   

9.
现代的计算机处理器和计算机系统实现了很多先进技术,要利用这些技术更需要编译器的支持以取得高性能。GCC中Tree-SSA优化框架提供了一个功能强大的程序分析框架。增强的数据依赖分析信息允许编译器变换一个算法以取得更大的局部性,提高资源的利用率以增大吞吐量,提高性能。该文对数据依赖、矩阵变换、循环变换进行了研究,分析了它们的特点,算法和性能,陈述了GCC中循环变换的现状,对以后的研究做出了一定的展望。  相似文献   

10.
GCC4.1数据依赖分析器的分析与改进   总被引:1,自引:0,他引:1       下载免费PDF全文
本文深入分析了GCC4.1的数据依赖分析器,针对它在分析Fortran程序的线性化数组访问时的不足,给出了两点改进:一是初步实现了一个非仿射数组下标依赖分析算法;二是提出并实现了分裂递归链的仿射数组下标数据依赖分析方法。实验表明,这两点改进增强了GCC4.1的数据依赖分析能力,为进行循环变换如循环交换提供了更准确的数据依赖信息。  相似文献   

11.
Dynamic optimization relies on runtime profile information to improve the performance of program execution. Traditional profiling techniques incur significant overhead and are not suitable for dynamic optimization. In this paper, a new profiling technique is proposed, that incorporates the strength of both software and hardware to achieve near-zero overhead profiling. The compiler passes profiling requests as a few bits of information in branch instructions to the hardware, and the processor executes profiling operations asynchronously in available free slots or on dedicated hardware. The compiler instrumentation of this technique is implemented using an Itanium research compiler. The result shows that the accurate block profiling incurs very little overhead to the user program in terms of the program scheduling cycles. For example, the average overhead is 0.6% for the SPECint95 benchmarks. The hardware support required for the new profiling is practical. The technique is extended to collect edge profiles for continuous phase transition detection. It is believed that the hardware-software collaborative scheme will enable many profile-driven dynamic optimizations for EPIC processors such as the Itanium processors.  相似文献   

12.
周世龙  陈兴蜀  罗永刚 《计算机应用》2013,33(10):2792-2795
通过对Nutch MapReduce job配置参数调优而优化Nutch爬行性能。以Hadoop视角梳理Nutch爬行过程,并基于此详细分析Nutch MapReduce job的工作流特性;对Nutch爬行时MapReduce job进行持续监测,生成优化参数并代入下一轮相同类型的job运行中,从而达到优化目的;通过选取合适的间隔监测值平衡集群环境误差和监测负载以改进优化效果。经过实验测试,Nutch的爬行性能提高了5%~14%,且当监测间隔值为5时有最好优化效果  相似文献   

13.
动态二进制翻译器中间接转移指令的预测优化对其性能至关重要.在研究了动态二进制翻译器的取值信息收集框架后,给出如何在程序运行起始阶段对间接转移指令的目标地址进行取值信息收集的方法,并结合统计原理,提出对目标地址的预测应该结合取值信息进行区间估计.最后,提出了一个基于取值信息收集分析结果进行目标地址预测的优化决策函数并且通过在动态二进制翻译器"IA-32 Execution Layer"上进行实验验证了该决策函数对于间接转移指令预测的效果,并讨论了其准确性和精确度.  相似文献   

14.
动态语言可以利用程序运行时获取的动态信息,指导程序进行各种优化。但是,现有的Java虚拟机没有将运行过程中收集的信息有效利用,而是在运行结束后直接丢弃,下一次执行程序的时候重新监测、收集、优化需要的信息。基于HotSpot虚拟机提出一种动静结合的自适应优化方法,将运行过程中优化对象迭代搜索到的最佳参数或者信息保存到资源库中;能够从资源库中学习获得适合当前程序的最佳参数或选项,可有效地利用运行过程中积累的数据;资源分析是静态且离线的,不占用应用程序运行的开销;迭代学习的过程中,通过避免冗余实例入库以及从库中剔除噪声实例,保证资源库学习过程的精度与效率。实验表明,该框架对指导Java虚拟机在不同的平台上自适应优化具有一定的实用性。  相似文献   

15.
Many researchers have developed applications using transactional memory (TM) with the purpose of benchmarking different implementations, and studying whether or not TM is easy to use. However, comparatively little has been done to provide general-purpose tools for profiling and optimizing programs which use transactions. In this paper we introduce a series of profiling and optimization techniques for TM applications. The profiling techniques are of three types: (i) techniques to identify multiple potential conflicts from a single program run, (ii) techniques to identify the data structures involved in conflicts by using a symbolic path through the heap, rather than a machine address, and (iii) visualization techniques to summarize how threads spend their time and which of their transactions conflict most frequently. Altogether they provide in-depth and comprehensive information about the wasted work caused by aborting transactions. To reduce the contention between transactions we suggest several TM specific optimizations which leverage nested transactions, transaction checkpoints, early release and etc. To examine the effectiveness of the profiling and optimization techniques, we provide a series of illustrations from the STAMP TM benchmark suite and from the synthetic WormBench workload. First we analyze the performance of TM applications using our profiling techniques and then we apply various optimizations to improve the performance of the Bayes, Labyrinth and Intruder applications. We discuss the design and implementation of the profiling techniques in the Bartok-STM system. We process data offline or during garbage collection, where possible, in order to minimize the probe effect introduced by profiling.  相似文献   

16.
针对多目标优化算法对目标次序表现敏感这一特点,提出对灰熵并行分析法的目标次序敏感性进行分析.以多目标流水车间调度问题为对象,建立不同目标次序的多目标流水车间调度模型,以基于灰熵并行分析的GA优化不同次序的多目标模型.定义敏感系数,绘制敏感系数曲线图.实验结果表明,灰熵并行分析法对目标次序敏感,按目标值大小排列的升序和降序并不是最好的次序,震荡次序敏感系数最小.表明多目标优化时要选择合理目标次序以获得更好的优化结果.算法适应度值同样对目标次序敏感,对算法搜索效果影响明显.  相似文献   

17.
编译器中的edge profiling设计和实现   总被引:4,自引:0,他引:4  
1.简介这篇论文是在从事ORC(Open Research Compiler)编译器的过程中完成的。ORC是中科院计算所同Intel公司的合作项目,为Intel的新一代64位芯片开发开放源代码的先进编译器。ORC的实现目标:为研究机构和团体提供一个可靠稳定的、开放源代码的编译基础结构,方便其在ORC的基础上进行编译器和体系结构的研究;与当前其他IA-64编译器相比,要有比较高的性能。代码优化的一个重要目标是为了减少程序的执行时间。  相似文献   

18.
在程序实际执行中,Profiling技术能为编译器提供准确的轮廓信息。编译优化借助这种轮廓信息,可在优化时进行取舍,提高生成代码性能。该文介绍了在龙芯/ORC编译器中edge profiling的技术,给出了在edge profiling辅助下CPU2000性能测试结果。  相似文献   

19.
Incomplete data clustering is often encountered in practice. Here the treatment of missing attribute value and the optimization procedure of clustering are the important factors impacting the clustering performance. In this study, a missing attribute value becomes an information granule and is represented as a certain interval. To avoid intervals determined by different cluster information, we propose a congeneric nearest‐neighbor rule‐based architecture of the preclassification result, which can improve the effectiveness of estimation of missing attribute interval. Furthermore, a global fuzzy clustering approach using particle swarm optimization assisted by the Fuzzy C‐Means is proposed. A novel encoding scheme where particles are composed of the cluster prototypes and the missing attribute values is considered in the optimization procedure. The proposed approach improves the accuracy of clustering results, moreover, the missing attribute imputation can be implemented at the same time. The experimental results of several UCI data sets show the efficiency of the proposed approach.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号