如何提升大型机性能

减少大型机CPU消耗是个重要工作。节约每个CPU周期,不仅可以延缓硬件升级,还可以降低基于使用规模的软件授权费。

IBM Language Environment (LE)编辑器和运行时提供了很多优化选项——从而无须修改源代码。

编译时间选项

通过LE编译器优化,大型机程序员可以调整目标代码,充分发挥某个处理器家族计算性能。

ARCH(架构)是一个编辑器选项。ARCH级会指示编译器生成含有针对目标处理器进行性能优化的机器指令目标代码。ARCH重要性日益增加,因为IBM已经推出了数代服务器,都包含了针对性能优化设计的指令集。

另一种选择是TUNE,告诉编辑器安排机器指令顺序,确保能够利用处理器的指令管道与缓存优势。

程序员需要为生产线上最古老的处理器系列进行优化。挑错ARCH选项,并且操作异常(0C1s)可能会导致坏的TUNE,并降低性能。

虽然这些选项通常来说只专门针对C++编译器,但IBM已经将其扩展到COBOL与PL/1高级语言。

运行时选项

IBM lE同样提供了多种运行时选项,可以提高大型机性能。

以下是选项指定的层次结构:

运行时选项在程序中调用中指定

使用用户选项(UOPT)控制会话(CSECT)连接选项到程序

区域选秀(ROPT)模块

CEEPRMxx ParmLIB成员中的全局选项集

CBLPSHOPOPS的常规处理条件,存储初始化与堆栈大小是运行时优化选项,尤其在CICS环境中。

CBLPSHPOPS。CBPSHPOPS控制LE在进入或退出COBOL运行时时,是否执行PUSH HANDLE与POP HANDLE CICS命令。PUSH HANDLE命令PUSH HANDLE命令用栈保存所有尚未处理的条件,而POP则将句柄条件从前推动。如果任何条件在有未处理句柄的情况下被提出,那么控制会切换到HANDLE命令指定的错误运行时。

关闭CBPSHPOPS选项可以节约CPU周期,避免额外的PUSH与POP命令。然而,如果没有CBPSHPOPS,在较低模块提出的条件可能会渗透到没有错误准备的高级处理运行时。只有在分析与测试后才改变配置。

存储初始化 。STORAGE选项通一些参数控制内存初始化,例如新申请的堆段参数,LE释放的堆段参数以及初始化栈或当控制进入运行时进行自动存储。

堆初始化往往是CPU周期方面最廉价的成本。初始化栈存储则更昂贵,虽然成本取决于子程序调用次数。除非你为国家安全局工作,否则不要使用erase-on-free 清除选项。

要避免LE内存共同初始化,遵循编程最佳实践,假定存储是为初始化的,除非在程序中有另外明确指出。

栈和堆大小 。LE有自己的内存管理器,其目的是减少程序找操作系统或CICS申请更多存储的次数。 LE在大块中获得内存,再根据需要细分。当块无法满足存储要求时, LE会调用操作系统或CICS申请另一个块。一个初始化堆或栈存储的明智选择将减少调用操作系统内存管理次数并降低CPU使用率。

选择初始块大小时一门超越科学的艺术。分块过小会增加CPU使用,但分块过大可能会降低存储使用。

在大存储块中的碎片在混合应用程序中相当麻烦。对于一个虚拟的应用程序,某程序从对存储块中申请512KB大小的堆,而另一个程序可能会在相同时间申请从1MB堆块中获得32字节的堆。随着程序运行,第一个程序获得512KB并调用另外那个获得32字节的程序。当第一个程序试图获得512KB时,LE无法通过现有的块满足需求,而必须申请另外一个块。这意味着有几乎0.5MB的存储没有被使用。

在选择初始堆和栈大小时,先研究应用程序行为。同样为CICS在每个用户存储分段的开头与结尾设置8字节“崩溃区”。一个4-K IBM LE事务请求(GETMAIN)实际占用4,112字节,这将导致CICS存储碎片。堆CICS来说,使用4,080字节,非常适合一个4-K页。LE同样使用一些新的存储用来满足自己使用控制,这也进一步降低了留给程序的可用空间。

(0)

相关推荐

  • 使用超线程提升处理器性能

    处理器设计师总是关注于不同的性能提升策略,为的是在每个时钟周期内完成尽可能多的计算。更快的频率、更大的数据路径以及不同的指令集方式都提升了性能。但是,性能提升最可能引起误解的一个方面就是超线程对处理器 ...

  • 怎么禁用浏览器插件提升运行性能

    禁止浏览器插件运行方法: 1.插件会影浏览器打开网页速度,那么当就需要及时将其禁止.首先打开浏览器,找到internet选项. 浏览器禁用插件提升运行性能方法 2.internet选项打开之后,选择里 ...

  • Win8禁用SuperFetch服务提升硬盘性能

    Win8禁用SuperFetch服务提升硬盘性能 SuperFetch是什么服务:它Win8系统中的一个超级预读服务,主要是应对大型写作软件而设计的服务,个人用户就没必要开启了.如果我们的用户所使用的 ...

  • win7怎么释放内存提升电脑性能

    win7怎么释放内存提升电脑性能 win7释放内存提升电脑性能的操作方法 方法一.提高硬件性能的方法 在Windows7系统中,提高硬件水平尤为重要,内存能否高速使用与别的硬件关系也是非常大的,比如当 ...

  • Win10有没有高性能模式 智能调配CPU 提升游戏性能

    最近小编发现有网友表示,Win10将加入了超级性能模式,主要为了提升游戏性能.很多网友可能听过Win10性能模式,但对于超级性能模式可能比较陌生吧,下面本文结合最新消息聊聊这个电脑爱好者可能关注的话题 ...

  • win7系统如何提升显卡性能?win7系统提高电脑显卡性能的方法

    win7系统如何提升显卡性能?对于电脑中的显卡,大家一定也不会陌生,显卡是电脑很重要的一个配置,它的好坏会影响到我们对电脑的使用效果,如果一些用户会问在win7系统如何提升电脑中的显卡显卡性能,不要着 ...

  • win10系统怎么提升CPU性能

    现在大部分电脑都是win10系统,有些用户为了增强游戏体验,想知道怎么提升CPU性能,接下来小编就给大家介绍一下具体的操作步骤.具体如下:1. 首先第一步鼠标右键单击左下角[开始]图标,在弹出的菜单栏 ...

  • 提升电脑性能应该升级哪些硬件(电脑想升级配置应该换哪些配件)

    现在很多人都喜欢给自己的电脑升级硬件配置,既然要用到升级电脑硬件配置才能满足使用需求的地步了,那电脑的"代差"肯定不小了,目前市面上技术最新的intel系列CPU为第十代,AMD锐 ...

  • 华为手机提升一定性能的方法

    手动设置 操作方法 01 打开设置 02 然后移动到下方点击开发者选项 03 进入后点第一项开启开发者选项 04 然后往下拉可以看到有一个强制GPU渲染把这个打开就可以提升一定性能 华为