您现在的位置是: 首页 > 数码新闻 数码新闻
aix优化cpu_ai优化设置
tamoadmin 2024-08-29 人已围观
简介1.aix系统怎么查询cpu使用率user% kern2.cpu负载是指的是什么?3.谁有AIX的中文详细操作命令手册?4.aix中ksh:vmstat:not found是什么意思,就是想查看cpu使用率,好像top等命令都不行,是什么没开吗?5.AIX和Linux下怎么查看CPU和内存信息可以直接用命令prtconf查看,得到的输出有类似下面的行,其中number of processors
1.aix系统怎么查询cpu使用率user% kern
2.cpu负载是指的是什么?
3.谁有AIX的中文详细操作命令手册?
4.aix中ksh:vmstat:not found是什么意思,就是想查看cpu使用率,好像top等命令都不行,是什么没开吗?
5.AIX和Linux下怎么查看CPU和内存信息
可以直接用命令prtconf查看,得到的输出有类似下面的行,其中number of processors 就是这个aix系统所拥有的核心数:
$ prtconf
System Model: IBM,8284-22A
Machine Serial Number: ********
Processor Type: PowerPC_POWER8
Processor Implementation Mode: POWER 8
Processor Version: PV_8_Compat
Number Of Processors: 2
Processor Clock Speed: 4157 MHz
CPU Type: 64-bit
Kernel Type: 64-bit
LPAR Info: ************
Memory Size: 16384 MB
Good Memory Size: 16384 MB
aix系统怎么查询cpu使用率user% kern
肯定会的。
因为物理内存不够的时候,虚拟内存的使用率就很高了。你可以找一下swap和 paging的概念。系统会频繁的把内存的东西弄到硬盘上,导致cpu使用率过高。
所以会出现这种现象,内存使用率(不同操作系统的评估标准不一样,像aix就不在乎物理内存的使用率,只关心paging的使用率 ,lsps -s命令来看)长时间在90%以上的时候,cpu的使用率一直是100%。
cpu负载是指的是什么?
topas
配合sql语句:select ses.sid from v$session ses, v$process pro where pro.spid=从top中得到spid and ses.paddr=pro.addr;
如果是sql问题然后再关系v$sql
谁有AIX的中文详细操作命令手册?
AIX 全名为(Advanced Interactive Executive),它是IBM 公司的Unix操作系统,
整个系统的设计从网络、主机硬件系统,到操作系统完全遵守开放系统的原则。
下面对AIX 作以介绍。
RS/6000 用IBM 的UNIX操作系统-AIX作为其操作系统。这是一
个目前操作系统界最成功,应用领域最广,最开放的第二代的UNIX系
统。它特别适合于做关键数据处理(CRITICAL)。
AIX 包含了许多IBM 大型机传统受欢迎的特征,如系统完整性,系统可管理
性和系统可用性。
在 AIX 操作系统上,有许多的数据库和开发工具,用户除了选用已有的应用
软件外,还可以根据各自的需要进行开发。
此外,在AIX 之上,有一组功能强,使用方便的系统管理工具。对于异种平台
互存,互操作有很成熟的解决方案。
由于该 UNIX 的先进的内核技术和最好的开放性,因此,虽然RS/6000
从宣布到今天只有短短的5 年多的时间,它已在各行各业有了广泛的运用,
并在1993和1994年连续二年在MIDRANGE商用 UNIX 领域处于第一位。
RISC SYSTEM/6000的操作系统是AIX ,它是性能卓越的、开放的
UNIX,汇集了多年来计算机界在UNIX上的研究成果,以IBM 在计算机
体系结构、操作系统方面40多年极其丰富的经验。最大限度的使用RISC
技术,安装了象AIX 这样的具备工业界实力的UNIX操作系统。
它既可连接SAA 体系结构,又能与非IBM 系统的网络相连,因此,可以
和多数专业银行现有的系统实现互连,这对今后业务系统拓展将带来极大的
灵活性,并降低投资。
AIX 遵循一系列的国际标准:
* IEEE POSIX1004.1-1990
* X/OPEN 移植指南ISSUE3的基本级(XPG3)
* AES/OS REVISION A (O/1 LEVEL 2 资格)
* FIPS 151-1
* AIX的编译器: XLC、C++(可选)、FORTRAN(可选)、PASCAL(可选)、COBOL(可选)
* ADA 的编译器已达到XPG3“成员”级的认可。
* AIX 支持多用户、多任务。
AIX有一些其它特性包括:
AIX 提供了3 种SHELL :SYSTEM V的KORN、BOURNE SHELL和4.3BSDC
SHELL作为可选择的UNIX系统界面;
安全设施满足TCB (Trusted Computing Base)的C2级;
实时处理能力,这对于“面向交易”的应用至关重要(如零售业
和银行等),它使RS/6000 获得极高的响应和吞吐量;
虚拟存储管理,当需要时,可将一些不常用的模块转送至外存,
提高内存的可利用性。
先进的文件系统,使得系统管理更加有效,并提高了数据可靠性
以及完整性。
能兼容Dos 应用程序和数据。
InfoExplorer,快速信息超文本索引系统- 不仅包括文字,而且
对包含声音、图像的索引系统,这是个联机的文件接口。包括全部的
超文本的索引和查找,以及面向任务和坐标的多重导引和索引系统。
这个文字及图形索引系统以一个灵活的、基于任务的方式去使用详细
资料及培训资料。
高级系统管理工具(SMIT,System Management Interface Tool)。
提供一级菜单驱动程序,诸如完成软件的安装与设置、设备的设置及
管理、问题的测定、存贮管理等。可以自动地进行I/O 设备设置,
ASCII 终端也可充当系统控制台。在LAN 上可以进行远程系统的安装。
系统工作负载
系统工作负载的完整准确的定义对于预测或理解它的性能是很关键的。在衡量系统性能时,工作负载的不同可能会比 CPU 时钟速度或随机访问存储器(RAM)大小不同带来更多的变化。工作负载的定义不仅必须包含向系统发送的请求的类型和速率,还要包含将要执行的确切软件包和内部应用程序。
包括系统将在后台处理的工作也很重要。例如,如果一个系统包含通过 NFS 加载且由其它系统频繁访问的文件系统,那么处理那些访问很可能是总体工作负载中非常重要的一部分,即使该系统不是正式的服务器也是如此。
已进行标准化从而允许在不同系统之间进行比较的工作负载称为基准程序。但是,很少有实际的工作负载能完全符合基准程序的精确算法和环境。即使是那些最初从实际的应用程序发展而来的行业标准基准程序也已经过简化和均匀化,从而使它们可移植到大量的硬件平台上。使用行业标准基准程序唯一有效的方法是减小将接受严肃评估的候选系统的范围。因此,在尝试理解系统的工作负载和性能时不应该只依赖基准测试结果。
可以将工作负载分为以下类别:
多用户
由多个用户通过各自的终端提交的工作组成的工作负载。通常,这种工作负载的性能目标有两种可能,即在保留指定的最坏情况响应时间条件下最大化系统吞吐量,或者对于固定不变的工作负载获得尽可能快的响应时间。
服务器
由来源于其它系统的请求组成的工作负载。例如,文件服务器的工作负载主要是磁盘读写请求。它是多用户工作负载(加上 NFS 或其它 I/O 活动)的磁盘 I/O 部分,所以适用同样的目标,即在给定的相应时间限制下最大化吞吐量。其它的服务器工作负载由诸如数学计算密集的程序、数据库事务、打印机作业之类的项组成。
工作站
由单独的用户通过键盘提交工作和在该系统的显示器上接收结果组成的工作负载。通常这种工作负载的最高优先级性能目标是使用户请求的响应时间最短。
性能目标
在定义了系统必须处理的工作负载后,可以选择性能标准并根据这些标准设定性能目标。计算机系统的总体性能标准是响应时间和吞吐量。
响应时间是提交请求和返回该请求的响应之间使用的时间。示例包括:
数据库查询花费的时间
将字符回显到终端上花费的时间
访问 Web 页面花费的时间
吞吐量是对单位时间内完成的工作量的量度。示例包括:
每分钟的数据库事务
每秒传送的文件千字节数
每秒读或写的文件千字节数
每分钟的 Web 服务器命中数
这些度量之间的关系很复杂。有时可能以响应时间为代价而得到较高的吞吐量,而有时候又要以吞吐量为代价得到较好的响应时间。在其它情况下,一个单独的更改可能对两者都有提高。可接受的性能基于合理的吞吐量与合理的响应时间相结合。
在规划或调谐任何系统中,当处理特定的工作负载时一定要保证对响应时间和吞吐量都有明确的目标。否则,有可能存在一种风险,那就是您花费了分析时间和物力改善的仅仅是系统性能中一个次要的方面。
程序执行模型
为了清楚地检查工作负载的性能特征,需要有一个动态而非静态的程序执行模型,如下图所示。
图 1. 程序执行层次结构. 该图形以一个三角形为基础。左边代表和右边适当的操作系统实体匹配的硬件实体。程序必须从存储在磁盘上的最低级别开始,到最高级别的处理器运行程序指令。例如,从底部到顶部,磁盘硬件实体容纳可执行程序;实内存容纳等待的操作系统线程和中断处理程序;转换后备缓冲区容纳可分派的结程;高速缓存中包含当前分派的线程和处理器流水线;而寄存器中包含当前的指令。
程序为了运行必须沿着硬件和操作系统层次结构并行向上前进。硬件层次结构中的每个元素都比它下面的元素稀少和昂贵。不仅程序不得不为了每个和其它程序竞争,而且从一个级别过渡到下一级别也要花时间。为了理解程序执行动态,需要对层次结构中每一级别有个基本的了解。
硬件层次结构
通常,从一个硬件级别移动到另一级别所需要的时间主要由较低级别的等待时间(从发出请求到接受到第一批数据的时间)组成。
固定磁盘
对于一个在单机系统中运行的程序而言,最慢的操作是从磁盘上取得代码或数据,这是因为有下列原因:
必须引导磁盘控制器直接访问指定的块(排队延迟)。
磁盘臂必须寻道以找到正确的柱面(寻道等待时间)。
读/写磁头必须等候直到正确的块旋转到它们下面(旋转等待时间)。
数据必须传送到控制器(传送时间)然后传递到应用程序中(中断处理时间)。
除了程序中显式的读或写请求以外,还有许多原因导致磁盘操作缓慢。频繁的系统调谐活动证明是不必要地跟踪了磁盘 I/O。
实内存
实内存通常称为随机存取存储器或 RAM,它比磁盘速度快,但每个字节的开销非常昂贵。操作系统尽量只把当前使用的代码和数据保存在 RAM 中,而把任何额外的内容存储在磁盘上,或者决不首先把它们带入 RAM 中。
然而,RAM 的速度不一定比处理器快。通常在硬件意识到 RAM 访问需求与处理器可使用数据或指令的时间之间,会出现许多处理器周期的 RAM 等待时间。
如果要访问存储到磁盘上(或者尚未调进)的某一虚拟内存页,则会产生一个缺页故障,并且程序的执行暂挂直到该页从磁盘读取。
转换后备缓冲区(TLB)
使程序员不会受限于系统的物理局限性的方法是实现虚拟内存。程序员在设计和编写程序时认为内存非常大,系统将负责将程序中指令和数据的虚拟地址转换成需要用来从 RAM 取得的指令和数据的实际地址。因为这个地址转换过程可能很费时,系统将最近访问过的虚拟内存页的实际地址保存在一个叫转换后备缓冲区(TLB)的高速缓存中。
只要运行中的程序继续访问程序和数据页中的一小部分,则完整的从虚拟到实际页地址的转换过程就不需要在每次 RAM 访问的时候都重做一次。当程序试图访问的虚拟内存页没有 TLB 入口(即 TLB 未命中)时,则需要大量的处理器周期(即 TLB 未命中等待时间)来进行地址转换。
高速缓存
为了将程序必须经历的 RAM 等待时间减到最小,系统为指令和数据组织了高速缓存。如果所需的指令和数据已在高速缓存中,则产生高速缓存命中,处理器就可在下一个周期立刻使用该指令或数据。否则产生高速缓存未命中,伴随有 RAM 等待时间。
在某些系统中,有两到高速缓存,通常称它们为 L1、L2 和 L3。如果一个特殊的存储器引用导致 L1 未命中,则检查 L2。如果 L2 产生未命中,则引用转至下一个级别,要么是 L3(如果存在),要么是 RAM。
高速缓存的大小和结构根据型号的不同而有不同,但是有效使用它们的原理是相同的。
流水线和寄存器
流水线型超标量体系结构使得在某些情况下可以同时处理多个指令。大批的通用寄存器和浮点寄存器使得可以将相当多的程序数据保存在寄存器中,而不需要频繁存储和重新装入。
可以设计优化编译器最大限度地利用这些能力。当生成产品程序时,无论程序有多小编译器的优化函数都应该能使用。Optimization and Tuning Guide for XL Fortran, XL C and XL C++ 中描述了如何将程序调谐到最大性能。
软件层次结构
程序为了运行还必须逐步执行软件层次结构中的一系列步骤。
可执行程序
当请求运行某个程序时,操作系统执行一些操作以将磁盘上的可执行程序转换成运行中的程序。首先,必须扫描当前 PATH 环境变量中的目录以查找程序的正确副本。然后,系统装入程序(不要和 ld 命令混淆,该命令是个绑定程序)必须解析出从程序到共享库的任何外部引用。
为了表示用户的请求,操作系统将创建一个进程或一组(例如专用虚拟地址段),任何运行中的程序都需要该进程或。
操作系统也会在该进程中自动创建一个单独的线程。线程是一个单独程序实例的当前执行状态。在 AIX 中,对处理器和其它的访问是根据线程来分配而不是根据进程分配的。应用程序可在一个进程中创建多个线程。这些线程共享由运行它们的进程所拥有的。
最后,系统转移到程序的入口点。如果包含入口点的程序页还不在内存中(可能因为程序最近才编译、执行和复制),则由它引起的缺页故障中断将该页从它的后备存储器中读取出来。
中断处理程序
通知操作系统发生了外部的机制是中断当前运行线程并将控制转移到中断处理程序。在中断处理程序可以运行之前,必须保存足够的硬件状态以保证在中断处理完成后系统能恢复线程的上下文。新调用的中断处理程序将经历在硬件层次结构中上移带来的所有延迟(除了页面故障)。如果该中断处理程序最近没有运行过(或者中间程序很节约时间),那么它的任何代码或数据不太可能保留在 TLB 或高速缓存中。
当再次调度已中断的线程时,它的执行上下文(如寄存器内容)逻辑上将得到恢复,以便它可以正确运行。然而,TLB 和高速缓存的内容必须根据程序的后继请求重新构造。因此,作为中断的结果,中断处理程序和被中断的线程都可能遇到大量的高速缓存未命中和 TLB 未命中延迟。
等待线程
无论何时只要执行的程序发出不能立刻满足的请求,例如同步 I/O 操作(显式的或缺页故障的结果),该线程就会处于等待状态,直到请求完成为止。除了请求本身所需的时间以外,通常这还会导致另外一些 TLB 和高速缓存的延迟时间。
可分派线程
当某个线程可分派但不在运行时,它不能完成任何有用的事情。更糟的是,正运行的其它线程可能导致重新使用该线程的高速缓存线路并将实内存页收回,从而引起最终分派时出现更多的延迟。
当前已分派的线程
调度程序选择对使用处理器有强烈要求的线程。在『CPU 调度程序性能概述』中讨论了影响该项选择需要考虑的事项。当分派线程后,处理器的逻辑状态恢复成线程中断时有效的状态。
当前的机器指令
如果未出现 TLB 或高速缓存未命中的情况,绝大多数机器指令都能在单个处理器周期内执行。相比之下,如果程序迅速转换到该程序的不同区域且访问大量不同区域中的数据,就会产生较高的 TLB 和高速缓存未命中率,执行每条指令使用的平均处理器周期数(CPI)可能大于 1。这种程序被认为有较差的局域性引用能力。它也许在使用必需的最少指令数来做这个工作,但是要消耗大量不必要的周期数。部分是因为指令数和周期数之间相关性较弱,检查程序列表来计算路径长度不会再直接产生一个时间值。由于较短的路径通常比较长的路径快,所以速率根据路径长度率的不同而明显不同。
编译器用完善的方法重新安排代码从而将程序执行所需的周期数降到最小。追求最佳性能的程序员必须首先致力于确保编译器具有有效优化代码所需的全部信息,而不是试图事后批评编译器的优化技术(请参阅『预处理器和编译器的有效使用』)。优化有效性的实际衡量标准是可信工作负载的性能。
系统调谐
在有效实现应用程序后,系统总体性能的进一步提高就成了系统调谐考虑的一个问题。系统级调谐包含的主要组件有:
通信 I/O
取决于工作负载的类型与通信链路的类型,可能需要调谐以下的一个或多个通信设备驱动程序:TCP/IP 或 NFS。
固定磁盘
逻辑卷管理器(LVM)控制文件系统的位置和磁盘上调页空间,这可能会极大地影响系统经历的寻道等待时间。磁盘设备驱动程序控制执行 I/O 请求所遵从的顺序。
实内存
虚拟内存管理器(VMM)控制空闲实内存帧的池,并决定何时从何处取用帧来补充该池。
运行线程
调度程序确定接下来由哪个可调度实体接收控制权。在 AIX 中,可调度实体是线程。请参阅『线程支持』。
性能调谐过程介绍
性能调谐主要是管理问题和正确的系统参数设置。调谐工作负载和系统以有效利用由下列步骤组成:
识别系统中的工作负载
设置目标:
确定如何评测结果
量化目标和区分目标的优先级
识别限制系统性能的关键
最小化工作负载的关键要求:
如果可选择的话,使用最适当的
减少个别程序或系统函数对关键的要求
结构化的并行使用
修改的分配以反映优先级
更改个别程序的优先级或限制
更改系统管理参数的设置
重复步骤 3 到步骤 5 直到满足目标(或者饱和)
如果必要的话,使用其它
在系统性能管理的每个阶段都有相应的工具(参阅附录 A 『监视和调谐命令和子例程』)。这些工具有些可从 IBM 得到;另一些是第三方产品。下图说明在一个简单的 LAN 环境中性能管理的各阶段。
图 2. 性能阶段. 该图用五个加权的圆圈说明对系统性能调谐的各步骤:规划、安装、监视、调谐和扩展。每个圆圈代表系统处于不同的性能状态:空闲、不均衡、均衡和过载。实质上就是扩展一个过载的系统、调谐系统直到它是均衡的、监视不均衡的系统并且在需要扩展时安装更多的。
识别工作负载
系统执行的所有工作都必须能够识别。特别是在 LAN 连接的系统中,通过系统的用户之间仅有的非正式协议,可以轻松地开发出一组复杂的交叉安装的文件系统。这些文件系统必须被识别出来并作为任何调谐活动的一部分进行考虑。
对于多用户工作负载,分析员必须量化一般情况和高峰期的请求率。确定用户实际与终端交互时间的实际比例也是很重要的。
该识别阶段中的一个要素是决定必须对生产系统进行评估和调谐活动,还是在另一系统上(或“切换”)用实际工作负载的模拟型式来完成评估和调谐活动。分析员必须针对非生产环境的灵活性权衡来自于生产环境结果的较大可靠性,分析员可在非生产环境中进行试验,当然试验所冒的风险是性能下降或更糟。
设置目标的重要性
虽然可以根据可测数量设置目标,但实际希望的结果往往带有主观性,比如令人满意的响应时间。进一步讲,分析员必须抵挡住调谐可测量的东西而不是对他而言是重要东西的诱惑。如果没有系统提供的评估能符合所要求的改进,那么就必须对该评估进行设计。
量化目标最有价值的方面不是选择达到的数字,而是对(通常)多个目标的相对重要性进行公开判定。如果这些优先级没有事先设定且不是每个相关的人都理解的话,分析员在没有进行频繁咨询之前不能作出任何折衷的决定。分析员还容易对用户的反应或管理性能中一些已经被忽略的方面而感到吃惊。如果系统的支持和使用跨过了组织的边界,您可能需要供应商和用户之间的书面服务级协议,可确保对性能目标和优先级有一个清楚而共同的理解。
识别关键
通常,给定工作负载的性能可由一两种关键系统的可用性和速度决定。分析员必须正确识别出那些,否则会冒险陷入无休止的尝试出错操作。
系统具有物理和逻辑。关键的物理通常比较容易识别,因为较多的系统性能工具可用来评估物理的利用率。通常最影响性能的物理如下:
CPU 周期
内存
I/O 总线
不同的适配器
磁盘臂
磁盘空间
网络访问
逻辑不太容易识别。逻辑通常是对物理进行分区的编程抽象。进行分区的目的是共享和管理物理。
构建于其上的物理和逻辑的一些示例如下:
CPU
处理器时间片
内存
页面帧
堆栈
缓冲区
队列
表
锁和信号量
磁盘空间
逻辑卷
文件系统
文件
分区
网络访问
会话
信息包
通道
了解逻辑和物理是很重要的。因为缺少逻辑线程可能阻塞,就像因为缺少物理而阻塞一样,扩展下层物理未必能保证创建附加的逻辑。例如,考虑使用 NFS 块 I/O 守护程序 biod。客户机上的一个 biod 守护程序要求处理每个暂挂的 NFS 远程 I/O 请求。因此,biod 守护程序的数量限制了能同时运行的 NFS I/O 操作的数量。当缺少 biod 守护程序时,系统检测会指示 CPU 和通信链路只使用了很少一部分。您可能有系统未充分利用(并且很慢)的象,事实上这时是因为缺少 biod 守护程序从而限制了其余的。biod 守护程序使用处理器周期和内存,但您不能简单地通过添加实内存或将它转移到一个更快的 CPU 上来修正这个问题。解决方案是创建更多的逻辑(biod 守护程序)。
在应用程序开发过程中可能不经意间创建逻辑和瓶颈。传递数据或控制设备的方法可以有效地创建一个逻辑。当偶然创建这样的时,通常没有工具可监视它们的使用,也没有接口控制它们的分配。它们的存在可能不会引起重视,直到某个特定性能问题出现时就会突出它们的重要性。
最小化关键要示
下面讨论在三个级别上考虑最小化工作负载的关键要求。
使用适当的
决定在一个上使用另一个时应该理智地考虑并且头脑中要有明确的目标。在应用程序开发过程中有一个选择的示例,即通过增加内存消耗来减少 CPU 的消耗来达到一个平衡。用于演示选择的公共的系统配置决策为:是将文件放置在单独的本地工作站上,还是放置在远程服务器上。
减少关键的要求
对于本地开发的应用程序,可用多种方法检查程序以便其更有效地执行相同的功能或除去不需要的功能。在系统管理级别上,争用关键的低优先级工作负载可以移动到其它系统中、在其它时间运行或由“工作负载管理器”控制。
结构化的并行使用
因为工作负载需要运行多个系统,从而可以利用这样的事实,即是独立的且可以并行使用。例如,操作系统预读算法检测到程序在顺序访问文件的事实,因此它调度并行执行的其它顺序读取操作,同时应用程序还处理先前的数据。并行也用于系统管理。例如,如果某个应用程序同时访问两个或多个文件且如果同时访问的这些文件存放在不同的驱动器上,那么添加一个额外的磁盘驱动器可能会提高磁盘 I/O 的速率。
分配优先级
操作系统提供了一些方法来区分活动的优先级。有些在系统级别上设置,比如磁盘调步。其它的例如进程优先级可由单个用户设置以反映连接到特定任务上的重要性。
重复调谐步骤
性能分析的一个公认的真理是接下来总有瓶颈出现。减少某个的使用意味着另一限制了吞吐量或响应时间。例如,设我们的系统中有下列的利用率级别:
CPU:90% 磁盘:70% 内存:60%
这个工作负载是 CPU 受限的。如果成功的调谐工作负载使得 CPU 负载从 90% 降到 45%,则可望在性能上有两倍的改善。不幸的是现在的工作负载是 I/O 受限的,它有下列的近似利用率:
CPU:45% 磁盘:90% 内存:60%
改善后的 CPU 利用率允许程序立刻提交磁盘请求,但接下来我们会受到由磁盘驱动器的容量施加的限制。性能改善也许是 30% 而不是预期的 100%。
总是存在一个新的关键。重要的问题是使用手边的是否已经满足性能目标。
注意: 用 vmtune、schedtune 和其它调谐命令产生的不正当系统调谐可能导致意外的系统行为,例如降低系统或应用程序的性能或系统暂停。更改仅应在性能分析识别出瓶颈时才适用。
注:
对于性能相关的调谐设置,不存在什么一般建议。
应用额外的
在前述所有的方法都用尽后如果系统性能仍不能满足它的目标,则必须增强或扩展关键。如果关键是逻辑且下层物理足够,则无需额外代价就可以扩展逻辑。如果关键是物理,分析员必须研究一些额外的问题:
必须增强或扩展关键到什么程度才可以终止瓶颈?
系统性能会满足它的目标吗?或另外的会首先饱和吗?
如果有一串关键的话,增强或扩展所有这些或与另一系统划分当前工作负载是否更节省成本呢?
性能基准
当试图比较不同环境中给定软件的性能时,常会遇到许多可能的错误,一些是技术上的,一些是概念上的。本节包含主要的提示信息。本书其它各节讨论评测过去和特定处理时间的不同方法。
评测处理系统调用需要花费的时间(挂钟)时,需要获取一个由下列内容组成的数字:
执行正运行服务的指令所需要的确切时间
处理器等待内存中的指令或数据时延迟的不同时间(也就是说,高速缓存和 TLB 不命中的代价)
在调用开头和结束访问时钟所需要的时间
由周期件如系统定时器中断所消耗的时间
由或多或少的随机消耗的时间,如 I/O
为了避免报告一个不精确的数字,常常要求多次评测工作负载。因为所有的外部的因素都会增加处理时间,典型的评估集有一个曲线的形式
aix中ksh:vmstat:not found是什么意思,就是想查看cpu使用率,好像top等命令都不行,是什么没开吗?
UNIX(AIX)系统常用命令
AIX的命令格式:
$command option(s) argument(s)
command:命令
option(s):命令选项,均以'-'号开始
argument(s):参数
命令 用途
----------------------------------------------------------------------------
prtconf 显示系统的各项主要配置
svmon -G 查看内存(4k)
iostat 2 查看磁盘读写情况(每2秒刷新);
set -o vi 调用缓冲区 k,j,x,h,l 向上下翻,Esc
smit 进入管理界面
cd 改变路径
ls 列出文件
ls -aF 列出隐含文件,并适当分类
ls -l 列出文件的详细信息
ls -ltr
more 输出文件内容到屏幕
cat 显示文本文件内容/合并文件
pg 分页显示文件内容,回车后下一页
file 显示文件属性(可执行/ASCII/等)
clear 清屏
mkdir 创建目录
rmdir 删除目录
cp 拷贝文件
mv 文件/目录改名,转移
rm 删除文件/目录, 如:rm -fr ora*
rmdir 删除目录,如: rmdir oracle
df -k 显示文件系统的信息
du 磁盘使用信息汇总
mount 显示已经挂装的文件系统的信息或挂装文件系统 mount -rv cdrfs /dev/cd0 /cdrom mount /dev/lv02 /u01
umount 卸载某个文件系统 umount /cdrom
fuser -kxuc /dev/cd0 当光驱不能正常释放时
lsattr -E -l sys0 -a realmem 察看内存的命令
env 输出用户环境变量到屏幕
id 察看用户的属性
whoami 察看当前用户名
who 查看已经登录的用户
who -r 查看目前系统的运行级别
users 用单独的一行打印出当前登录的用户,每个显示的用户名对应一个登录会话
如果一个用户有不止一个登录会话,那他的用户名将显示相同的次数
w 显示当前系统中每个用户和它所运行的进程信息
last 此命令往回搜索wtmp来显示自从文件第一次创建以来登录过的用户
whereis 命令的绝对路径
passwd 设置用户密码
su 改变/切换用户id
lsuser ALL 列出所有已经创建的用户
lsgroup ALL 列出所有已经创建的组
smitty user 管理用户
mkuser 创建新用户,创建用户的缺省属性值于文件:/usr/lib/security/mkuser.default,只能由root修改
smitty group 管理组
mkgroup 创建新组
chfn 改变用户详细信息
jobs 查看后台任务/进程
fg 把后台进程调到前台
bg 把当前进程调到后台运行
grep 查找匹配字符/字符串
netstat -i 显示网络连接信息及统计信息
netstat -IN
netstat -rn 显示核心路由表
netstat -I 网络设置名 端口号 监视端口情况
netstat -v 正在使用的设备驱动程序的统计信息
netstat -m 网络使用的内存空间情况
netstat -D 显示丢弃包的情况
ifconfig -a 显示网络配置信息
umask 显示文件创建掩码,即新建文件或目录的缺省权限,如#umask 664
date 系统时间
find path expression 查找文件,expression的值有:
-name/-type/-size/-mtime(修改时间)/-perm(权限)/-usr/-o(或)
uname 显示操作系统信息
oslevel 系统版本
man 帮助文件
smitty clstart | clstop 起用|关闭HA
smitty hamcp
smitty chinet 改变网卡的配置信息
smitty cluster 配置cluster
smitty hacmp 配置hacmp
/usr/sbin/cluster/clstat & 显示cluster信息
dbassist 启动oracle数据库配置助手(dbca -9i 可以用配置数据库方式启动一个数据库)
netasst 启动oracle数据库listener配置助手(-9i oem是一个包,后跟参数,不同工具)
vi 文件编辑器
动作字符:
a 在当前字符后添加文字; x 删除单个字符;
A 在当前行最后添加文字; dw 删除至当前词尾;
i 在当前字符前添加文字; d$ 删除至当前行尾;
I 在当前行开始处添加文字; d0 删除至当前行首;
o 在当前行后添加新行; dd 删除当前行;
O 在当前行前添加新行; :20,40d 删除20行至40行;
/text 向后查询 ?text 向前查询
r 修改当前字符 R 覆盖字符,直至按下[ESC]
s 删除当前字符,并可添加字符直至按[ESC]
S 删除当前行,并可添加字符直至按[ESC]
yy 将当前行存入缓冲区
dd
p
P
errpt|pg 创建/显示错误文件
errclear 0 清除错误日志文件内容
lsvg -o 显示卷组信息
lsvg -l rootvg
instfix -iv|grep AIX_ML 安装的文件集
smitty tcpip tcp/ip配置
lsdev -Cc disk 系统设备信息(磁盘)
lspv 显示卷组里的物理卷信息
lsdev -Cc pdisk 显示阵列里的磁盘信息
errclear 清除error log
lsps -a 显示交换空间
swapon /dev/paging01 激活交换空间
chps -a paging01 删除交换空间
rmps paging01 删除不活动的交换空间
smit mkps 增加交换空间
smit chps 修改交换空间
varyonvg 激活卷组 如:varyonvg datg 将datg激活
varyoffvg 关闭卷组
/ect/services 查看端口
/etc/hosts 机器名IP对照表
/etc/inittab 相当于DOS的AUTOEXEC.BAT文件
/etc/filesystems 记录所有的文件系统设置
增加并配置端口
删除端口
ftp://root@10.188.12.250/ 在客户端登录AIX(用IE)
lscfg
lsdev
route ADD 0 10.188.12.1
route add default 192.168.0.1 设置网关(或在/etc/defaultrouter文件中加入网关地址,重起机器就行)
su root 以ROOT用户登录;
smitty lv 增加逻辑盘
LN -s 源目录 目标目录 链接
ls -l 查看权限
./fielname 运行filename文件
smitty clstart 启动HA
smitty clstop 停止HA
.filename 表示filename文件(目录)为隐藏;
cat file1 >> file2 合并file1到file2
SMIT 综合管理工具
# 表示ROOT用户;
$ 表示一般用户;
shutdown -fr 快速重启;
smitty crjfs 创建结点; mount /u05 chown -R oracle.dbs u05 chmod -R 777 u05
加一个文件系统的步骤: 加文件系统/chmod/chown/mount 文件系统名
smitty jfs
smitty lv
smitty lvm 管理逻辑卷
smitty vg 管理卷组
smitty chvg
drwxrwxrwx d表示目录,-表示普通文件,r表示链接; d421421421 777全部权限
-rwxrwxrwx 第2-4:属主用户,5-7:同组用户,8-10所有用户
date 0217142590 This sets the date and time to Sat Feb 17 14:25:00 CST 1990.
当root不能在其终端上登录时 修改/etc/hosts文件,查看其IP地址对应的主机名;
当其他用户不能在其终端上登录时 删除用户,并删除/home下对应的目录,重建;
smitty aio 调整aioservers
#pstat -a|grep aios|wc -l 查看aio的值是否常达到MAX,IF 增加MIN, MAX aio;
当任何用户都不能登录图形界面时 有可能根结点充满,在登录窗口用字符方式登录,加大根结点空间即可;
ps -ef | grep cluster 查找包含"cluster"的进程
more /etc/passwd|grep zhxx 查找静态字符"zhxx"
pe -f 进程查看,如:# ps -f
UID PID PPID C STIME TTY TIME CMD
root 43626 45014 0 20:38:58 pts/1 0:00 -ksh
root 47710 43626 2 21:08:03 pts/1 0:00 ps -f
用户ID 进程ID 父进程ID CPU利用率 开始时间 控制台 运行时间 命令
kill -9 **** ***为进程号,可用ps获得
ping 10.188.12.252 -l 17000 -t 以17000 bytes/包 ping 目标
crontab 创建任务(crontab -l 查看已有任务, crontab -e 编辑或增加,删除任务)
0 2 * * * /u05/dmpbak/auto.sh 表示:每天两点执行/u05/dmpbak/auto.s件
lsfs 列出所有文件系统
lsvg -l rootvg 列出rootvg的卷
lsvg -p rootvg 列出物理卷信息
lsvg datg 可查询空闲物理分区数
smit reogvg 重组卷组
smit importvg 导出卷组,卷组必须是不活动的;
lspv hdisk0 显示物理卷
lspv -l hdisk0 逻辑卷映射
lspv -p hdisk0 物理卷映射
defragfs -q /u01 报告文件系统的当前状态
defragfs -r /u01 得到碎片连续化操作后和前后对比情况
defragfs /u01 执行碎片连续化操作
fsck /u05 检查u05文件系统
xclock 时钟,可用于检查环境是否正常
chmod 777 /u02
r 2=3 相当于:chmod 777 /u03
rsh zzyc2_sev 在其他机器上登录某主机
dgmgrl 类似SVRMGRL(9i)
ps -ef |grep oracle |pg 查看oracle用户的所有进程
kill -9 14206 杀14206#进程
kill -l 显示KILL命令可以用的信号量
killall signal 删除除发送外的其他所有进程
/usr/sbin/cluster/clstat & 显示双机热备状态图
exit或logout 退出登录
qprt filename1,filename2... 打印文件
qchk 查看打印队列
qcan 取消打印作业
lsps -a 查询交换空间,如USE超过70%,则要增加
set 查看已定义的变量;
echo $name 查看某个变量的值;
xxx=value 定义变量
unset xxx 删除变量
`` 把``之间的内容作为一个命令,返回命令结果; 如$now=`date` $echo $now
'' 直接显示''间的内容,不予解释;
"" 解释""间的$,``,等字符的特殊含义;
忽略后的特殊字符的特殊含义;
$$ 表示当前进程的ID
$0 当前shell程序的名称
$# 传给当前shell Script的参数个数;
$* 传给当前shell Script的第*个参数,$1-$9,${10}......
$? 最近一个命令的返回值;
$! 最近一个后台进程的ID号;
expr shell下的四则运算:
* 乘; /除; % 求余数; +,- 如:expr (3+3)*(4-2)
command1 && command2 如果第一个命令执行成功,则运行第二个命令;
command1 || command2 如果第一个命令执行失败,则运行第二个命令;
test 表达式 测试条件表达式,主要有:
-f filename 文件是否存在;
-d dirctory 目录是否存在;
-r filename 文件存在,且能被当前进程读;
-w filename 文件存在,且能被当前进程写;
-x filename 文件存在,且能被当前进程运行;
-n string 字符STRING长度非零;
-z string 字符STRING长度零;
string1=string2 两个字符串相同;
integer1 -eq integer2 两个变量相等;(ne:不等 gt:大于 lt:小于 le:小于等于 ge:大于等于)
if ..
then ..
else...
fi
read xxx 从标准输入读入一行,赋给xxx变量; read x echo $x
for i in ....
do
...
done
while expression
do
...
done
ksh scriptname
scriptname
pathname/scriptname shell script的三种执行方法
#command 前台进程
#command & 后台进程
nice/renice 增加/再增加nice的值,从而降低进程优先级;
nohup command & 使用户的后台进程在用户退出时仍然运行
#alias alias=string 赋命令别名
unalias aliasname 取消命令别名
history 显示最后的16条命令
cal 2003/cal 2 2003 日历
finger [oracle] 显示用户信息
mail 接收,发出,查看电子邮件
clear 清屏
echo 显示指定信息
wc filename 统计指定文件的行数,词数,字节数
head filename 显示文件头
tail filename 显示文件尾
tail -f /tmp/hacmp.out 显示HACMP启动情况
[^+C]/[^+d]/[^+s]/[^+q]/[^+u] 终止/结束文件传输/暂停屏幕输出/继续屏幕输出/删除当前输入行
smit(system management interface Tool)
其log文件/script文件保存在各用户目录下;
alog -o -t boot 查看引导日志
chtz 设置新时区
/etc/profile
/etc/environment
$HOME/.profile 系统设置用户环境的主要文件;
lsuser -a id home ALL 列出所有用户
/etc/motd 用户登录时显示的信息,可直接编辑,但如果用户主目录下$HOME/.hushlogin存在,motd不显示;
wall ***** 向各登录用户发出*****消息,用户终端上将马上显示;
/var/adm/sulog su命令执行记录
/var/adm/wtmp,/etc/utmp 用who命令查看登录记录
last root |pg root用户登录记录
last reboot | pg 重启记录;
/etc/passwd 合法用户(不含密码)
/etc/group
/etc/security 普通用户不能访问的安全性文件目录
lsdev -P 列出所有的设备, lsdev -Pc disk
smitty devices 设备管理
lsattr -E -l sys0 列出已配置的设备
jfs/Cdrfs/Nfs AIX支持的三种文件系统
/var/adm/wtmp
/var/spool/*/*
/smit.log
/etc/securiy/failedlogin
/var/adm/sulog 这些文件增长很快,要定期清理,可用cat /dev/null > filename方式清理
du /u05 | sort -r -n 查询文件或目录所占用的磁盘块数
vmstat 显示虚拟内存,内存及CPU活动信息;
arp -a 查看解析协议ARP表
hostname 显示机器名
/etc/rc.tcpip 系统启动时自动执行,进而执行以下子进程:
-syslogd :错误信息日志 -portmap :端口查找 -inetd :Internet服务的主守护进程 -named :域名服务器 -lpd :打印服务器 -routed or gated :动态路由 -sendmail :邮件系统 -timed :时间服务器 -rwhod :远程用户信息 -snmpd :SNMP代理进程host 机器名/IP 实现IP与机器名的转换
rsh PTYC2_svc date 执行另一台主机上的命令
lscfg 显示机器配置信息
lsdev -C -c if 显示网络接口描述
lsdev -C -c adapetr 显示适配描述
netpmon -v 物理/逻辑的详细报告
ps aux 查询内存使用情况
sar [-u|-c|-a|-q|-r] [-p] 1 10 查询系统负载情况
traceroute 10.188.182.1 跟踪IP
netpmon 可以监控关于网络行为的系统和性能以及网络行为对CPU的消耗。
lsdev -C|grep Process|wc -l 显示CPU数量
smitty mklv 创建裸设备(字符型设备);
smitty rmlv 删除裸设备(字符型设备);
lslv ***** ******为裸设备名称,显示裸设备相关参数
/etc/default/login 加上CONSOLE=/dev/console 后,可防止root用户telnet;
SSL工具代替telnet等,增加安全性
/etc/passwd .../bin/sh 对应 .profile
/etc/passwd .../bin/csh对应 .login
系统正常从桌面登录执行 .dtprofile
su - username执行 .profile
vmstat 查询内存情况
iostat
mpstat 查询CPU情况
/etc/vfstab 磁盘目录规划
mount 目录安装情况
format 查看磁盘物理信息
p 分区
p
swap [-l|s|d|a] 操作swap交换空间
patchadd -d 补丁文件名 打补丁-p 显示已打的补丁信息
sysdef -i
share -F nfs -o ro /etc
hare -F nfs -o rw=usera:userb /export
unshare /etc
dfshares
/usr/dt/bin/dtconfig -d 这将告知系统在下一次重新引导时不启动登录服务器。
/etc/ftpusers,/etc/default/login SOLARIS8下的FTP和TELNET缺省是关着,看看这两个文件.
sys-unconfig solaris重新设置
kdmconfig 配置显示器
eject 弹出CD-ROM或软驱
AIX和Linux下怎么查看CPU和内存信息
你的系统盘有问题。 另外找个盘。重装系统吧 find / -name vmstat 没任何提示 说明 你系统里都没这个命令。 所以也就不用管环境变量了。~
以前遇到过 光盘问题。 装完 好多命令用不成,自己加了环境变量,有的命令还没执行权限。
不要图省事,换盘新装吧。
AIX:
1.查看CPU 个数
prtconf |grep proc
lscfg |grep proc
lsdev -Cc processor
bindprocessor -q
vmstat 查看lcpu (注意smt : smtctl)
2.查看内存
bootinfo -r
prtconf
lsattr -El sys0 -a realmem
vmstat
3. 查看cpu 频率
lsattr -El proc0
prtconf -s
4. 查看网卡是否集成
lsdev -C |grep ent
lscfg -vpl ent0? 查location code
Linux:
查看CPU信息(型号)?# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c ? 8 ?Intel(R) Xeon(R) CPU E5410 ? @ 2.33GHz?(看到有8个逻辑CPU, 也知道了CPU型号)?
# cat /proc/cpuinfo | grep physical | uniq -c ? 4 physical id ?: 0 ? 4 physical id ?: 1?(说明实际上是两颗4核的CPU)?
# getconf LONG_BIT 32?(说明当前CPU运行在32bit模式下, 但不代表CPU不支持64bit)?
# cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l 8?(结果大于0, 说明支持64bit计算. lm指long mode, 支持lm则是64bit)?
再完整看cpu详细信息, 不过大部分我们都不关心而已.?# dmidecode | grep 'Processor Information'?
查看内 存信息?# cat /proc/meminfo?
# uname -a?Linux euis1 2.6.9-55.ELsmp #1 SMP Fri Apr 20 17:03:35 EDT 2007 i686?
i686 i386 GNU/Linux?(查看当前操作系统内核信息)?
# cat /etc/issue | grep Linux?Red Hat Enterprise Linux AS release 4 (Nahant Update 5)?(查看当前操作系统发行版信息)?
查看机器型号?# dmidecode | grep "Product Name" ?
查看网卡信息?# dmesg | grep -i eth
查看操作系统版本#lsb_release -a
实时查看CPU和内存占用情况请使用top命令