有些新功能还包括允许在虚拟 I/O 服务器(Virtual I/O Server,VIO Server)上运行 topas。为此,请使用以下命令: # topas -cecdisp
在 LPAR 上,要运行: topas -C
考虑到在 5.3 TL 4 中引入了性能监视功能,topas 使用了从 inittab 自动启动的守护进程 xmwlm。在 AIX 5.3 的 TL_5 中,缺省会保留七天的数据,并会记录几乎所有的 topas 数据,除进程和工作负载管理器(Workload Manager,WLM)信息外,其中的其他数据会以交互方式显示。它使用 topasout 命令来生成基于文本的报告。topas 在处理其不足方面进行了大量的工作,但大多数管理员可能希望使用其他实用工具——如 nmon。
nmon
所有性能工具中,我最喜欢 nmon(不是 IBM“正式”支持的工具)。从 nmon 收集的数据(请参见图 3)可从屏幕查看,也可以通过通常从 cron 运行的报告查看。按照其创建者 Nigel Griffiths 的说法,“如果一个免费工具能够提供所需要的所有东西,为什么还要使用五个或六个工具?”
图 3. nmon 示例输出
务必注意,与已经讨论的一些其他工具不同,nmon 也可以在 Linux? 上使用,这可切实地帮助 Linux 赢得遇到性能问题的 POWER 用户群。nmon 最吸引管理员的是,不仅拥有非常高效的前端监视器(如图 3 中所示,管理员可以动态调用),而且提供了将数据捕获到文本文件进行图形报告的功能,因为输出是 .csv(电子表格)格式(请参见图 4)。事实上,运行 nmon 会话一段时间之后,可以实际看到以 Excel 电子表格形式良好呈现的表格,可以将此表格提交给高层管理人员或其他技术团队以进行分析。而且,与 topas 不同,我从来没有看到与此实用工具关联的任何性能类型开销。
接下来让我们看一个简单的任务。首先让我们告知 nmon 创建文件,对运行进行命名,并在 180 个时间间隔内每 30 秒进行一次数据收集(共计 1.5 个小时): # nmon -f -t -r test2 -s 30 -c 180
完成此工作,对文件进行排序,如清单 6 中所示。
清单 6. 对文件进行排序 # sort -A testsystem_yymmd_hhmm.nmon > testsystem_yymmdd.hhmm.csv
完成后,将 .csv 文件通过 FTP 上传到工作站,启动 nmon 分析器电子表格(确保启用了宏),然后单击 analyze nmon data(请参见图 4)。
图 4. nmon 分析器输出
nmon 分析器是一个非常不错的工具,是由 Stephen Atkins 编写的,能从 Excel 电子表格以图形表示数据(CPU、内存、网络或 I/O)。或许使其不能成为企业类型的工具的唯一缺陷就是,它缺乏同时在大量 LPAR 上收集统计数据的能力,因为它不是数据库(其设计也没有考虑成为数据库)。而这正是 Ganglia(请参见参考资料中提供的链接)能提供帮助的地方,该工具的设计思想实际上得益于 Nigel Griffiths,因为此工具能够集成 nmon 分析。 总结
本系列的第 2 部分对很多工具和实用程序进行了深入分析,可以将这些工具和实用程序用于捕获和分析运行 AIX 的 System p 服务器的性能数据。其中一些命令从 UNIX 推出之时就有了。其中很多命令用于 AIX,其他的则是不受支持的 IBM 实用工具,但大多数 AIX 管理员都在使用所有这些工具。无论最喜欢哪个工具,都需要使用其中一个来即时查看性能活动,而使用另一个工具来捕获用于进行基于历史的性能优化和趋势及容量规划分析的数据。有些工具能够同时进行这两项工作(如 nmon),但大部分都更为适合进行其中某一项工作。我建议您要对这些工具进行试验,不仅要找到最适合您的工具,还要找到能够为其他人员(不是能够理解无休止的 vmstat 显示信息的系统管理员)提供有价值信息的工具。
AIX 5L 性能优化: 监视您的 CPU,第 3 部分
控制线程使用和 CPU 绑定
本系列文章的第 3 部分重点关注中央处理单元 (CPU) 性能优化中鲜为人知的方面:控制线程使用和 CPU 绑定。本文介绍了一些关键的工具和实用程序,您可以使用它们来分析线程和管理进程。 关于本系列
本系列的三篇文章重点关注中央处理单元 (CPU) 性能和监视的方方面面。本系列的第一部分概述了如何高效地监视 CPU,讨论了进行性能优化的方法,并且给出了可能对性能产生积极或消极影响的一些注意事项,还介绍了一些相关的命令。本系列的第二部分则更关注于实际的 CPU 系统监视、对趋势和结果进行分析的细节内容。本系列的第三部分重点关注于主动控制线程使用和优化 CPU 以实现性能最大化的其他方法。在本系列文章中,我还将详细说明 AIX? CPU 性能优化和监视方面的各种最佳实践。 引言
本文的内容包括线程、进程和 CPU 绑定。本文还讨论了如何使用在前面几期文章中介绍的一些工具,以便对您的系统进行更改。同时,本文还介绍了 AIX Version 5.3 中用于优化 CPU 调度程序的最重要的命令以及线程绑定的各种方法。
初级的管理员可能认为进程管理只不过就是监视活动的进程、终止失控的或僵死的进程。您将会发现,进程管理并不仅仅只是使用 kill 命令或者甚至 nice 命令。在继续学习后面的内容之前,需要弄清楚一个基本的问题,即进程与线程之间存在怎样的关系。其答案非常的简单。进程是 AIX 用于控制系统资源使用的实体,而线程则用于控制使用的时间,因为每个内核线程都是一个单独的顺序控制流。每个进程由一个或多个线程组成。您可以根据实际情况来控制线程的使用。要做到这一点,您需要了解一些相关的工具,这些工具允许您使用线程来提高 CPU 的性能,而这正是本系列文章中最后一部分内容的研究范围。
线程监视
在这个部分中,我将介绍一些相关的工具和命令,它们可以帮助您监视和分析线程的使用。尽管在 AIX Version 4 中就引入了通过线程的使用来控制处理器使用时间的方法,但是直到 AIX 5L? 才真正提供了帮助您监视和分析线程使用的系统管理工具。其中一种工具是 Procmon,在 AIX Version 5.3 中引入了该工具。
Procmon 可以显示进程的列表(当您的系统变化时,该列表也将动态地变化),通过这个列表,您可以收集有关系统中正在运行的进程的信息。与其他监视工具相比,其独特之处在于,它允许您运行各种命令以简化进程和线程的管理。它能够收集的、与性能优化相关的一些关键信息包括:
? ? ?
某个进程实际使用的 CPU 时间 某个进程的内存和 I/O 用量
进程的 nice(优先级调整参数)值及其优先级
您甚至可以 kill 任务(终止任务),并且动态地 renice 它们(调整其优先级)。图 1 给出了关于整体性能的图形表示。要启动 Performance Workbench Platform,可以使用: # perfwb。
图 1. Procmon partition performance 选项卡
其中还包括一个进程表视图,用于在经过排序的表格中显示线程列表。您只需选择 Show
相关推荐: