首页 | 本学科首页   官方微博 | 高级检索  
文章检索
  按 检索   检索词:      
出版年份:   被引次数:   他引次数: 提示:输入*表示无穷大
  收费全文   7篇
  完全免费   9篇
  自动化技术   16篇
  2017年   1篇
  2016年   2篇
  2014年   5篇
  2013年   2篇
  2012年   1篇
  2009年   1篇
  2008年   1篇
  2007年   1篇
  2004年   2篇
排序方式: 共有16条查询结果,搜索用时 31 毫秒
1.
代码翻译中PERFORM和GOTO语句复合结构的变换   总被引:2,自引:0,他引:2       下载免费PDF全文
传统语言COBOL从诞生至今已有近50年历史,现存约有1 000亿行代码是用COBOL编写的.维护这些遗产代码的一个有效方法是将其翻译成现代语言,例如Java.其中将COBOL语言中GOTO和PERFORM语句及其复合控制结构消除是翻译过程中的一个关键步骤.提出一种利用switch,while语句来消除GOTO和PERFORM复合控制结构的方法,实现了程序的等价变换.该方法不改变程序的控制结构,保持其可读性,并将代码膨胀率控制到2倍左右.该方法已在所开发的"C2J翻译系统"中进行应用,通过了400万行实际商用程序的测试,结果证明,该方法是正确、有效的.  相似文献
2.
二进制翻译中的X86浮点栈处理   总被引:1,自引:1,他引:0  
二进制翻译系统是一种基于软件的跨平台代码迁移系统,它将一种体系结构的二进制代码翻译成另一种体系结构的二进制代码.二进制翻译可以用于解决遗产代码的迁移问题,也可以实现不同硬件平台之间软件的通用.浮点栈的处理已成为以X86为源的二进制翻译的研究中的关键性问题之一,如何处理X86浮点栈问题直接关系到以X86为源的二进制翻译系统的性能.针对X86浮点寄存器栈的特征,提出了一种扩展虚拟栈(extending virtual stack)处理方案.它采用归一的方法,保证了每个基本块中的运算所涉及到的浮点寄存器可以直接映射到目标机器中的浮点寄存器,确保了翻译的效率,并利用翻译时的分析避免了在入口处不必要的判断;同时还给出了在基本块入口处判别一个基本块是否会出现浮点栈上溢和下溢的充分必要条件,为生成更加高效的代码提供了条件.实验表明,它能够在保证正确实现其功能的前提下,获得更好的执行效率.  相似文献
3.
二进制翻译中解析多目标分支语句的图匹配方法   总被引:1,自引:0,他引:1  
二进制翻译技术现已成为实现软件移植的重要手段.在二进制翻译系统中,如何有效地挖掘程序的代码并对其进行高效翻译是影响系统性能的关键,而二进制代码中间接跳转语句的存在,使得静态时难以得到它的跳转目标,影响了代码的发掘率和最终的翻译效果.在通常的应用程序中,间接跳转指令经常用来实现多目标分支语义,分支目标存放在跳转表中.提出了一种解析多目标分支语句及其跳转表的方法,能够挖掘出间接跳转的目标,进而对其进行有效翻译并提高二进制翻译系统的性能.该方法提出使用语义图来对预期语义进行刻画和表达.语义图能够对考察的指令序列进行语义提取,识别出与预期语义相匹配的指令流,还可以应对编译器在不同优化选项下生成的指令,并能有效滤除不相关指令带来的干扰.实验结果表明,对于SPEC CINT2000中的部分测试用例,代码翻译的覆盖率可以提高9.85%~22.13%,相应带来的性能提升可达到8.30%~17.71%,而使用的算法时间复杂度仅为O(1).  相似文献
4.
任务并行编程模型研究与进展   总被引:1,自引:0,他引:1       下载免费PDF全文
任务并行编程模型是近年来多核平台上广泛研究和使用的并行编程模型,旨在简化并行编程和提高多核利用率.首先,介绍了任务并行编程模型的基本编程接口和支持机制;然后,从3个角度,即并行性表达、数据管理和任务调度介绍任务并行编程模型的研究问题、困难和最新研究成果;最后展望了任务并行未来的研究方向.  相似文献
5.
本文从动态编译的概念出发,着重讨论了运行时特定化技术和Just-in-time编译技术;比较全面地总结并评述了具有代表性的动态编译系统及其采用的Profiling技术、重编译技术;并探讨了动志编译技术研究中存在的一些问题及进一步的工作。  相似文献
6.
二进制翻译是在不同硬件平台之间实现软件迁移的重要手段.在二进制翻译系统中,如何在没有标志位寄存器的目标平台上模拟实现源平台上标志位寄存器的功能,是影响系统性能的关键.现有的标志位分析技术通过对标志位的定值引用进行数据流分析,尽可能多地消除冗余的标志位定值.但是,对于那些会被引用的标志位定值,现有的技术仍然需要进行翻译.这不仅会导致翻译生成代码的膨胀,还会影响二进制翻译系统的性能.提出了一种二进制翻译中基于模式化的标志位翻译方法.该方法在标志位分析技术基础上,通过将源平台上标志位定值指令和引用指令组合成固定的标志位模式,然后根据模式的具体语义选择目标平台上具有相同语义功能的指令组合进行翻译.这种模式化的翻译方法,不仅可以降低因翻译标志位而引入的代码膨胀,还可以提升二进制翻译系统的性能.实验结果表明,对于SPEC CINT2006中的程序,该方法不仅可以使翻译生成的代码量平均减少7.5%,还可以将程序的性能平均提升10%.  相似文献
7.
Efficiency of batch processing is becoming increasingly important for many modern commercial service centers, e.g., clusters and cloud computing datacenters. However, periodical resource contentions have become the major performance obstacles for concurrently running applications on mainstream CMP servers. I/O contention is such a kind of obstacle, which may impede both the co-running performance of batch jobs and the system throughput seriously. In this paper, a dynamic I/O-aware scheduling algorithm is proposed to lower the impacts of I/O contention and to enhance the co-running performance in batch processing. We set up our environment on an 8-socket, 64-core server in Dawning Linux Cluster. Fifteen workloads ranging from 8 jobs to 256 jobs are evaluated. Our experimental results show significant improvements on the throughputs of the workloads, which range from 7% to 431%. Meanwhile, noticeable improvements on the slowdown of workloads and the average runtime for each job can be achieved. These results show that a well-tuned dynamic I/O-aware scheduler is beneficial for batch-mode services. It can also enhance the resource utilization via throughput improvement on modern service platforms.  相似文献
8.
In this paper,we present a hybrid circular queue method that can significantly boost the performance of stencil computations on GPU by carefully balancing usage of registers and shared-memory.Unlike ea...  相似文献
9.
随着行业应用的飞速扩张,数据中心以及云等日益成为主流服务平台.高性能的片上多核系统也随之成为重要的可分配资源之一.然而,在对多用户提供服务(并发执行、并置执行)时,其所固有的共享资源会引发严重的并发性能下降.在此背景下,多核系统的性能以及资源利用率问题成为研究热点.软件调度策略作为一种性价比较高的调节手段对于缓解资源冲突一直行之有效,然而,硬件技术的变迁对其调节的效力将产生一定影响.首先从片上多核结构关键技术入手,对共享资源的变化进行了详细阐述,在此基础上,对当前主流应用领域中两种不同类型的软件调度策略进行介绍和分析.在总结现有策略的局限性以及面临的新挑战的同时,对未来的研究趋势作了展望.  相似文献
10.
内存申请是引发共享存储系统上MapReduce性能下降的主要瓶颈之一,特别是对于需要处理大量键值的应用尤为严重.为了解决此问题,提出了一种内存开销低、能高效处理大规模键值的MapReduce并行计算框架——MALK(high-efficient MapReduce for applications having large amount of keys).MALK对于离散的大规模键值采用连续的存储管理方法,避免了大量小块内存的申请;通过更细粒度地处理Map阶段的任务和流水化Reduce阶段的任务,来减少系统运行过程中同时活跃的数据量,从而将应用程序对内存的需求控制在一个较小的范围内;并提出一种Hash表的复用机制,通过复用Hash表的存储空间来避免流水过程中Hash表内存的重复申请;MALK还综合考虑了任务的粒度和数量对任务管理开销和整体性能的影响,把Reduce阶段的任务数量设成对系统性能最优的值.实验结果表明:相对于Phoenix++,MALK的性能最高可提升3.8倍(平均2.8倍);在Map和Reduce阶段,MALK最多可节省95.2%和87.8%的存储空间;MALK在Reduce阶段还取得了更好的负载均衡,降低了L2和LLC Cache的缺失率.  相似文献
设为首页 | 免责声明 | 关于勤云 | 加入收藏

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