Вы находитесь на странице: 1из 426

AIX 5L V5.

3 򔻐򗗠򙳰

T\\m8O

S151-0020-03
AIX 5L V5.3 򔻐򗗠򙳰

T\\m8O

S151-0020-03
"b
Z9C>JO0d'VDz70,kDAZ 399 3D:yw;PDE"#

ZDf(2006 j 7 B)
>f>JCZ AIX 5L V5.3 0dyPsx"Pf,1=ZBf>PmPyw*9#
Z>vfoDsfa)KA_b{m#g{CmQ;>},k+b{Dy IBM Pz+>O#V+>,:/?;PzO#
P4#P7 333 Ep2c! 10 %;J~`k:200021#*(}gSN="Mb{,k9CTBL5%*xX7:
ctscrcf@cn.ibm.com#RGIT9Cza)DNNE",x^hTzP#NNpN#
© Copyright International Business Machines Corporation 1997, 2006. All rights reserved.
?<
XZ>i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
;vT> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
AIX PxVs!4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
ISO 9000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
`Xvfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix

T\y! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
53$w:X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
T\?j . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Lr4P#M . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2~cNa9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
m~cNa9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
53w{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

T\w{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
T\w{}L . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
T\y< . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

53T\`S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
,x53T\`SDf& . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
9C|nxP,x53T\`S . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
9C topas |nxP,x53T\`S . . . . . . . . . . . . . . . . . . . . . . . . . 15
9C Performance Toolbox xP,x53T\`S . . . . . . . . . . . . . . . . . . . . . 19

u<T\oO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
(fDT\JbD`M . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
T\^FJ4D7(. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
$w:X\moO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

J4\m. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
&mwwHLrT\. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
ibZf\mwT\. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2Lf"\mT\ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
T]fZfD'V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

`&m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
TF`&mwEnMe5a9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
SMP T\Jb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
SMP $w:X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
SMP _LwH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
_Lw{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
SMP $_ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

T\f.M5V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
$w:XiI?VD7( . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
T\hsD5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
$w:XJ4hs@F . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
P'DLrhFM5V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
T\`XD20<r. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

© Copyright IBM Corp. 1997, 2006 iii


yZ POWER4 D53 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
POWER4 T\v? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
yZ POWER4 D53IluTv? . . . . . . . . . . . . . . . . . . . . . . . . . . 83
64 ;ZK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
:v?MU>D~53; . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

"&mwT\ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
"&mwT\`S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
9C time |nb?"&mw9C . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
"&mw\/MLr7( . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
9C pprof |nb?ZK_LD"&mw9Civ. . . . . . . . . . . . . . . . . . . . . 97
9C emstat $_lb8nBf . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
C alstat $_lbTkl#. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
C fdpr LrX9I4PLr . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
XF"&mwyC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
9C mkpasswd |nxP"&mwP'DC'j6\m . . . . . . . . . . . . . . . . . . 107

ZfT\ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Zf9C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Zf9)Lr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
9C rmss |nxPZfhs@@ . . . . . . . . . . . . . . . . . . . . . . . . . . 121
9C schedo |nxP VMM Zf0kXFw{ . . . . . . . . . . . . . . . . . . . . . 126
VMM 3ff;w{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
3fUdVd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
w3UdP5w{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
w3Ud,xXU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
2mZf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
AIX ZfW5T'V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
s3f . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
`V3s!'V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

_-mMEL I/O T\ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149


`SEL I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
9C lvmstat |n`S LVM T\ . . . . . . . . . . . . . . . . . . . . . . . . . . 166
0lT\D_-mtT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
(} lvmo |nwZ LVM T\ . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
omm"bBn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
mi(i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Xi_-m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
w{_-muxVn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
9C-<EL I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
9C sync M fsync wC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
hC SCSI JdwMELh8SP^F . . . . . . . . . . . . . . . . . . . . . . . . 175
)9dC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
9C RAID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
SSA D{C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
l4_Y:f9C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178

#i/ I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179


"bcMEc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
MIO e5a9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
I/O E/M pf #i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
MIO 5V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

iv T\\m8O
MIO 73d? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
#i!n(e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
9C MIO D>} . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186

D~53T\ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
D~53`M . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
JFS Mv?M JFS D1ZT\VFw . . . . . . . . . . . . . . . . . . . . . . . . . 198
D~53T\v? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
0lT\DD~53tT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
D~53Xi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
D~53T\w{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
D~53U>MU>_-mXi . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
EL I/O w= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210

xgT\ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
TCP M UDP T\w{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
w{ mbuf XT\ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
ARP _Y:fw{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
{Fbvw{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
xgT\Vv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246

NFS T\ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
xgD~53 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
NFS T\`SMw{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
~qwOD NFS T\`S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
~qwOD NFS T\w{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
M'zOD NFS T\`S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
M'zOD NFS w{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
_Y:fD~53 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
NFS N< . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302

LPAR T\ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
_-VxDT\"bBn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
VxPD$w:X\m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
LPAR T\0l . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
VxPD"&mw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
VxPDib&mw\m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
&CLr"bBn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311

/,_-Vx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
DLPAR T\be . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
DLPAR w{$_ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
mS"&mwrZfD DLPAR <r . . . . . . . . . . . . . . . . . . . . . . . . . 314

"Vx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
Micro-Partitioning B5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
Micro-Partitioning D5V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
Micro-Partitioning T\be . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316

&CLrw{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
`kwE/<I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
* FORTRAN M C E/$&mw . . . . . . . . . . . . . . . . . . . . . . . . . . 324
zkE/<I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325

?< v
Java T\`S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Java DEc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Java T\<r . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Java `S$_ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
AIX D Java w{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
,xXUT Java T\D0l . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

9CzY$_xPT\Vv . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
j85wzY$_ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
zY$_9C>} . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
S|nPt/MXFzY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
SLrt/MXFzY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
9C trcrpt |nq=/(f . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
mSBDzYB~ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337

(fT\Jb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
b?y_ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
24GT\Jb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
T\Jbhv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
(fT\Jb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344

`SMw{|nT0S}L . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
T\(fMVv|n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
T\w{|n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
T\`XS}L . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351

ld |nDP'9C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
IXBs(DI4PLr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
$s(S}Lb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354

CJ&mwF1w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
X(ZyZ POWER De5a9DF1wCJ. . . . . . . . . . . . . . . . . . . . . . 356
CJ PowerPC 53PDF1wDfw . . . . . . . . . . . . . . . . . . . . . . . . . 357
second S}L>} . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357

7("&mwYH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359

>XoT'V:oT73MYH . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
`L"bBn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
3)r/fr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
hCoT73 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364

IwN} . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
73d? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
ZKIwN} . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
xgIwN} . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388

bTC}!0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
a_ NFS M'zsD~4YwT\ . . . . . . . . . . . . . . . . . . . . . . . . . 395
DF Tivoli Storage Manager 8]T\ . . . . . . . . . . . . . . . . . . . . . . . . 396
9C\kw}r/2+TS}L . . . . . . . . . . . . . . . . . . . . . . . . . . . 397

yw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Lj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400

vi T\\m8O
w} . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403

?< vii
viii T\\m8O
XZ>i
>wb*&CLr1"M'$L&"53$L&"53\m1"JnnUC'M53Lr1a)PXgN4P
X(Nq(}g:@@Mw{&mw"D~53"Zf"EL I/O"NFS"JAVA M(E I/O DT\)Dj{
E"#>wb9{vK_'J53M&CLrhF(|(|GD5V) #Yw53f=DD5 CD P2a)K>
wb#

;vT>
Z>iP9CBP;vT>D<(:

Ve j6|n"S}L"X|V"D~"a9"?<M{VI53$(eDd{n?#9j6<NT
sg4%"j)MC'!qD<j#
1e j6IC'a)7P{Vr5DN}#
HmVe j6X(}]5D}S"`FzI\4=DyT>DD>}S"`FZw*Lr1Dzyi4L
rD?VLrzk}S"4TZ53D{"r5JO&CIzdkDE"#

AIX PxVs!4
AIX® Yw53PD;P<GxVs!4D,bb6E|\xVs4V8M!4V8#}g,cIT9C ls |
n4PYD~#g{zdk LS,53wv4&m>R;=C|n#,yX,FILEA"FiLea M filea G}v;
,DD~{,49|G$tZ,;v?<P#*\b<B4P;);X*DYw,<U*s7#9C}7Ds
!4#

ISO 9000
ZKz7D*"MFlP9CK ISO 9000 "aJ?e5#

`Xvfo
BPi.|,kT\`SPXDE":
v 6AIX 5L V5.3 |nN<s+7
v AIX 5L Version 5.3 Technical Reference
v AIX 5L Version 5.3 Files Reference
v 6Yw53kh8\m7
v 6xgk(E\m7
v 6AIX 5L V5.3 (C`LEn:`4"wTLr7
v Performance Toolbox Version 2 and 3 for AIX: Guide and Reference
v PCI Adapter Placement Reference,)%E S152-0332

© Copyright IBM Corp. 1997, 2006 ix


x T\\m8O
T\y!
@[53T\h*mbLr4PD/,rX#

53$w:X
53$w:XDj{<7D(eTZ$brmb|DT\G\X|D#

Zb?53T\1,$w:XD;,I\aH CPU 1SYHrfzCJf"w(RAM)s!;,x4|`D


d/#$w:XD(e;vXk|,r53"MDksD`MMYJ,9*|,+*4PD7Pm~|MZ?
&CLr#

|(53+Zs(&mD$w2\X*#}g,g{;v53|,(} NFS SXRId{5351CJDD~


53,G4&mG)CJ\I\G\e$w:XPG#X*D;?V,49C53;G}=D~qw2Gg
K#

QxPj</SxJmZ;,53.dxPHOD$w:XF*y<Lr#+G,\YP5JD$w:X\j
+{Oy<LrD+7c(M73#49GG)nuS5JD&CLr"9x4DP5j<y<Lr2Q-}
r/MyH/,Sx9|GIF2=s?D2~=(O#9CP5j<y<Lr(;P'D=(Gu!+S\
O`@@Dr!53D6'#rK,Z"Tmb53D$w:XMT\1;&C;@5y<bTa{#

IT+$w:XV*TB`p:
`C' I`vC'(}wTDUKa;D$wiID$w:X#(#,bV$w:XDT\?jP=VI
\,4Z#t8(Dn5ivl&1du~Bns/53LB?,r_TZL(;dD$w:XqC
!I\lDl&1d#
~qw I44Zd{53DksiID$w:X#}g,D~~qwD$w:Xw*GELA4ks#|G
`C'$w:X(SO NFS rd{ I/O n/)DEL I/O ?V,yTJC,yD?j,4Zx(D
`&1d^FBns/LB?#d{D~qw$w:XIng}'Fc\/DLr"}]bBq"r
!zw5.`DniI#
$w> I%@DC'(}|La;$wMZC53DT>wOSUa{iID$w:X#(#bV$w:X
Dn_EH6T\?jG9C'ksDl&1dnL#

T\?j
Z(eK53Xk&mD$w:Xs,IT!qT\j<"y]b)j<h(T\?j#

Fcz53D\eT\j<Gl&1dMLB?#

l&1dGa;ksM5XCksDl&.d9CD1d#>}|(:
v }]bi/(QD1d
v +V{XT=UKO(QD1d
v CJ Web 3f(QD1d

LB?GT%;1dZjID$w?D?H#>}|(:
v ?VSD}]bBq
v ?k+MDD~'VZ}

© Copyright IBM Corp. 1997, 2006 1


v ?kAr4DD~'VZ}
v ?VSD Web ~qw|P}

b)H?.dDX5\4S#P1I\Tl&1d*z[xC=O_DLB?,xP1rV*TLB?*z[
C=OCDl&1d#Zd{ivB,;v%@D|DI\T=_<Pa_#IS\DT\yZOmDLB?
kOmDl&1d`aO#

Zf.rw{NN53P,1&mX(D$w:X1;(*#$Tl&1dMLB?<Pw7D?j#qr,
PI\fZ;VgU,GMGz(QKVv1dMo&DFDvvG53T\P;vN*D=f#

Lr4P#M
*Ke~Xli$w:XDT\Xw,h*P;v/,xG2,DLr4P#M,gB<y>#

< 1. Lr4PcNa9. C<NT;v}GN*y!#s_zmMR_J1DYw535e%dD2~5e#LrXkS


f"ZELODnM6p*<,=n_6pD&mwKPLr8n#}g,SW?=%?,EL2~5e]II4PL
r;5Zf]IH}_LMPO&mLr;*;s8:ex]IIVID_L;_Y:fP|,10VID_LM&mw
w._;xDfwP|,10D8n#

Lr*KKPXkXE2~MYw53cNa9"PrO0x#2~cNa9PD?v*X<H|BfD*X
!YM:s#;vLr;C;*K?vJ4Md{Lr:y,xRS;v6p}I=B;6p2*(1d#*
KmbLr4P/,,h*TcNa9P?;6pPvy>DKb#

2~cNa9
(#,S;v2~6pF/=m;6pyh*D1dw*IOM6pDH}1d(S"vks=S\=Z;z
}]D1d)iI#

L(EL

TZ;vZ%z53PKPDLrxT,n}DYwGSELO!Czkr}],bGr*PBP-r:
v Xk}<ELXFw1SCJ8(Di(ESSY)
#
v EL[Xk0@TR=}7Dyf(0@H}1d)
#
v A/4E7XkHr1=}7Di}*=|GBf(}*H}1d)
#
v }]Xk+M=XFw(+M1d);s+]=&CLrP(PO&m1d)
#

}KLrPT=DAr4ksTb,9Pm`-r<BELYw:}#51D53w{n/$wG;X*Xz
YKEL I/O#

2 T\\m8O
5Zf

5Zf(#F*fzf!f"wr RAM,|HELYHl,+?vVZD*zG#:s#Yw53!?;+1
09CDzkM}]#fZ RAM P,x+NNnbDZ]f"ZELO,r_v;WH+|Gxk RAM P#

;x,RAM DYH;;(H&mwl#(#Z2~b6= RAM CJhsk&mwI9C}]r8nD1d


.d,avVm`&mw\ZD RAM H}1d#

g{*CJf"=ELO(r_P4wx)D3;ibZf3,razz;v13JO,"RLrD4P]R
1=C3SELA!#

*;s8:ex(TLB)

9Lr1;a\^Z53DomV^TD=(G5VibZf#Lr1ZhFM`4Lr1O*ZfG#s,
53+:p+LrP8nM}]DibX7*;Ih*C4S RAM !CD8nM}]D5JX7#r*bv
X7*;}LI\\Q1,53+n|CJ}DibZf3D5JX7#fZ;vP*;s8:ex(TLB)
D_Y:fP#

;*KPPDLrLxCJLrM}]3PD;!?V,rj{DSib=5J3X7D*;}LM;h*Z
?N RAM CJD1r<Xv;N#1LrT<CJDibZf3;P TLB kZ(4 TLB 4|P)1,r
h*s?D&mw\Z(4 TLB 4|PH}1d)4xPX7*;#

_Y:f

*K+LrXk-zD RAM H}1du=n!,53*8nM}]i/K_Y:f#g{yhD8nM}]


QZ_Y:fP,rzz_Y:f|P,&mwMIZB;v\Z"L9CC8nr}]#qrzz_Y:f
4|P,ifP RAM H}1d#

Z3)53P,P==}6_Y:f,(#F|G* L1"L2 M L3#g{;vXbDf"w}C<B L1 4


|P,rli L2#g{ L2 zz4|P,r}C*AB;v6p,*4G L3(g{fZ),*4G RAM#

_Y:fDs!Ma9y]MED;,xP;,,+GP'9C|GD-mG`,D#

w._MDfw

w._M,j?e5a99CZ3)ivBIT,1&m`v8n#szD(CDfwM!cDfw9CIT
+`1`DLr}]#fZDfwP,x;h*51f"MXB0k#

IThFE/`kwns^HX{Cb)\&#1zIz7Lr1,^[LrP`!`kwDE//}<&C
\9C#Optimization and Tuning Guide for XL Fortran, XL C and XL C++ hvKgNw{LrTqCns
T\#

m~cNa9
Lr*KKP9Xkp=4Pm~cNa9PD;5P=h#

I4PLr
1ksKP3vLr1,Yw534P;)YwT+ELODI4PLr*;IKPPDLr#

WH,Xk(h10 PATH 73d?PD?<TiRLrD}71>#;s,530kLr(;*M ld |n


l},C|nGvs(Lr)XkbvvSLr=2mbDNNb?}C#

T\y! 3
*Km>C'Dks,Yw53+4(;vxLr;iJ4(}g(CibX7N),NNKPPDLr<h
*CxLrJ4#

Yw532aZCxLPT/4(;v%@D_L#_LG;v%@Lr5}D104P4,#Z AIX P,T


&mwMd{J4DCJGy]_L4Vdx;Gy]xLVdD#&CLrIZ;vxLP4(`v_L#
b)_L2mIKP|GDxLy5PDJ4#

ns,53*F=LrDkZc#g{|,kZcDLr39;ZZfP(I\r*Lrn|E`k"4PM
4F),rI|}pD13JOPO+C3S|Ds8f"wPA!v4#

PO&mLr
(*Yw53"zKb?B~DzFGPO10KP_L"+XF*F=PO&mLr#

ZPO&mLrITKP.0,Xk#fc;D2~4,T#$ZPO&mjIs53\V4_LDOBD#
BwCDPO&mLr+-zZ2~cNa9POFx4DyPSY(}K3fJO)#g{CPO&mLr
n|;PKP}(r_PdLr\Z<1d),G4|DNNzkr}];+I\#tZ TLB r_Y:fP#

1YNwHQPOD_L1,|D4POBD(gDfwZ])_-O+C=V4,Tc|IT}7KP#;
x,TLB M_Y:fDZ]Xky]LrDsLksXB9l#rK,w*PODa{,PO&mLrM;P
OD_L<I\v=s?D_Y:f4|PM TLB 4|PSY#

H}_L
^[N1;*4PDLr"v;\"LzcDks,}g,= I/O Yw(T=Dr13JODa{),C_L
Ma&ZH}4,,1=ksjI*9#

}Kks>myhD1dTb,(#b9a<Bmb;) TLB M_Y:fDSY1d#

IVI_L
13v_LIVI+;ZKP1,|;\jINNPCDBi#|cDG,}KPDd{_LI\<BXB9
CC_LD_Y:f_7"+5Zf3UX,Sx}pnUVI1vV|`DSY#

10QVID_L
wHLr!qT9C&mwP?R*sD_L#

0lC!qD"bBnZZ 31 3D:&mwwHLrT\;PV[#1VI_Ls,&mwD_-4,V4
I_LPO1P'D4,#

10Dzw8n
g{4vV TLB r_Y:f4|PDiv,xs`}zw8n<\Z%v&mw\ZZ4P#

`H.B,g{Lr8Y*;=CLrD;,xrRCJs?;,xrPD}],MazzO_D TLB M_Y


:f4|PJ,4P?u8n9CD=y&mw\Z}(CPI)I\sZ 1#bVLr;O*POnDVrT}
C\&#|2mZ9CXhDnY8n}4vbv$w,+G*{Ds?;X*D\Z}#?VGr*8n}
M\Z}.d`XTOu,liLrPm4Fc76$H;aY1Szz;v1d5#IZOLD76(#H
O$D76l,yTYJy]76$HJD;,xwT;,#

`kwCjFD=(XB2EzkSx+Lr4PyhD\Z}5=n!#7snQT\DLr1XkWHB
&Z7#`kw_PP'E/zkyhD+?E",x;GT<Bsz@`kwDE/<u(kND:$&m
wM`kwDP'9C;)#E/P'TD5Jb?j<GIE$w:XDT\#
4 T\\m8O
53w{
ZP'5V&CLrs,53\eT\Dx;=a_MIK53w{<GD;vJb#

536w{|,Dw*i~P:
(E I/O
!vZ$w:XD`Mk(E47D`M,I\h*w{TBD;vr`v(Eh8}/Lr:
TCP/IP r NFS#
L(EL
_-m\mw(LVM)XFD~53D;CMELOw3Ud,bI\a+sX0l53-zD0@
H}1d#ELh8}/LrXF4P I/O ksyqSD3r#
5Zf ibZf\mw(VMM)XFUP5Zf!DX,"v(N1SN&!C!49dCX#
KP_L
wHLr7(SB4IDvIwH5eSUXF(#Z AIX P,IwH5eG_L#kNDZ 31 3D
:_L'V;#

T\y! 5
6 T\\m8O
T\w{
53M$w:XDT\w{G#X*#

T\w{}L
T\w{w*GJ4\mJbM}7D53N}hC#

w{$w:XM53TP'{CJ4IBP=hiI:
1. 6p53PD$w:X
2. hC?j:
a. 7(gN@ba{
b. ?/?jMxV?jDEH6
3. 6p^F53T\DX|J4
4. n!/$w:XDX|J4*s:
a. g{I!qD0,9CnJ1DJ4
b. uYvpLrr53/}TX|J4D*s
c. a9/J4D"P9C
5. ^DJ4DVdT43EH6
a. |DvpLrDEH6rJ4^F
b. |D53J4\mN}DhC
6. X4=h 3 ==h 5 1=zc?j(r_J4%M)
7. g{X*D0,9Cd{J4

TZ53T\\mD?vWN<P`&D$_(kNDZ 347 3D:`SMw{|nT0S}L;)#3)$


_IS IBM® qC;xd{r*Z}=z7#B<5wZ;vr%D LAN 73PT\\mDwWN#

< 2. T\WN. C<CevS(D2&5wT53T\w{Dw=h:f."20"`S"w{M)9#?v2&zm5


3&Z;,DT\4,:UP";yb"ybM}X#5JOMG)9;v}XD53"w{531=|GybD"`S
;ybD53"RZh*)9120|`DJ4#

6p$w:X
534PDyP$w<Xk\;6p#XpGZ LAN ,SD53P,(}53DC'.dvPDG}=-i,
ITaIX*"v;i4SD;f20DD~53#b)D~53Xk;6pv4"w*NNw{n/D;?
VxP<G#

© Copyright IBM Corp. 1997, 2006 7


TZ`C'$w:X,Vv1Xk?/;civM_eZDksJ#7(C'5JkUK;%1dD5JH}
2G\X*D#

C6pWNPD;v*XGv(XkTzz53xP@@Mw{n/,9GZm;53O(r“P;”)C5J
$w:XD#bM=4jI@@Mw{n/#Vv1XkkTGzz73DinT(b4TZzz73a{D
OsI?T,Vv1IZGzz73PxPTi,1;Tiy0DgUGT\B5r|c#

hC?jDX*T
d;ITy]Ib}?hC?j,+5J#{Da{yyxPw[T,HgnKzbDl&1d#x;=2,
Vv1XkV2!w{Ib?D+wx;GT{xTGX*+wDUs#g{;P53a)D@@\{Oy*
sDDx,G4MXkTC@@xPhF#

?/?jnP[5D=f;G!qo=D}V,xGT((#)`v?jD`TX*TxP+*P(#g{b
)EH6;PBHh(R;G?v`XDK<mbD0,Vv1Z;PxP51I/.0;\wvNN[TD
v(#Vv19]WTC'D4&r\mT\P;)Q-;vTD=fxP=T*#g{53D'VM9Cg
}Ki/D_g,zI\h*)&LMC'.dDif~q6-i,I7#TT\?jMEH6P;ve~x
2,Dmb#

6pX|J4
(#,x($w:XDT\II;=VX|53J4DICTMYHv(#Vv1Xk}76pvG)J4,
qra0U]k^]9D"TvmYw#

53HP5J4M_-J4,2I\9PibJ4#X|D5J4(#HO]W6p,r*O`D53T\$
_IC4@@3FE"D{CJ#(#n0lT\D3FE"gB:
v CPU \Z
v Zf
v I/O \_
v ;,DJdw
v ELUd
v xgCJ

_-J4;+]W6p#_-J4(#GT3FE"xPVxD`Lis#xPVxD?DG2mM\m3F
E"#

S AIX 5.3 *<,IZyZ POWER5™ D IBM System p D53O9CibJ4,|( Micro-Partitioning™"


ib.PJdw"ib SCSI MibT+x#

5J4M9(Zb)5J4.OD_-J4MibJ4D;)>}gB:

CPU
v &mw1d,
v CPU Z(r Micro-Partitioning
v ibT+x

Zf
v 3f!
v Q;

8 T\\m8O
v :ex
v SP
v m
v xMEE?

ELUd
v _-m
v D~53
v D~
v _-Vx
v ib SCSI

xgCJ
v a0
v E"|
v (@
v 2mT+x

Kb_-J4MibJ4T05J4G\X*D#r*1Y_-J4_LI\h{,Mqr*1Y5J4xh
{;y,)9Bc5J44X\#$4(|`D_-J4#}g,h* NFS ~qwX$Lrr~qwOD nfsd
X$Lr4&m?v]RD NFS 6L I/O ks#rK,nfsd X$LrD}?^FK\,1KPD NFS I/O
YwD}?#11Y nfsd X$Lr1,53lbI\a8>wV5J4(}g CPU);9CK\Y;?V#
zI\P534dV{C("R\})Dmu,B5ObGr*1Y nfsd X$LrSx^FKd`J4D9
C#nfsd X$Lr9C&mw\ZMZf,+;G(}vS5Zfr+|}6=|lD CPU G^(^}KJ
bD#bv=8G4(|`D_-J4(nfsd X$Lr) #

Z&CLr*"}LPI\;-bd4(_-J4M?1#+]}]rXFh8D=(ITP'X4(;v_
-J4#1<;4(byDJ41,(#;P$_I`S|GD9C,2;PSZXF|GDVd#|GDf
ZI\;a}pXS,1=3vX(T\JbvV1Ma;v|GDX*T#

n!/X|J4*>
k<GZ}v6pOn!/$w:XDYgJ4*s#

9CJ1DJ4
v(Z;vJ4O9Cm;vJ41&CmGX<G"R7TP*Pw7D?j#

Z&CLr*"}LPP;v!qJ4D>},4(}vSZf{D4uY CPU D{D4o=;v=b#C


Z]>J4!qD+2D53dCv_*:G+D~ECZ%@D>X$w>O,9GECZ6L~qwO#

uYX|J4D*s
TZ>X*"D&CLr,IC`V=(liLrTcd|P'X4P`,D&\r}%;h*D&\#

Z53\m6pO,yCX|J4DMEH6$w:XITF/=d{53P"Zd{1dKPr(}$w:
X\mwxPXF#

a9/J4D"P9C
r*$w:Xh*KP`v53J4,SxIT{CbyDB5,4J4G@"DRIT"P9C#

T\w{ 9
}g,Yw53$Ac(lb=LrZ3rCJD~DB5,rK|wH"P4PDd{3rA!Yw,,1
&CLr9&mH0D}]#"P2CZ53\m#}g,g{3v&CLr,1CJ=vr`vD~Rg{
,1CJDb)D~fEZ;,D}/wO,G4mS;vnbDEL}/wI\aa_EL I/O DYJ#

J4VdEH6
Yw53a)K;)=(4xVn/DEH6#

P)Z536pOhC,HgELw=#d{D}gxLEH6II%vC'hCT43,S=X(NqOD
X*T#

X4w{=h
T\VvD;v+ODfmGSB4\P?1vV#uY3vJ4D9Cb6Em;J4^FKLB?rl&
1d#

}g,YhRGD53PPBPD{CJ6p:

CPU:90% EL:70% Zf:60%

bv$w:XG CPU s(D#g{I&Dw{$w:X9C CPU :XS 90% 5= 45%,rI{ZT\O


P=6DDF#;RDGVZD$w:XG I/O s(D,|PBPD|F{CJ:

CPU:45% EL:90% Zf:60%

DFsD CPU {CJJmLr"La;ELks,+SB4RGa\=IEL}/wD]?)SD^F#T


\DF2mG 30% x;G$ZD 100%#

\GfZ;vBDX|J4#X*DJbG9CV_DJ4GqQ-zcT\?j#

/f: 9C vmo"ioo"schedo"no M nfso w{|nxP;!1D53w{I\<BbbD53P*,


g53r&CLrT\B5,r_53Rp#|Dv&ZT\Vv6pv?11EJC#

":TZT\`XDw{hC,;fZ24;c(i#

&CnbDJ4
Z0vyPD=(<C!sg{53T\T;\zc|D?j,rXkv?r)9X|J4#

g{X|J4G_-J4RBc3FE"c;,r^hnbz[MIT)9_-J4#g{X|J4G5J
4,Vv1XkP?;)nbDJb:
v Xkv?r)9X|J4=24LHEITU9?1?
v 53T\azc|D?jp?rmbDJ4aWH%Mp?
v g{P;.X|J4D0,v?r)9yPb)J4rkm;53.V10$w:XGq|Z!I>X?

T\y<
1T<HO;,73Px(m~DT\1,#av=m`I\Dms,;)G<uOD,;)GEnOD#>
Z|,w*Da>E"#>id{wZV[@b}%MX(&m1dD;,=(#

@b&m53wCh*(QD1d(RS)1,h*q!;vIBPZ]iID}V:
v 4P}KP~qD8nyh*D7P1d

10 T\\m8O
v &mwH}ZfPD8nr}]1SYD;,1d(2MG5,_Y:fM TLB ;|PDz[)
v ZwC*7MaxCJ1Syh*D1d
v I\ZTB~g53(1wPOy{DD1d
v Ir`rYDfzB~{DD1d,g I/O

*K\b(f;v;+7D}V,##*s`N@b$w:X#r*yPDb?DrX<avS&m1d,d
MD@@/P;vz_DN=,gBPDe<y>#

< 3. dMD@@/z_.

2?+MD5m>_Y:f&ZJK4,DI\T\Mrm>sEDa{#

;vPfrX4vVDb?B~I\9z_P+eDN=(=vns5),}gBPDe<y>#

< 4. +ez_

;=vQ1DPOI\9z_x;=dN,}gBPDe<y>:

< 5. dNz_

T7P5@@DV<;GfzD,9C-dDFmT3FbTh*G#!D#xR,IZ@5Z@@D?D,
=y5M7P5<;GT\J1DXw#

T\w{ 11
12 T\\m8O
53T\`S
AIX a)K\`CZ`SkT\`XD53n/D$_M=(#

,x53T\`SDf&
,x`S53T\P`Vf&#

,xD53T\`SIT4PTBNq:
v yyaZ1ZDJbzz:wC.0Mlb=|G
v lb0lC'zz&DJb
v ZJbWN"z1U/}]
v Jmz("HOy<

I&D`S|(TBZ]:
v SYw53P(Zq!XZT\DE"
v f"E"Ttw+4JboO.C
v T>PfZ53\m1DE"
v lb*snb}]U/rl&53\m1D8>U/K`}]Div,r_~_ylb
v U/Mf"XhDj8}]
v zYT53M&CLryvD|D

9C|nxP,x53T\`S
vmstat"iostat"netstat M sar |na)KIT9lT\`SzFDy>@]#

1vVJb1,IT`4 shell E>4T|ndvxP}]r/"/fT\Jb,rG<XZ534,D}]#


}g,shell E>ITbT CPU c4,"%M4,DUPYVH,"ITZvV CPU %M4v14Pm;v
shell E>#TBE>C4G<{DKs?V CPU 1dD 15 vn/xL(;GCE>DC'5PDxL):
# ps -ef | egrep -v "STIME|$LOGNAME" | sort +3 -r | head -n 15

9C vmstat |nxP,xDT\`S
vmstat |nCZq! CPU"3fwHMZf9CivD\e<Nhv#

BfG vmstat |nzIDy>(f:


# vmstat 5 2
kthr memory page faults cpu
----- ----------- ------------------------ ------------ -----------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
1 1 197167 477552 0 0 0 7 21 0 106 1114 451 0 0 99 0
0 0 197178 477541 0 0 0 0 0 0 443 1123 442 0 0 99 0

kG!4T vmstat |nDZ;](fT>TO;N53}<T4D[}n/#Z~](fT>Z;v 5 kd


t1dDn/#

PX vmstat |nDj8V[,kNDZ 87 3D:vmstat |n;"Z 109 3D:9C vmstat |n7(Zf9


Civ;MZ 152 3D:9C vmstat |n@@ELT\;#

© Copyright IBM Corp. 1997, 2006 13


9C iostat |nxP,xDT\`S
iostat |nCZ7(ELM CPU D9Civ#

BfG iostat |nzIDy>(f:


# iostat 5 2

tty: tin tout avg-cpu: % user % sys % idle % iowait


0.1 102.3 0.5 0.2 99.3 0.1
" Disk history since boot not available. "

tty: tin tout avg-cpu: % user % sys % idle % iowait


0.2 79594.4 0.6 6.6 73.7 19.2

Disks: % tm_act Kbps tps Kb_read Kb_wrtn


hdisk1 0.0 0.0 0.0 0 0
hdisk0 78.2 1129.6 282.4 5648 0
cd1 0.0 0.0 0.0 0 0

kG!4T iostat |nDZ;](fT>TO;N53}<T4D[}n/#Z~](fT>Z;v 5 kd


t1dDn/#

53,$ELn/Dz7G<#ZOv>}PI4=rvVTB{"x{Cz7G<:
Disk history since boot not available.

*9C smitty {CrtCEL I/O z7G<,kZ|nPOdkTB|n:


# smitty chgsys

Continuously maintain DISK I/O history [value]

"+ value hC* false T{CEL I/O z7G<,rhC* true TtCEL I/O z7G<#EL I/O D
1ddt3FE";\KhC0l#

PX iostat |nDj8V[,kNDZ 89 3D:iostat |n;MZ 150 3D:9C iostat |n@@ELT\;#

9C netstat |nxP,xDT\`S
netstat |nCZ7("MMSUDE"|}#

TBG netstat |nzIDy>(f:


# netstat -I en0 5
input (en0) output input (Total) output
packets errs packets errs colls packets errs packets errs colls
8305067 0 7784711 0 0 20731867 0 20211853 0 0
3 0 1 0 0 7 0 5 0 0
24 0 127 0 0 28 0 131 0 0
CTRL C

kG!4T netstat |nDZ;](fT>TO;N53}<T4D[}n/#Z~](fT>Z;v 5 kd


t1dDn/#

d{PCD netstat |n!n* -s M -v#PXj8E",kNDZ 248 3D:netstat |n;#

14 T\\m8O
9C sar |nxP,xDT\`S
sar |nCZ7( CPU 9Civ#

BfG sar |nzIDy>(f:


# sar -P ALL 5 2

AIX aixhost 2 5 00040B0F4C00 01/29/04

10:23:15 cpu %usr %sys %wio %idle


10:23:20 0 0 0 1 99
1 0 0 0 100
2 0 1 0 99
3 0 0 0 100
- 0 0 0 99
10:23:25 0 4 0 0 96
1 0 0 0 100
2 0 0 0 100
3 3 0 0 97
- 2 0 0 98

Average 0 2 0 0 98
1 0 0 0 100
2 0 0 0 99
3 1 0 0 99
- 1 0 0 99

sar |n;(fTn|;N53}<T4D[}n/#

PX sar |nDj8E",kNDZ 89 3D:sar |n;MZ 153 3D:9C sar |n@@ELT\;#

9C topas |nxP,x53T\`S
topas |n(fPX>X53PDn/DX*3FE",g5Zfs!M4Yw53wCD}?#

topas |n9C curses bT>ddv,"Rdvq=JOZZ 80x25 yZV{DT>AOi4,r_JOZ


ZAYk<NT>A`,s!D0ZPi4#topas |nT 2 kD1!1ddtS53Oa!3FE""T>#
topas |na)KBPf;A;:
v \e533FE"
v n1&xLDPm
v WLM 3FE"
v HomELDPm
v _-VxT>
v gVxS<(xP 5300-03 D AIX 5.3 0|_)

XkZ53O20 bos.perf.tools D~/M perfagent.tools D~/TKP topas |n#

PX topas |nD|`E",kND6AIX 5L V5.3 |nN<s+,m 57PD topas |n#

\e533FE"A;
\e533FE"A;DdvI;vL(xrM;vIdxriI#

dvs_0=PT>KP topas LrD53{F"nsliDUZM1dT0`S1ddt#ZbixrBG


;vIdxr,dPPvKTBSxr:

53T\`S 15
v CPU {CJ
v xgSZ
v omEL
v WLM `
v xL

bixrDR_G|,TB3FE"SxrDL(xr:
v B~/SP
v D~/TTY
v 3fwH
v Zf
v 3fUd
v NFS

BfG\e533FE"A;Dy>dv:
Topas Monitor for host: aixhost EVENTS/QUEUES FILE/TTY
Wed Feb 4 11:23:41 2004 Interval: 2 Cswitch 53 Readch 6323
Syscall 152 Writech 431
Kernel 0.0 | | Reads 3 Rawin 0
User 0.9 | | Writes 0 Ttyout 0
Wait 0.0 | | Forks 0 Igets 0
Idle 99.0 |############################| Execs 0 Namei 10
Runqueue 0.0 Dirblk 0
Network KBPS I-Pack O-Pack KB-In KB-Out Waitqueue 0.0
en0 0.8 0.4 0.9 0.0 0.8
lo0 0.0 0.0 0.0 0.0 0.0 PAGING MEMORY
Faults 2 Real,MB 4095
Disk Busy% KBPS TPS KB-Read KB-Writ Steals 0 % Comp 8.0
hdisk0 0.0 0.0 0.0 0.0 0.0 PgspIn 0 % Noncomp 15.8
hdisk1 0.0 0.0 0.0 0.0 0.0 PgspOut 0 % Client 14.7
PageIn 0
WLM-Class (Active) CPU% Mem% Disk-I/O% PageOut 0 PAGING SPACE
System 0 0 0 Sios 0 Size,MB 512
Shared 0 0 0 % Used 1.2
Default 0 0 0 NFS (calls/sec) % Free 98.7
Name PID CPU% PgSp Class 0 ServerV2 0
topas 10442 3.0 0.8 System ClientV2 0 Press:
ksh 13438 0.0 0.4 System ServerV3 0 "h" for help
gil 1548 0.0 0.0 System ClientV3 0 "q" to quit

}KIdD“xL”Sxrb,IT4N;PTyPSxrEr,=(G+bjF=Z{DPDn?#}K“x
L”SxrTbDyPIdSxr<_PTBS<:
v J4C'Pm
v T>n/\FD%P(f

}g,%P(fS<I\;T>ELrxgD\LB?#

TZ CPU Sxr,zIT!q1&&mwDPmr+V CPU 9CJ,gOv>}y>#

topas `SwDn1&&mwA;DPm
*i4Pvn1&xLDA;,k9Cx -P j>D topas |n#

16 T\\m8O
KA;`FZ\e533FE"A;D“xL”Sxr,+_PnbDj8E"#IT4N;PTKA;Er,
=(G+bjF=Z{DPDn?#BfGn1&xLA;Ddv>}:
Topas Monitor for host: aixhost Interval: 2 Wed Feb 4 11:24:05 2004

DATA TEXT PAGE PGFAULTS


USER PID PPID PRI NI RES RES SPACE TIME CPU% I/O OTH COMMAND
root 1 0 60 20 202 9 202 0:04 0.0 111 1277 init
root 774 0 17 41 4 0 4 0:00 0.0 0 2 reaper
root 1032 0 60 41 4 0 4 0:00 0.0 0 2 xmgc
root 1290 0 36 41 4 0 4 0:01 0.0 0 530 netm
root 1548 0 37 41 17 0 17 1:24 0.0 0 23 gil
root 1806 0 16 41 4 0 4 0:00 0.0 0 12 wlmsched
root 2494 0 60 20 4 0 4 0:00 0.0 0 6 rtcmd
root 2676 1 60 20 91 10 91 0:00 0.0 20 6946 cron
root 2940 1 60 20 171 22 171 0:00 0.0 15 129 errdemon
root 3186 0 60 20 4 0 4 0:00 0.0 0 125 kbiod
root 3406 1 60 20 139 2 139 1:23 0.0 1542187 syncd
root 3886 0 50 41 4 0 4 0:00 0.0 0 2 jfsz
root 4404 0 60 20 4 0 4 0:00 0.0 0 2 lvmbb
root 4648 1 60 20 17 1 17 0:00 0.0 1 24 sa_daemon
root 4980 1 60 20 97 13 97 0:00 0.0 37 375 srcmstr
root 5440 1 60 20 15 2 15 0:00 0.0 7 28 shlap
root 5762 1 60 20 4 0 4 0:00 0.0 0 2 random
root 5962 4980 60 20 73 10 73 0:00 0.0 22 242 syslogd
root 6374 4980 60 20 63 2 63 0:00 0.0 2 188 rpc.lockd
root 6458 4980 60 20 117 12 117 0:00 0.0 54 287 portmap

topas `SwD WLM 3FE"A;


*i4T> WLM 3FE"DA;,k9Cx -W j>D topas |n#

KA;V*TB?V:
v %?Gn1& WLM `DPm,g\e533FE"A;D WLM S?Vy>,IT4N;PTKPmE
r#
v KA;DZ~?VGz9C}7|r f |!qD WLM `PDn>xLPm#

BfG WLM +A(fD>}:


Topas Monitor for host: aixhost Interval: 2 Wed Feb 4 11:24:29 2004
WLM-Class (Active) CPU% Mem% Disk-I/O%
System 0 0 0
Shared 0 0 0
Default 0 0 0
Unmanaged 0 0 0
Unclassified 0 0 0

==============================================================================
DATA TEXT PAGE PGFAULTS
USER PID PPID PRI NI RES RES SPACE TIME CPU% I/O OTH COMMAND
root 1 0 60 20 202 9 202 0:04 0.0 0 0 init
root 774 0 17 41 4 0 4 0:00 0.0 0 0 reaper
root 1032 0 60 41 4 0 4 0:00 0.0 0 0 xmgc
root 1290 0 36 41 4 0 4 0:01 0.0 0 0 netm
root 1548 0 37 41 17 0 17 1:24 0.0 0 0 gil
root 1806 0 16 41 4 0 4 0:00 0.0 0 0 wlmsched
root 2494 0 60 20 4 0 4 0:00 0.0 0 0 rtcmd
root 2676 1 60 20 91 10 91 0:00 0.0 0 0 cron
root 2940 1 60 20 171 22 171 0:00 0.0 0 0 errdemon
root 3186 0 60 20 4 0 4 0:00 0.0 0 0 kbiod

53T\`S 17
i4omELA;
*i4T>HomELDPmDA;,k9Cx -D j>D topas |n#

T>DomELDns}?GC -d j>8(D*`SDHomELD}?#CHomELPm4 KBPS VN


Er#

BfGI topas -D |nzID(fD>}:


Topas Monitor for host: aixcomm Interval: 2 Fri Jan 13 18:00:16 XXXX
===============================================================================
Disk Busy% KBPS TPS KB-R ART MRT KB-W AWT MWT AQW AQD
hdisk0 3.0 56.0 3.5 0.0 0.0 5.4 56.0 5.8 33.2 0.0 0.0
cd0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0

PX topas-D |nD|`E",kND6AIX 5L V5.3 |nN<s+,m 57PD topas |n#

i4gVxfe
*Z topas Pi4gVx3FE",k9Cx -C j>D topas |n,rSNNd{fe4 C |#

A;VIBf8v?V:
v Ok?VT>4TVx/D[/}],TT>\DVx"ZfM&mwn/#G |C4+K?VZr*e%"
j8e%MXU.dxPP;#
v Bk?VT>?vVxD3FE",b?VVVI=v?V:2mVxM(CVx#S |C4Zr*MXU
2mVx?V.dxPP;#D |C4Zr*MXU(CVx?V.dxPP;#

BfG topas -C |ndvDj{A;>}:


Topas CEC Monitor Interval: 10 Wed Mar 6 14:30:10 XXXX
Partitions Memory (GB) Processors
Shr: 4 Mon: 24 InUse: 14 Mon: 8 PSz: 4 Shr_PhysB: 1.7
Ded: 4 Avl: 24 Avl: 8 APP: 4 Ded_PhysB: 4.1

Host OS M Mem InU Lp Us Sy Wa Id PhysB Ent %EntC Vcsw PhI


--------------------------------shared------------------------------------------
ptools1 A53 u 1.1 0.4 4 15 3 0 82 1.30 0.50 22.0 200 5
ptools5 A53 U 12 10 1 12 3 0 85 0.20 0.25 0.3 121 3
ptools3 A53 C 5.0 2.6 1 10 1 0 89 0.15 0.25 0.3 52 2
ptools7 A53 c 2.0 0.4 1 0 1 0 99 0.05 0.10 0.3 112 2
-------------------------------dedicated----------------------------------------
ptools4 A53 S 0.6 0.3 2 12 3 0 85 0.60
ptools6 A52 1.1 0.1 1 11 7 0 82 0.50
ptools8 A52 1.1 0.1 1 11 7 0 82 0.50
ptools2 A52 1.1 0.1 1 11 7 0 82 0.50

VxI4NNP(Host"OS M M }b)Er,=(G+bjF/=y*PDOf#

PX topas -C |nD|`E",kND6AIX 5L V5.3 |nN<s+,m 57PD topas |n#

i4>X_-Vx6E"
*i4Vx6E"T0?v_-&mwDT\8j,k9Cx -L j>D topas |n,rSNNd{fe4 L
|#

A;VI=v?V:
v Ok?VT>;?VVx6E"#
v Bk?VT>_-&mw8jDErPm#

18 T\\m8O
BfG topas -L |nDdv>}:
Interval: 2 Logical Partition: aix Sat Mar 13 09:44:48 XXXX
Poolsize: 3.0 Shared SMT ON Online Memory: 8192.0
Entitlement: 2.5 Mode: Capped Online Logical CPUs: 4
Online Virtual CPUs: 2
%user %sys %wait %idle physc %entc %lbusy app vcsw phint %hypv hcalls
47.5 32.5 7.0 13.0 2.0 80.0 100.0 1.0 240 150 5.0 1500
==============================================================================
logcpu minpf majpf intr csw icsw runq lpa scalls usr sys wt idl pc lcsw
cpu0 1135 145 134 78 60 2 95 12345 10 65 15 10 0.6 120
cpu1 998 120 104 92 45 1 89 4561 8 67 25 0 0.4 120
cpu2 2246 219 167 128 72 3 92 76300 20 50 20 10 0.5 120
cpu3 2167 198 127 62 43 2 94 1238 18 45 15 22 0.5 120

PX topas -L |nD|`E",kND6AIX 5L V5.3 |nN<s+,m 57PD topas |n#

9C Performance Toolbox xP,x53T\`S


T\$_d(PTX®)G;VmIz7,|T<N==T>wVkT\`XDH?5#

PTX D;vw*EcG;*4;B<NT>,x;Ci4+G}VDA;4Ili10D53T\#PTX 2P
zZ`k44Z`vkT\`XD|nDE","JmT}]xPG<MXE#

PTX |(CZ>XM6L53n/`SMw{D$_#nJOxP,x`SD PTX $_gB:


v ptxrlog |nzI ASCII q=DG<,byJmzr!dvrTdvxPs&m#2IT9C ptxrlog |
nzII(} azizo r xmperf |ni4D~xFG<D~#
v xmservd X$Lrd1G<$_,"R(} xmservd.cf dCD~xPXF#CX$Lr,1a)KTx
(ZcDyZxgD|51}]`SM>X<F#
v xmtrend X$Lrk xmservd X$LrG#`F,2IT1w<F$_9C#xmtrend X$LrM
xmservd X$Lr.dDw*npZZwX$LrDf"hs;,#(#,xmservd X$LrG<?!1
IDC8WVZDELf"?#xmtrend X$Lra)KsMH?5/ODI\m@CG<#
v jazizo $_G Java™ f>D azizo |n#jazizo |nGC4Vv53D$ZT\XwD$_#|VvI
xmtrend X$Lr4(DG<"a)TIT(FDQ<F}]DT>#
v wlmperf $_4`a)“$w:X\mw”(WLM)J4n/D<NS<#C$_ITzII PTX X$Lr
4(DwFG<(f(1dNIS}VS"}!1"}l"}\=}B) #

PX PTX D|`E",kND Performance Toolbox Version 2 and 3 for AIX: Guide and Reference M
Customizing Performance Toolbox and Performance Toolbox Extensions for AIX#

53T\`S 19
20 T\\m8O
u<T\oO
ZoOT\Jb1,&<G`VQ(fDT\Jb#

(fDT\JbD`M
(fT\Jb1,u!I\TPmT7(T\JbDV`G\PozD#

X(LrKP:}
vZ`V-rDN;-r,LrI\*<KPu}#

!\bViv44";c@,+9GPJb*Xp:
v Lr;1KP:}p?

g{LrU*<KPd},-rI\G|ZTLrwKD/#
v 4zkGqD},r_Gq20}Bf>?

g{G,kLr1r)&L-Lbv#
v D}3)73tTp?

g{Lr(|(TmDI4PLr)9CDD~Q-F/K,rVZI\azzH0";fZDxgS
Y#r_,D~I\ayCH0;Z;,ELOD%vELf!w#

g{53\m1|DK53w{N},rLrI\\=H0";fZD<x#}g,g{53\m1|D
KFcEH6D=(,G4_ZZs(lYKPDLrVZI\a}B4,x0(LrrKPSl#
v LrGC perl"awk"csh r_3)d{bMoT`4Dp?

;RDG,bMoT"4I`kwE/#,y,Zng perl r awk DoTP\]WC;)V{4ks;


vFcr I/O G#\/DYw#(#PX*xPK`LrD(flirG}=,Hli,EX"b?;=Y
w~,D|zN}#
v LrGq<UT,yDYHKP,9GP1rKPdl?

D~539C?V53Zf4#f)Ts}CDD~3f#g{;vPEL^FDLrtSEKP=N,
Z~N(#aHZ;NKPYHl#`FDP*I(}9C NFS DLr4=#bViv2"zZsLrP,
g`kw#LrDc(I\;GPEL^FD,+G0kI4PDsLryh1d2ma9Z;N4PL
rHfs4P$C`#
v g{Lr;1KP:},r_Zd73;PNNwTd/DivBu},rki4|DJ4`XT#

:T\^FJ4D7(;hvK"V?1D<I#

Z;lDX(1dyPLr<KP:}
53Z?lD3)1rYHB5P`V-r#

s`}K<P}IZ%;o\`K<0_Z?lD;vr`vX(1d9C53,SxvV_e1dYHu}
D-z#bvVs";\GvvI:X/PD-r}p#P1|8v;=bDfZ(;P1:X\_1EaP
bvJb)#9&<G53P44"zDivDd{44#

© Copyright IBM Corp. 1997, 2006 21


v g{KP iostat M netstat |n;N1d(dP|,YHu}D1d),r_gNH0S`SzF6q=
}],G4GqP;)ELHd{EL9C|51?CPU UPYVHGq;aS|c?Gq"MrS\DE
"|}?l#_?
– g{EL;yb,kNDZ 149 3D:_-mMEL I/O T\;#
– g{ CPU %M,C ps r topas |n7(CN1dZKPDLr#Z 13 3D:9C|nxP,x53
T\`S;Pa)Dy>E>r/KTn1& CPU C'DQw$w#
– g{YHu}k1u`4,HggM1dD#Y,r*0RJbLr,g<N xlock rN7Lr#Q*P
) xlock Lrf>a9Cs? CPU 1dZUPT>wOT><N#=#9PI\MG,PKZKPw
*G{D CPU DLr,"RT<Zn;&CKPD1rKP#
v }GzD /var/adm/cron/cron.allow D~*U,qrzI\k*_{DYwli /var/adm/cron/crontab
?<DZ]#

g{z"VJb44Z0(n/k$1dKPZr&CKPZs(D CPU \/DLr.dDe;,r<G9


C schedo |n|DFcEH6D=(,T3x0(|_DEH6#kNDZ 104 3D:_LEH65DF
c;#

Z;I$bD1dyPLr<KP:}
bVivBnJ1D$_G}Xlbw,}g filtd X$Lr(PTX D;vi~)
#

IThC filtd X$Lr44P shell E>,r_Zlb=Xbiv1U/X(E"#ITC|, vmstat"


iostat"netstat"sar M ps |nD shell E>9l`F+|(CDzF#

g{JbfZZV<=73PD%v53O,MI\fZKPPDJbLr,r_2mG=vfz`;DL
r#

%C'KPDyPLrYH:}
P1r,53a0lX(Dve#
v bVivBDbv=8MG?/KJb#/JC'#CD)|n,"+b)|nk time |n;pKP,g
TB>}y>:
# time cp .profile testjunk
real 0m0.08s
user 0m0.00s
sys 0m0.01s

;sZ4v=T\JbD3vC'j6BKP`,D|n#(fD real 1dP;,p?


v LrDKP;&CP+sD CPU 1d(user+sys)nl,+IZO`rO}D I/O,I\fZ51nl#
C'D~G;Z NFS SXD?<Pp?9GIZd{-rx;Z_n/TDELO?
v liC'D .profile D~PGq8(K;}#D $PATH#}g,g{ZQw /usr/bin .0\GQw8v NFS
SXD?<,r?nYw<a(|$1d#

s? LAN ,SD53DYH,1u}
ZS@"53rV<=53*d}LPfZ;)#{Jb#

Jb(#GIZk!lKPBdCD*s,r1&T3)/}I>Db6xlID#}Ky]ns+d%*
(MTU)M mbuf 4w{ LAN dCTb,9kiRI\G(};5PvpOmDv_"9x4DX(Z LAN
D4#rGnQiN#

22 T\\m8O
v 9Cxg3FE"47#;fZomxgJb#7#ng netstat -v"entstat"tokstat"atmstat r fddistat
.`D|n;azz}`msrZJdwO"ze;#
v 3)`MDm~rL~msaCc%rd{E"|zz<{D LAN %M#

1"zc%g)1,uAG);}+9CxgD532I\r;1DPOT0SUM&mE"|1D CPU J
4{DxYHu}#9C LAN Vvh8H9CU(DT\$_\|CXlbM(;b)Jb#
v fZ(};v53,SD=v LAN p?

+53Cw7Iwa{Ds? CPU 1d4&mM4FE"|#2a\=53}Z&mDd{$wDIE#


9C(C2~7IwMxE(#G|.cM|!3Dbv=8#
v ?N NFS SX1GqPw7D?D?

Z*"V<=dCD3)WNP,9C NFS 20G*KCC'\ZB53OCJ-<53ODC'w?<#


bVivr/Ku<*d,+?SK,xD}](EI>#C53 A DC'w*k53 B D}];%G4
*D,4.`;#

(} NFS CJD~a?SI[D LAN w?I>,M'zM~qwD CPU 1dT0nUC'Dl&1d#


;c<rGC'M}](#&C;Z,;v53#l#ivGG)W*X"96L}]Dnb{DM1d
d*}1*sDiv#P;)>}5wK/P}]T5V|I?D8]MXFDX*T,T07#yPC
'}9CnBf>LrDX*T#

g{b)T0d{*sf(K NFS M'z — ~qw%;DX*6p,nCP(Ed1~qwD53,x


;GP\`k~qwkM'zD53#
v LrGqQ}7R}1F2T9C6L}LwC(RPC)?

F2Lr=V<=73Dnr%=(GZ 1:1 Dy!OC RPC zfLrwC#;RDG,>XLrwCk


RPC .dDT\nluAH>XEL I/O k NFS I/O .dDnl9*s#Y(75h* RPC,r&C!
I\XT|GxPz&m#

X(~qrh8ODyPLrYH<{u}
X(~qrh8ODyPLrYH<{u}P`V-r#

g{NN9CXbh8r~qDLr<{YHu},kN<|,CXbh8r~qDwb:
v Z 87 3D:"&mwT\;
v Z 109 3D:ZfT\;
v Z 149 3D:_-mMEL I/O T\;
v Z 195 3D:D~53T\;
v Z 246 3D:xgT\Vv;
v Z 283 3D:NFS T\`SMw{;

6L,S1DyPLrKP:}
T53D>XM6LO$I\mVCj+;,#1!ivB,ZC'TdC'j6G<1WHIiD>XO$
D~#bHyZxgDO$zF_P|lDl&1d#

g{C'G<"(}3VxgO$zFxPO$,rCzF+GiRC'j61Qw=DZ;VzF#baT
4PC'G<{iRDNN|nzz0l#2a0lTB|n:
v ps -ef

u<T\oO 23
v ls -l
v ipcs -a

/usr/lib/security/methods.cfg D~P(eK_eDO$Lr#1!5Gw*>XO$=(D compat#*i4


X(C'j6D10O$hC,kTKC'j6G<"Z|nPOdk:
# echo $AUTHSTATE

g{h*7#zH9C>XO$zF;s9CyZxgDO$zF(g DCE),kZ|nPOdkTB|n:
# export AUTHSTATE="compat,DCE"

T\^FJ4D7(
ZKP`C'$w:X1+fi4J49CJDnQ$_G vmstat |n#

vmstat |n(f CPU MEL I/O n/T0Zf9Civ}]#TBD vmstat |n5}? 5 kSzI;


v%PD53n/**(f#
# vmstat 5

ZOv>}P,IZZ1ddts48(F},rK(faLxzI,1=!{K|n*9#

BfD vmstat (fGZKP AIXwindows M8v[O&CLrD53O4(D(w*>},Q>}K;)M


n/?dt1d):
kthr memory page faults cpu
----- ----------- ------------------------ ------------ -----------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
0 0 8793 81 0 0 0 1 7 0 125 42 30 1 2 95 2
0 0 8793 80 0 0 0 0 0 0 155 113 79 14 8 78 0
0 0 8793 57 0 3 0 0 0 0 178 28 69 1 12 81 6
0 0 9192 66 0 0 16 81 167 0 151 32 34 1 6 77 16
0 0 9193 65 0 0 0 0 0 0 117 29 26 1 3 96 0
0 0 9193 65 0 0 0 0 0 0 120 30 31 1 3 95 0
0 0 9693 69 0 0 53 100 216 0 168 27 57 1 4 63 33
0 0 9693 69 0 0 0 0 0 0 134 96 60 12 4 84 0
0 0 10193 57 0 0 0 0 0 0 124 29 32 1 3 94 2
0 0 11194 64 0 0 38 201 1080 0 168 29 57 2 8 62 29
0 0 11194 63 0 0 0 0 0 0 141 111 65 12 7 81 0
0 0 5480 755 3 1 0 0 0 0 154 107 71 13 8 78 2
0 0 5467 5747 0 3 0 0 0 0 167 39 68 1 16 79 5
0 1 4797 5821 0 21 0 0 0 0 191 192 125 20 5 42 33
0 1 3778 6119 0 24 0 0 0 0 188 170 98 5 8 41 46
0 0 3751 6139 0 0 0 0 0 0 145 24 54 1 10 89 0

ZCu<@@P,kXp"b page `pD pi M po PT0 cpu `pPDDP#

pi M po nVpzmw3Ud3fwx}M3fwv}#g{z[l=w3Ud I/O DNN5},rm>$w


:XI\QS|r,v53DZf^F#

g{Zx(D 5 kdt1dZ,C'M53 CPU 9CYVH(us M sy).MsZ 90%,rm>$w:XZ


Kdt1dZS|53D CPU ^F#

g{ I/O H}YVH wa S|c"R pi M po 5*c,r53}ZDQ1dH}GX~D~ I/O,"R;?


V$w:X\ I/O ^F#

g{ vmstat |nmwPs? I/O H}1d,r9C iostat |nIU/|`j8E"#

24 T\\m8O
TBD iostat |n5}? 5 kSzI I/O n/M CPU 9CJD**(f,"RIZZKdt1ds8(K
FcN}* 3,rK(f+ZZ}](fs#9#
# iostat 5 3

BfD iostat (fGZKPkOv vmstat >}P`,$w:XD53O4(D,;G1d;,#Z;](


fzmT0fD}<T4D[}n/iv,xsfD(fG80;v 5 k1ddtDn/iv:
tty: tin tout avg-cpu: % user % sys % idle %iowait
0.0 4.3 0.2 0.6 98.8 0.4

Disks: % tm_act Kbps tps Kb_read Kb_wrtn


hdisk0 0.0 0.2 0.0 7993 4408
hdisk1 0.0 0.0 0.0 2179 1692
hdisk2 0.4 1.5 0.3 67548 59151
cd0 0.0 0.0 0.0 0 0

tty: tin tout avg-cpu: % user % sys % idle %iowait


0.0 30.3 8.8 7.2 83.9 0.2

Disks: % tm_act Kbps tps Kb_read Kb_wrtn


hdisk0 0.2 0.8 0.2 4 0
hdisk1 0.0 0.0 0.0 0 0
hdisk2 0.0 0.0 0.0 0 0
cd0 0.0 0.0 0.0 0 0

tty: tin tout avg-cpu: % user % sys % idle %iowait


0.0 8.4 0.2 5.8 0.0 93.8

Disks: % tm_act Kbps tps Kb_read Kb_wrtn


hdisk0 0.0 0.0 0.0 0 0
hdisk1 0.0 0.0 0.0 0 0
hdisk2 98.4 575.6 61.9 396 2488
cd0 0.0 0.0 0.0 0 0

Z;](fT>KC53OD I/O G;=bD#s?V I/O(A! 86.9% D'VZ}M4k 90.7% D'VZ


})(;Z hdisk2,CELPH|,Yw53,2|,w3Ud#T}<*<D CPU 9CJ[}3FE"(
#GA^beD,}G53;l 24 !1<Z9C#

Z~](fT>S hdisk0 A!DY?ELn/,C hdisk0 *53wC'|,K;v@"D~53#=v&C


LrM iostat |nTmavS CPU n/#

ZZ}](fP,IT4=RG(}KP;vVdMf"s?Zf(Ov>}Ps<* 26 MB)DLrK*4
(K;VS|53_$Du~#,yZOv>}P,hdisk2 Z 98.4% D1doGn/D,blIK 93.8% D
I/O H}#

%vLrD^FrX
g{zG53D(;C',IT(}9C time |n4qCLrG@5Z I/O 9G@5Z CPU D;cEn,
gB:
# time cp foo.in foo.out

real 0m0.13s
user 0m0.01s
sys 0m0.02s

":time |n>}9CZ(Z Korn shell(ksh)PDf>#}=D time |n /usr/bin/time (f+HOM#

ZOv>}P,cp Lr4PyDCD1d real(0.13 k)6sZC'M53 CPU 1d.M(0.03 k),b


vB5mwLrG I/O s(D#zzbVivDw*-rG foo.in D~n|4;A!}#

u<T\oO 25
SMP ODdv_PBD,e#PX|`E",kNDZ 94 3D:time M timex |n"bBn;#

8ksT,;vD~KP`,|nzzBfDdv:
real 0m0.06s
user 0m0.01s
sys 0m0.03s

s?VryP foo.in D~D3fTZZfP,r*;PI$xL4XU|G,"RD~k53D RAM ]?


`HG\!D#!D foo.out D~2ZZfP:e,C|w*dkDLr8u;PEL`XT#

g{z*"T7(LrDEL`XT,rXk7#|Ddk&Zf54,#2MG5,g{Lr(#kTn|
4;CJDD~KP,GXk7#Z@@LrP9CDD~;ZZfP#`4,g{Lr(#w*j<rPD
;?VKP,ZCrPP,|SO;vLrDdvqCT:Ddk,r&$H<8CZfT#$@@Df5
T#}g,BfD|nT foo.in D~D3f_P$H<8DZfDwC:
# cp foo.in /dev/null

g{D~`H RAM xTOs,iva|4S#g{;vLrDdvGB;vLrDdk,"R{vD~;J


O#fZ RAM P,Z~vLrMaA!D~7?D3f,b)3f!zK2?D3f#!\bViv\Qx
Pf5#b,+|k;P"zEL_Y:fDiv8u`,#

D~I\;GT"sZ RAM DivGZB;ZPV[D RAM kELVv`TDXbiv#

kELrZf`XDJb
}gs?V5ZfIC4:eD~;y,53D3fUdIIG)?FE}Z RAM bDLr$w}]CwY
1f"w#

YhzP;vLr,|\Yr8u;A!}],IG4T>v I/O @5T"4#|cDG,5J1d<C'k


531d.MDHJ";f,xKPxvS#LrI\GPZf^FD,"R|D I/O GkTw3UdD,2
I\44ZK#libVI\TD=(T>ZTBD vmstatit shell E>P:
vmstat -s >temp.file # cumulative counts before the command
time $1 # command under test
vmstat -s >>temp.file # cumulative counts after execution
grep "pagi.*ins" temp.file >>results # extract only the data
grep "pagi.*outs" temp.file >>results # of interest

vmstatit E>\aKZ]O`D vmstat -s (f,C(fa)KT53t/T4s?53n/D[}F}#

g{ shell E>gB4P:
# vmstatit "cp file1 file2" 2>results

a{gB:
real 0m0.03s
user 0m0.01s
sys 0m0.02s
2323 paging space page ins
2323 paging space page ins
4850 paging space page outs
4850 paging space page outs

w33FE"0s`,,$5KRGT cp |n;\3fwH^FD4(#vmstatit shell E>D;v)9d


?ITC4T>f5iv,gB:
vmstat -s >temp.file
time $1
vmstat -s >>temp.file

26 T\\m8O
echo "Ordinary Input:" >>results
grep "^[ 0-9]*page ins" temp.file >>results
echo "Ordinary Output:" >>results
grep "^[ 0-9]*page outs" temp.file >>results
echo "True Paging Output:" >>results
grep "pagi.*outs" temp.file >>results
echo "True Paging Input:" >>results
grep "pagi.*ins" temp.file >>results

r*Yw53PDD~ I/O G(} VMM &mD,yT vmstat -s |n+U(Lr I/O (f*3fwxM


3fwv#1 vmstatit shell E>DgZf>kTn|4A!DsD~D cp |nKP1,a{gB:
real 0m2.09s
user 0m0.03s
sys 0m0.74s
Ordinary Input:
46416 page ins
47132 page ins
Ordinary Output:
146483 page outs
147012 page outs
True Paging Output:
4854 paging space page outs
4854 paging space page outs
True Paging Input:
2527 paging space page ins
2527 paging space page ins

time |nDdv$5K I/O `XTDfZ#3fwxDvST>K*zc cp |nXhD I/O#3fwvD


vSmwD~c;s,\SZfxP^C3f(4XG|Tm)D?F4k#;P[}w3Ud I/O F}Dd
/DB5$w cp |n;a9(s=cT9bTzwDZf}XD}]a9#

Cf>D vmstatit E>(f I/O D3rGPb<D#dMLrAD~dk,;s4D~dv#m;=f,3


fwHn/(#S4v;OJD$wN3f*<#;P1LrT<CJ13fEa;AX#T53}<T4,
bT53-zDw3Ud3fwv8uGw3Ud3fwxD=6,b;B5mwAYP;)KPZC53D
LrQ+}]#fZLrax.0;aYNCJDZfP#Z 77 3D:Zf^FLr;a)K|`E"#m
kNDZ 109 3D:ZfT\;#

*KT>Zf^FTb)3FE"D0l,BfD>}[lPc;Zf(32 MB)D73BD3vx(|n,
;sC rmss |nK*Uu53(kNDZ 121 3D:9C rmss |nxPZfhs@@;)
#TB|nrP
# cc -c ed.c
# vmstatit "cc -c ed.c" 2>results

HZZfP$H<8C 7944 PD4D~M C `kwDI4PD~,;s@bZ~=4PD I/O n/:


real 0m7.76s
user 0m7.44s
sys 0m0.15s
Ordinary Input:
57192 page ins
57192 page ins
Ordinary Output:
165516 page outs
165553 page outs
True Paging Output:
10846 paging space page outs
10846 paging space page outs
True Paging Input:
6409 paging space page ins
6409 paging space page ins

T;,;fZ I/O ^F#uA;PA4zkXhDNN I/O#g{SB4"vBP|n:

u<T\oO 27
# rmss -c 8

+zwDP's!|D* 8 MB,;s4P`,3rD|n,aC=BfDdv:
real 0m9.87s
user 0m7.70s
sys 0m0.18s
Ordinary Input:
57625 page ins
57809 page ins
Ordinary Output:
165811 page outs
165882 page outs
True Paging Output:
11010 paging space page outs
11061 paging space page outs
True Paging Input:
6623 paging space page ins
6701 paging space page ins

BfPvK I/O `XTD"4:


v 9CD1dH\ CPU 1d$
v ZZ n N4P|n1Ps?#f I/O

9CD1dH^Zf^FDivB9*$T0s?w3Ud I/O DfZ,b;B5{wK`kw\=;cZf


DA-#

":C>}5wKZf^FD0l#IZ;P,&uYd{xLDZf9C,yTZbV73B?F`kww
3DxTs!G;PbeD@@#

*\bZBNXBt/.09C-K*uuDzw,kKP:
# rmss -r

4+ rmss |ntkDZfMEXYw53,Sx+53V4A(#]?#

$w:X\moO
$w:X\mv8@@$w:XD?viI?VDEH6#

1zC!wVI\DLrT\DFM53w{,"RT\P1T;nKzb1,zP}v!q:
v #t-y
v }6T\^FDJ4
v IC$w:X\m<u

Z;V=(a<B'\"R3)C'Dzz&MB#g{!qTJ4}6,rXk\$wbV*zG}1D#
rxHOwTDbv=8MGwi$w:X\mDI\T#

(#,zITSY;)w5#}g,z;sgh*D(fkZh? 3 cT00;lBg 4 cKPG,yPC


D#;,.&ZZh? 3 c9CD CPU \ZMd{J4`kGUPD#I9C at r crontab |n*sL
rZX(D1dKPr(ZKP#

,y,XkZWlKPD;)LrIT5MEH6KP#|G+(Q|$1dE\jI,+aOYkf}D1
dpv(wCDxLyCJ4#

28 T\\m8O
m;V=(G+$wS;(zwF=m;(zw;}g,1zZ4zk$tDzwOKP`k1#bV$w:
X=b*sxP|`f.M`S,r*uYxgD:XT0vS~qwOD CPU :XI\lI;p'#

AIX $w:X\mw(WLM)GYw53ZKD;?V#WLM ;hFC4x53\m1ZwHLrMibZ


f\mw(VMM)gNxxLVd CPU MomZfJ4|sDXF(#EL9CII WLM 4XF#by
Ih9;,V`Dw5`%IE,"@9yZ;,C'iDhsT=&CJ4#PXx;=DE",kND
Server Consolidation on RS/6000®#

u<T\oO 29
30 T\\m8O
J4\m
AIX a)KIwi~T\mT53T\P\s0lDJ4#

*Kb_eDw{(i,kNDBPZ]:
v Z 87 3D:"&mwT\;.
v Z 109 3D:ZfT\;.
v Z 149 3D:_-mMEL I/O T\;.
v Z 213 3D:xgT\;.
v Z 279 3D:NFS T\;.

&mwwHLrT\
TZ&mwwHLr,P`vkT\`XDJbh*<G#

_L'V
_LI4w*zMDxL#|G;vIVI5e,4(|h*DJ4H4(;vxLh*DJ4Y#Z AIX V4
wHLrPy>DIVI5eG_L#

xLI;vr`v_LiI#B5O,Yw53DgZ"PfP:XD1S(FMGLx4(M\mxL#?
vBxLZ4(1;xP%;D_L,C_L_Pd8xLDEH6"kd{xLPD_LyC&mw#xL
Z4P15P|y9CDJ4,x_Lvv5P|D104,#

1BDr^DD&CLr{CYw53D_L'V4(nbD_L1,G)_LZCxLDOBDP4(#|
G2mxLD=PNMd{J4#

xLPD;vC'_LP;vX(DyCwCr#g{yCwCrG+VD,rC_Lk53PyPd{_L
;pyC&mw1d#ZxL4(1zzD_L_P+VyCwCr#g{yCwCr>XD,rC_Lkx
LPDd{_L:yTI*xL2mD&mw1dDSU=#

v(SB4&CKPDv_LDc(PwH_T#

xLM_L
xLG53PD;vn/,|I3v|n"shell Lrrm;xLt/#

xLDtTgB:
v pid
v pgid
v uid
v gid
v environment
v cwd
v file descriptors
v signal actions
v process statistics

© Copyright IBM Corp. 1997, 2006 31


v nice

b)tT(eZ /usr/include/sys/proc.h P#

_LDtTgB:
v stack
v scheduling policy
v scheduling priority
v pending signals
v blocked signals
v thread-specific data

b)_LDtT(eZ /usr/include/sys/thread.h P#

?vxLI;vr`v_LiI#_LG;v%@DXFrPw#`vXF_LJm&CLrxPX~Yw,
}gA!UKM4D~#

`vXF_L2Jm&CLr,1*4T`vC'Dks~q#_La)Kb)\&,xV;P`xLDnb
*z,}g(} fork() 53wC4(D`vxL#

AIX 4.3.1 P}kK;vlYD fork }L f_fork()#C}LT`_L&CLrG#PC,|G+"LwC exec()


S}L,0aG.0&HwC fork() S}L#fork() S}LKPp4O},r*Z5JIz0CdS}LKP
+?S&mLr4u</yPx.0,|XkwC fork &mLrqCyPDbx#f_fork() S}LvTb)&
mLr"1SwC kfork() 53wC#Web ~qwG;vIT9C f_fork() S}LD\CD&CLr>}#

xLM_LDEH6
EH6\m$_&mxLDEH6#

Z AIX V4 P,xLEH6;G_LEH6D0m#1wC fork() S}L1,a4(;vxLM;v*Zd


PKPD_L#_LDEH6iaZxL#

ZK*?v_L,$;vEH65(P1F*wHEH6)#EH65G;v}{}RkX*_LDX*TD
d/=r`4#2MG5,O!DEH65m>;v`TX*D_L#1wHLr0R_LxPVI1,|!
q_PO!EH65DIVI_L#

_LITPL(DEH6r;L(DEH6#EH6L(D_LDEH65G;v#?,xEH6;L(D_
LDEH65y]C'_Ln!EH66p(#? 40)"_LD nice 5(1!5G 20,IfbI nice r
renice |nxPhC)Md&mw9CDp'xd/#

_LDEH6ITL(I3v5,g{C setpri() S}LhC(L()|GDEH6D0,|GIT_P!Z


40 DEH65#b)_L;a\=wHLrXcc(D0l#g{|GDEH65L(R!Z 40,b)_L
+ZITKPyPC'_L.0KPMjI#}g,;v_PL(5 10 D_L+Z_PL(5 15 D_L.
0KP#

C'IT&C nice |n9_LD;L(EH6dM#53\m1I+;v:D nice 5&Cx_L,byMx


K|OCDEH6#

B<T>K;)IT|DEH65D=(#

32 T\\m8O
< 6. gN7(EH65. e<T>KgN\Z4P}LPr&CK nice |n.s|D_LwHEH65#EH65=
!,_LEH6=_#*<1,nice 51!* 20 xy>EH61!* 40#4PP"zK&mwp's,nice D5T;
#V 20,y>EH6T;#V 40#ZKP renice —5 |ns09CMT0`,D&mw(CPU)DivB,nice 5V
ZG 15 xy>EH6T;G 40#ZT 50 D5"vS}L setpri() .s,L(EH6VZG 50 x nice 5M&mw
(CPU)D9C;`X#

_LD nice 5Z4(_L1hC"RZ_LD{vz|ZP<G#?,}GC'(} renice |nr setpri()"


setpriority()"thread_setsched() r nice() 53wCw7|DK|D5#

&mwp'G;v{},|(}_Ln|D&mw9C4Fc#g{?NZ;v 10 ms D1SNpax1_L
\&mwXF,rn|D&mw9C5|FS 1,1=o=ns5 120#?vNpD5JEH6p'fE nice
D5vS#yP_LDn|&mw9C5?kXc;N#

a{gB:
v ;L(EH6D_LDEH6fEdn|&mw9CDvSxdM,4.`;#b5>;c42,3_L
n|;VdD1d,=`,r|;VdB;v1d,DI\T=!#
v ;L(EH6D_LDEH6fEd nice 5DvSxdM,4.`;#

":9C`&mwKPSP0d:X=bzFTs,nice r renice D5T_LDEH6I\;P$ZD0l,


r*OMEH6DKP1dI\HZrsZO_EH6DKP1d#*s nice r renice zz$Z'{
D_L&CEZ+VKPSPP#

IT9C|n ps T>xLDEH65"nice 5MLZD&mw9C5#

PX9C nice M renice |nD|*j8DV[,kNDZ 102 3D:XF"&mwyC;#

PX&mwp'DFcT0nB&mw9C5%uDj8E",kNDZ 104 3D:_LEH65DFc;#

AIX $w:X\mw 29CEH6zF4S?&mwJ4\m#r*Z$w:X\mwBV`D_L_PDE


H6I$w:X\mw\m,|GI\_P;,Z4Z$w:X\mwBV`D_LDEH6P*#

_LwH_T
wH_T|,`VkT_LDI\5#
SCHED_FIFO
bV_TD_L;wHs,|a;1KP=ax,}G;h{rP;vO_EH6D_LIVI,|
+T8~S&mwDXF#;PL(EH6D_LE\P SCHED_FIFO wH_T#

J4\m 33
SCHED_RR
1;v SCHED_RR _LZ1d,D)2PXF(1,|+F/=M|_P`,EH6DIVI_LS
PD2?#;PL(EH6D_LE\P SCHED_RR DwH_T#
SCHED_OTHER
bv_TZ“POSIX j< 1003.4a”Pw*(eD4PLrxP(e#Z?v1SPO1XcKP_LD
EH65b6EC_LI\'%XF(,r*|DEH65Q-,}Km;IVI_LDEH65#
SCHED_FIFO2
C_TM SCHED_FIFO `,,;G|Jm;vv/_K\L1dD_LZ;=Q1IECZdKPS
PD7?#K1dNGW5T^F(I9C schedo -o affinity_lim w{)
#C_TvICZ AIX 4.3.3
0dsxf>#
SCHED_FIFO3
wH_ThCI SCHED_FIFO3 D_L\GECZKPSPD7?#*K@9tZ SCHED_FIFO2 w
H_TD_LECZ SCHED_FIFO3 .0,1 SCHED_FIFO3 _LkSP1|DKPSPN},by
tZ SCHED_FIFO2 D_LM;zc9d\;SkKPSP7?1XkzcDj<#C_TvICZ
AIX 4.3.3 0dsxf>#
SCHED_FIFO4
;*EH65`n 1,O_EH6D SCHED_FIFO4 wH`_LM;a@<10}KPDMEH6_
L#1!P*G10KPZ3x( CPU DMEH6_L;PJqZ,; CPU OKPD_EH6_L
@<#C_TvICZ AIX 5L™ Version 5100-01 + APAR IY22854 0dsxf>#

wH_TIC53wC thread_setsched() xPhC"RvTwC_LP'#;x,(}8(xLj6"v


setpri() wCI+_LhCI SCHED_RR wH_T;setpri() DwC_M setpri() D?j;X%d#

;PG)_P root (^DxLIT"v setpri() 53wC#;PG)_P root (^D_LI+wH_T|D


INN SCHED_FIFO !nr SCHED_RR#g{wH_T* SCHED_OTHER,r thread_setsched() S}
L+vTCEH6N}#

_LDw*EcGJCZ10I`vl=xLiID&CLr#b)&CLrI(}*dI`_La99C5
3PPOaD:X#

wHLrKPSP
wHLr,$;vyPMwH}VID_LDKPSP#

B<swThvKKPSP#

< 7. KPSP. Ce<r%XT>KMEH65D_LgNZ_EH65D_L.0(}KPSP#I\DEH656'


S 0 = 127,bkKPSPD\}* 128 1S`X#

x(EH6DyPIVI_LZKPSPP<P;(D;C#

34 T\\m8O
wHLrDy>IVI5eG_L#AIX 5.1 ,$ 256 vKPSP(128 vZ AIX 4.3 0T0D"PfP)
#
Z AIX 5.1 P,KPSPk?v_LEH6VNI\5D6'(S 0 = 255)1S`X#bv=(9wHL
r|]W7(Dv_LnHKP#wHLr^hQw;vj{DKPSP,;h*<G;vZk,CZkD3
;;tCsIm>Z`&DKPSPPfZMwH}KPD_L#

_LDEH65lYx51Xd|#VxDd/irZwHLrXcEH6D=(#;x,b";JCZL(
EH6D_L#

S AIX 4.3.3 *<,?v&mw<PT:DKPSP#T\$_P(fDKPSP5+G?vKPSPPyP


_LD\M#C?v&mw<PT:DKPSPIZ!VIxD*z"DF\eD&mw`FT#_L(#a
|SwrZtZ,;&mwP#g{r*m;&mw(;,ZKPKn|I4P_LD&mw)ODB~93
_LdCI4P,G4C_LMa"4;VI(;*PUPD&mw4I)#ZITli&mw4,(}gZ
C_LD&mwODPO).0;avV@<#

Z_P`vKPSPD`&mw53P,I\vV2dDEH69C#ZNN;v1dc<I\vVbVi
v:3vKPSP\9tI_L_PDEH6Hm;KPSP|P{#AIX P;)zFITfE1dDFF4
xPEH6=b,+Gg{*sPOqDEH6(}g,TZ51&CLr),rP;v{* RT_GRQ D73
d?,g{+|hCI ON,+<BC_L;Z+VKPSPP#ZCivB,+Qw+VKPSPTi4Dv
_L_Pn_EH6#bITDFPO}/_LDT\#g{+ schedo |nD fixed_pri_global N}hCI
1,TL(EH6KPD_LMECZ+VKPSPP#

KPSPPD_L=y}IZ|n vmstat dvDZ;PP4=#g{C&mw}%}bv},a{G?v&


mwOIKP_LD=y}#g{bv5sZ 1,b)_LXkH}V=|G9C&mw(bv}=s,T\
SYI\=wT)#

13_LF=KPSPD)K1(}g,1_LZ1d,D)25PXF(1),|aF/=_P`,EH6
5DSPPns;v_L.sD;CO#

wHLr&mw1d,
&mw1d,GwHLr*;=m;v_P`,EH6D_L.0,;v SCHED_RR _L\qCD1dD\
M#

IT9C|n schedo D!n timeslice,T 10 AkDv?vS1d,PD1SEE}(kNDZ 107 3D


:C schedo |nxPwHLr1d,^D;)#

":1d,";G#$D&mw1d?#|G;v_LZfYIm;_L!zDI\T.0IT\XDn$1
d#ZXF1do=j{1d,.0P\`=(I9_L'%&mwDXF#

==P;
C'xLZh*CJ53J41a-z;v==*;#b(}53wCSZrng13JObyDPO45
V#

P=V==:
v C'==
v ZK==

(ZC'==(&CLrM2mb)BD&mw1dw*C'1dZ;)|nDdvP43v4,}g,
vmstat"iostat M sar |n#(ZZK==BD&mw1dw*531dZb)|nDdvP43v4#

J4\m 35
C'==
ZC'#$rP4PDLrGC'xL#

ZbV#$rP4PDzkTC'4P==4P,R_PBPCJ:
v A/4CJxL(CxrPDC'}]
v ACJC'D>M2mD>xr
v 9C2mZf&\CJ2m}]xr

ZC'#$rP4PDLr;\CJZKrZK}]N,}G(}9C53wCdSCJ#ZC#$rPDL
r;\0lTmD4P73"ZxLrGX(4,B4P#

ZK==
ZZK#$rP4PDLr|,PO&mLr"ZKxL"yZKMZK)9(h8}/Lr"53wCMD
~53)
#

bv#$r5>TZK4P==4Pzk,_PBPCJ:
v A/4CJ+VZKX7Ud
v ZxLP4P1A/4CJxLxrPDZK}]

ZK~qXkC4CJxLX7UdPDC'}]#

ZC#$rP4PDLra0lyPLrD4P73,r*|G_PBPXw:
v |GICJ+V53}]
v |GI9CZK~q
v |Gb\yP2+T<x
v |G4PZ&mwX(4,B#

==P;
C'==DxL9CD53wCJm(}C'==wCZK/}#1SrdSXwC53wC4CJD/};
cILrhFba),|Ga)TYw53/}DCJ#

==P;&k vmstat Ddv(cs P)M sar(cswch/s)|nP4=DOBDP;`xV#Z10KPD_


L;,ZC&mwOH0KPD_L1avVOBD*;#

1BPN;ivvV1wHLr4POBD*;:
v _LXkHr3vJ4(T8),HgEL I/O"xg I/O"/_rx
v ;vO_EH6_L;=Q(GT8)
v _LQ-CjK|D1d,((#G 10 ms)
#

OBD*;D1d"53wC"h8PO"NFS I/O MZKPNNd{n/<4w531d#

ibZf\mwT\
ibX7Ud.VIN#?NDs!G 256 MB,|GibZfX7UdP;vZSD?V,}]TsI3d
=CUd#

xLT}]D07\&4N(rTs)D6pxP\m,yTNHITZxLd2m,2ITxP(E,$#
}g,xLI2mzkN+5P@"M(CD}]N#

36 T\\m8O
5Zf\m
VMM Z5Zf\mPpEX*wC#

ibZfNVIL(s!D%*(F*3) #1!3fs!G 4096 VZ#3)532'Vs3f,(#;\(


}53wC shmat CJ#NPD?3Zh*.0I;Z5Zf(RAM)P,rf"ZELO#,y,5Zf
2IT.VI 4096 VZD3f!#VMM DG+G\mVd5Zf3f!"RbvLrTibZf3fD}
C,b)3f10;Z5ZfPr9;fZ(}g,1xLZ;N}Cd}]ND3;31) #

r*ZNNx(1L9CDibZf}?I\H5Zfs,yT VMM Xk+`?f"ZELO#ST\D[


c44,VMM P=vT"T"D?j:
v n!/9CibZfD\&mw1dMELxmz[
v n!/13JODl&1dz[

ZzYb)?j1,VMM ,$;v3f!DUPPm,|ICZ9%13JO#VMM 9CK;v3ff;


c(47(10&ZZfPDD)ibZf3*+|GD3f!XB8(=UPPmP#3ff;c(9CK
8vzF:
v ibZfNVI@CNr$wN#
v ibZfNVI|,FcZfrD~Zf#
v zYZCJ1}p13JODibZf3#
v 13JOVIB3JOrXBw3JO#
v Z?vibZfNP,$;vXBw3JOJD3FE"#
v C'IwP50l3ff;c(Da{#

UPPm
VMM ,$;vUP3f!D_-Pm,|CZbv13JO#

Zxs`}73P,VMM <{Xk(}XB8(IKPxL<PD;)3f!4mS=UPPmP#h*X
B8(3f!DibZf3I VMM D3ff;c(xP!q#VMM P5v(KXB8(D!D}?#

VCNk$wN
VCNG@CTD,x$wNG]1D#

@CND3fZELODf";CG@CTD#|,}]rI4PLrDD~3d=@CNP#r*@CND
?;3<P@CDELf";C,yT13f;|DR;\YtZ5ZfP1,VMM +C34X=Gv;C#
13f;!qEC=UPPmP1,g{|;P|D}r;h* I/O Yw#g{s4YN}C=C3,G4M
S|D@CELf";CAk;vB1>#

$wNG]1D,|GvZIxL9C1EfZ,R;P@CDELf";C#xLQ;M}]xr3d=$
wN,b;cMZKD>N"ZK)9D>N"2mbD>NM}]N`,#1$wND3f;\#fZ5Z
fP1,|G2Xk<PELf";C#ELw3UdMGCZbv?D#

BPe<T>3)`MDNM|GD3fZELOD;C.dDX5#|9T>K3fZ5ZfP15J((
P)D;C#

J4\m 37
< 8. @CM$wf"N. Ce<T>3)`MDNM|GD3fZELOD;C.dDX5#|9T>K3fZ5ZfP
15J((P)D;C#$wNG]1D,bb6E|GvZIxL9C1EfZ"R;P@CDELf";C#xLQ
;M}]xr3d=$wN,b;cMZKD>N"ZK)9D>N"2mbD>NM}]N`,#1$wND3f;\
#fZ5ZfP1,|G2Xk<PELf";C#ELw3UdMGCZbv?D#

@CN`MIx;=.V#M'NCZ3d6LD~(}g,}(} NFS CJDD~),|(6LI4PL


r#M'ND3f(}xg#fMV4=|GD@CD~;C,x;GZ>XELw3Ud#U>MSYNG
XkT/|BD@CN#g{!qS5ZfP}%(wv3)D3f4TZ3vU>NrSYN,G4Xk+
|4=ELw3UdP,}G|&Z;VJm|a;(4=|D@CD~;C)D4,#

FcZfMD~Zf
FcZf2F*Fc3f,|ItZ$wf"wNrLrD>(I4PD~)NPD3fiI#

D~Zf(rD~3f)Id`3fiI#b)(#G4T@Cf"wP@C}]D~D3f#

3ff;
1UPPmPICD5Zf!}?uY1MawC;v3ff;w(stealer)#3ff;wZ{v3f!m
(PFT)PF/,0RIf;(steal)D3f#

PFT P|,;)j>C4m>D)3Q-;}C,D)3Q-;^D#g{3ff;wv=;vQ-}CD3,
|;af;bv3xG*C3XBhC}Cj>#ZB;NSk(3ff;w)-}C3R}C;T4tC
1,|c;f;#uN(}14;}CD3fa"4C=f;#

^Dj>m>C3xkZfsOfD}]Q-Dd#13f*;f;1,g{hCK^Dj>,G4Zf;C
3.0xP3fwvwC#tZ$wND3f4kw3Ud;x@CNPD3f4=ELO#

< 9. 3ff;>}. Ke<S}vmP*!xI#Z;vmG_PDPD3f!m(PFT),||,5JX7"N`M"


}Cj>M^Dj>#Z~vmPvUPPm,||,yPUP3DX7#ns;vmzm}%yPUPX7snUC=
D3f!m(PFT)#

}K3ff;Tb,c(9I(}9C;v|,n|13JOj6Dz7:ex4zYB3JO(Z;N}
C)MXBw3JO(}CQ-wvD3)#;s|IT!?=bD~(@C}])3fDwvMFc($w
f"wrLrD>)3fDwv#

38 T\\m8O
1xLKv1,|D$wf"w"LME"R|DX*Zf!2EX=UPPmP#;xICxLr*DNN
D~I#tZZfP#

g{_LZ%&mwOKP,G43ff;I1SZ_LwCrPxP#Z`&mw53P,3ff;(}Z
KxL lrud xP,Zo=P5 minfree 1,CxL;VI= CPU P#S AIX 4.3.3 *<,ZKxL lrud
G`_LD,?vf"XP;v_L#y] CPU }?M RAM s!+5Zf.VI=ys!Df"X#53
PZfXD}?I(}KP vmstat -v |n47(#

I9C vmo -r -o mempools= <number of memory pools> |n|D+Z53}<1dCDZfX}#vmo


|ndvPD minfree M maxfree N}D5G?vZfXD minfree N}.MT0 maxfree N}.M#

XBw3
13JO*4GB3JO*4GXBw3JO#g{;Pn|}C3fDG<D0,avV;vB3JO#x
vVXBw3JOG8;v*@dn|Q-}CD3YN;}C,+IZC3ZONCJsQ-;f;(I\
4=ELO)xZZfPR;=|#

mkD3ff;_T(}\Gf;G);aYN}CD3f!xj+uYXBw3JO(YhPc;D5Z
f)#rxXBw3JO}G3ff;c(P'TD;v`4@bj<,c(+51;XCD3f#fZZf
P,Sx5MK\e I/O hs"1ZXDFK53T\#

*KVe;v13JOGB3JO9GXBw3JO,VMM ,$;vXBw3z7G<:ex,||, N v
n|13JOD3fj6,dP N GZfI#tD!}#}g,512 MB Zfh*;v 128 KB DXBw3
z7G<:ex#Z3fwx1,g{|Dj6IZXBw3z7G<:exPR=,r+|F*;vXBw
3#VMM 9ITVp@@FcZfXBw3JMD~ZfXBw3J,;h*?V`MDZf,$XBw3
JOF}4I#?N3ff;c(KP1<+XBw3JKT 0.9,byIHz7XBw3n/|P&X43n
|DXBw3n/#

VMM P5
8v}VP5(eK VMM D?j#1,vb)P5PD;v1,VMM aI!J1DYw+Zf4,V4=
^(6'Z#>ZV[II53\m1(} vmo |nxP|DDP5#

UPPmP3f!D}?\BPN}XF:
minfree
UPPmPIS\D5Zf3f!Dn!}?#1UPPmDs!MZbv}1,VMM *<f;3
f#|VxT!3f,1=UPPmDs!o= maxfree#
maxfree
(} VMM 3ff;UPPmIo=Dnss!#1xLU9"ME|GD$wN3fr>}d3f
ZZfPDD~1,a{GUPPmDs!I\a,}bv}#

VMM T<#VUPPmDs!sZrHZ minfree#113JOr53hs<BUPPms!MZ minfree 1,


3ff;c(M*<KP#IZ8v-r,UPPmDs!Xk#VZ3v6p.O(1!5G minfree) #}
g,Yw53D3r$!c(?Nh*8v!CZ?v}ZxP3rA!DxL#xR VMM Xk\bZYw
53TmZ?zz@x,g{;Pc;DUdA!h*ME3f!D3MI\vVbViv#

BPP5TYV}DN=m>#|Gm>ID~3f(GFcND3f)<PDzw+?5ZfPD;?V#
minperm
g{ID~3f<PD5ZfDYVHMZbv6p,r3ff;c(Hf;D~3f2f;Fc3
f,x;\XBw3J#

J4\m 39
maxperm
g{ID~3f<PD5ZfDYVH_Zbv6p,r3ff;c(vf;D~3f#
maxclient
g{ID~3f<PD5ZfDYVH_Zbv6p,r3ff;c(vf;M'z3f#

1ID~3f<CD5ZfDYVH&Z minperm M maxperm N}5.d1,VMM (#;T!D~3f,


+Gg{D~3fDXBw3J_ZFc3fDXBw3JD0,Fc3f2a;T!#

3ff;c(Dw*b<G7#Fc3fC=OmD}v#}g,TZI\a\lYN9CDLrD>3,3
rA!$D}]D~=ZfP&C;a9|G*'#TP5MXBw3J9C3ff;c(I7#OmXT}
b=V`MD3f,+TT"+rP{ZFc3fD;=#

VMM Zf0kXF$_
xLh*5Zf3fEITKP#13xL}CELODibZf3f1,IZC3*4Q-wv*4S4A
!},yTXkwxy}CD3f,xR;c45,IZXkwv;vr`v3f(g{;f;D3Q-v}
^D),Sx}p I/O w?"SYKxLDxH#

Yw53(}3ff;c(T<SG)n|;I\}CD3fPT!5Zf#;vI&D3ff;c(JmY
w53ZZfP#Vc;DxLGn/D,Sx#V CPU D1&#+GZZf:yD3)6pO,;POC
Dr!3fIwv=ELO,r*;C.s|G<aI;in/DxLXC#bViv!vZBPrX:
v 53PDZf\?
v &mw}?
v ?v&mwf1dd/DZfhs
v 3ff;c(

vVbViv1,avVVxD3fwxMwv#bVivP53_$#53_$<BTw3DELxP;O
D I/O Yw,Sx<B?vxL8u;;VIMv=;v13JO,a{G;P;vxLPNNX*Dx9#

53_$n_F5&D=fG,d;I\G$w:XP;vL]xfzD_e(Hg3v53PyPDC'v
IZ,;k4B Enter |)%"K53_$,+53I\aVx_$;*`$1d#

Yw53P;VZf0kXFc(,|lb53N1a*<_$,;s+n/xL]R"+BxLD*<SY
;N1d#PevN}*Cc(hCHJM6'#Z;vsD$w:X6'Z,b)N}D1!5Q-!q*
“JO2+”#Z AIX V4 P,1!ivB,Zf0kXFZICZf!\MsZrHZ 128 MB D53OG
{CD#

Zf0kXFc(
Zf0kXFzF?kxP;N@@,4GqPc;ZfICZn/DxLi#1lb=Zf}?9CDiv
1,c]R;)xLTuYn/xLD}?,Sx5MKZf}?9CD6p#

1;vxL]R1,|DyP_LZo=I]R4,12<+?]R#]RxLD3f"LdC^'"RI3
ff;c(wv,byMEKc;D3f!TJm`BDn/xLxPB%#ZVPxL]RD1ddtZ,
B(DxL2]R,Sxh9BD$wxk53#]RDxL;aXB$n,1=-}K;N,xDdt1d
RZbvdtP;aP1ZD53_$ivvV#;)bv2+dt1d}%,]RxLPD_Lcp=XB
$n#

Zf0kXFN} schedo 8(TB5:


v 53Zf}?9CP5(v_repage_hi)

40 T\\m8O
v 2+dtyhDk}(v_sec_wait)
v %vxLDZf}?9CP5((}CP5I+%vxL^(I]Rr!xL)(v_repage_proc)
v 1xL]R1n/xLDn!}?(v_min_process)
v xLXB$nsxPn/yAY-}Dk}(v_exempt_secs)

PXhCMw{b)N}DE",kNDZ 126 3D:9C schedo |nxP VMM Zf0kXFw{;#

TZ0fD;kdt1dPU/=DyPOvH?5,wHLr(xL 0)?kxP;Nli,"7(G]R
xL9G$nxL#g{*]RxL,r?vIN} -p M -e bTv4{O]Ru~DxL;jG*]R#
1GvxLSB4ZC'==BSU CPU 1,M+|]R(g{;byvMI\9n/xL}?uY=5 -m
.B)#&CC'==<rI9Z4PX|53n/ZdxL;PJq*TmD{fx]R#ZsLD;kd
t1dZ,g{53_$<rT;zc,G4zcI -p M -e hCDu~Dnbr!xL;jGI]R#g
{wHLrs47(Q-zcK2+dt<rRxL+*XB$n,G4?kaP;(}?D]RxL;Ek
KPSP($n)#

v(XB$n]RxLDrX:
1. EH6
2. xL;]RD3r

]RDxL;\"L+?XB$n#XB$nxLD}?5I;v+=!q,C+=6pv11n/xLD}
?,;sXB$nC}?D 1/5 DxLr_(}XB$n9n/DxL}ZsZB^Dy!O%w]v#bv
wwD_T<B?kvSKs< 20% D`LrhF?H#C_TDb<G*K92+dtaxsDZ;kZX
B$nJ`TOM,xZs4D8kP9XB}kJH(vS#g{ZXB$nxLD}LPYNvVZf}
?9CDiv,ra"zBPiv:
v XB$n#9
v jG*XB$nDxL;YNjGI]R
v y]OvfrPnbxL;]R

w3Ud[DVdMXU
Yw53'V}V$wf"Vd=(#

b}V$wf"DVd=((2F*w3Ud[)gB:
v sVd
v $HVd
v SYVd

":w3Ud[vZxL(;G_L)U91rI53wC disclaim() ME#w3Ud[;\I53wC free()


ME#

sVdc(

Z_PsVdc(D AIX 4.3.2 T0Df>P,v1Z;NCJibZf31Ea*C3Vdw3[#MG5


}Z4PDLrZ;NTC3DZ]PK$#

m`Lr9CsVdD>6G*nsDa9VdibZfX76';sv9CM5Jivyh}?;y`Da
9#ibZfX76'PS;aCJ=D3S4;h*5Zf!rw3Ud[#

J4\m 41
C<uD7|,3VLHDgU#g{yPKPZ3zwODLr}C,1v=nshsDiv,w3UdI
\aD!#by3)LrM;\LxjI#

$HVdc(

Yw53PZ~Vw3Ud[VdD=(JZ20Div,bVivG;VI\ivr_;\jIDz[I\
G#_#Cc(F*$HVdG\J1D,|ZVdibZfX76'1M<BVdJ1}?Dw3Ud[#
}g,I(}S}L malloc() 45V#g{;Pc;Dw3Ud['VS}L malloc(),MhC;vmsz
k#$HVdc(DwCgB:
# export PSALLOC=early

C>}9yP+4ZC73P4PDLr9C$HVd#x10ZKPD shell ;\0l#

w*r*f0=$HVdDw3UdDs!,yTT\Vv1aTCc(PK$#g{*G)LrhC$HV
d,G4w3UdhsI\vSm`6#yT(#Fvw3Uds!AYG535ZfD=6,xTZG)9
C PSALLOC=early D53rFvAYG5Zfs!DD6#B5Ob;G;vpc#9hVv$w:XDi
bf"whs"Vdw3Udkd`J&#w*;v}S,g{C$HVdD0,AIXwindows ~qwZKP1
;Nh* 250 MB Dw3Ud#

19C PSALLOC=early 1,C'&C(}$HVdZf"C sigaltstack /}+ZfhCIQ;,4*s


fDEE SIGSEGV hC&mLr#498(K PSALLOC=early,g{;Pc;Dw3UdRLrT<)9
Q;,rLrI\SU= SIGSEGV EE#

SYVdc(

Yw53w3Ud[VdDZ}V=(S AIX 4.3.2 *<pM1!*“SY3fUdVd”(DPSA)_T,|S


Yw3UdDVd1=XkwvC3,byDa{G;aVd^CDw3Ud#bV=(\Z!s?Dw3U
d,2b6EELUdDZ<#

Z;)53P,49yP3fDCJ<Q-"z,+TPI\;h*w3Ud#bVivZ_P,s? RAM D
53O\#{#;x,g{CJCO`DGibZfx;GICD RAM,bI\<Bw3UdD}?9C#

*{C DPSA R#t“s3fUdVd”_T,kKPBP|n:


# vmo -o defps=0

*$n DPSA,KPBP|n:
# vmo -o defps=1

(#,DPSA ITDF53T\,r*Z13JOs\bKVd3fUdD*z#g{9C DPSA,w3Ud


h8h*DELUdOY#

PXx;=E",kNDZ 134 3D:3fUdVd;MZ 80 3D:w3Ud<VMs!;#

2Lf"\mT\
Yw539CcNa94\m2Lf"#

?v%@DEL}/wF*;vomm(PV),|GwP;v{F,}g /dev/hdisk0#g{ommZ9C,
G4|tZ;vmi(VG) #miPyPomm.VI`,s!(g{mi|,Domm!Z 4 GB,r1!5
G 4 MB;TZ|sDELC5* 8 MB r|`)DomVx(PP)
#

42 T\\m8O
y]UdVdDC>,?vommIVIevxr#PX|`E",kNDZ 167 3D:ommOD;C;#
y]EL}/w\]?D;,,?vxrPomVxD}?2;,#

< 10. L(EL}](G5q)Di/. Ke<T>K.VI;vr`v_-mDommDcNa9#b)Vxr_-m


P|,xP?<a9DD~53,?<P|,P%@DD~#D~M4Zf"iJOE@y|,D;)iP,b)i(#
";ZS#1}];A},BD}]D~4kUiRb)UifzV"ZiJD`vE@O1azzELVN#

Z?vmiP(eK;vr`v_-m(LV)#?v_-mI;vr`v_-VxiI#?v_-VxAYT
&;vomVx#g{8(*_-mFw5q,Mh*VdnbDomVxf"?v_-VxDnb1>#d
;_-VxG,x`ED,+WcDomVx;X,xrZS#

_-mI*m`53C>a)~q(}g3fwH),+G?v]I#f53}]rC'}]rLrD_-m
#?v JFS I3s!(4096 VZ)iDXiI#1}]
<|,;v%@DU>D~53(JFS rv?M JFS)
*4k3vD~P1,a*GvD~Vd;vr`vnbDi#b)iKK.dMkH0VdxbvD~Dd
{i.dI\ZS2I\;ZS#

*KcZ5w,O<T>K;vD~53PI\"zDcb(+I\;Gncb)iv,bvD~53Q-9
CK\$1dR;PXBi/}#D~ /op/filename omG<Z\`iO,b)iZom;CO`%6k#3
rA!bvD~+<Bm`Q1D0@Yw#

d;Yw53DD~ZEnOG;v3rRZSDVZV{.,+om5VI\G#;,#Z;vD~53P
T_-mD`N)9MVd/ME/YVdn/I\vVELVN#1;vD~53DICUdIs?!iU
diI,G4|GIi,D,M;I\ZZSDiP4vBDD~#

Z_Hi,/DD~53PCJD~I\<Bs?D0@YwMO$D I/O l&1d(0@H}1dv( I/O


l&1d)#}g,g{3rCJD~,G4Is?c:V"D!iiIDD~<Vh*D0@YwHI;v
r8vsDZSiiIDD~<V*`#g{fzCJD~,G4c:V"D<VHD~it\`,D<Vh
*|$D0@1d#

1D~:fZZfP1,D~<VTZ I/O T\D0lu!#ZYw53Pr*;vD~1,|;3d=ib


ZfP;v@C}]N#bvNzmCD~Dib:ex;D~Di1S3d=ND3fP#VMM \mN3
f,y]h*A!D~i=N3fP(1|G;CJ1) #P8V73a<B VMM +;34X=ELOD~
P`&Di;+Gg{33n|Q-;CJ,VMM (#aZZfP#tC3#rK,51CJD3crZZ
ZfP#tO$1d,yT;h*omELCJMIzcT`&iD_-D~CJ#

3)1r,C'r53\m1I!qZ_-mPXBi/D~<VT0ZommPXBi/_-m<V,Sx
uYELi,T0|yHXV/ I/O \:X#Z 149 3D:_-mMEL I/O T\;P|,PXlbM@}E
L<V0i,JbDx;=j8E"#

J4\m 43
T]fZfD'V
AIX 4.3.3 M AIX 5.1 I+Zf3;1#tZ5ZfP#bVzFF*L(Zf#

]f3vZfxr{9w3Lrf;]fZfxrsfD3#(eZ53UdrC'UdDZfxr<IT]
f#Zfxr]f.s,CJGvxr;a<B13JO,1=CxrZs4!{]f#1;?VZK#V]
f1,m`xrGIw3D,vvZ;CJD,1Ea]fp4#

]f?VZfDEcG,1CJ;v]fD3f1ITlwC3x;h*4P3ff;c(#+`D]fZf
3fax4:f0l,4I\avS4]f3fDw3n/,b+9T\B5#

*w{]fZf,IT9C|n vmo,Zt/18(;)3f(CZ]fZf#BPj>a0l AIX \m]


fZfD==:
maxpin
8(IT]fD5ZfDnsYVH#
v_pinshm
g{4P shmget() D&CLr+ SHN_PIN 8(*j>D;?V,r+ v_pinshm N}hC* 1 +
92mZfNPD3I VMM L(#1!5* 0#

44 T\\m8O
`&m
^[N1,%&mw>,DKPYH<fZE<uOD^F#g{%&mw^(nKzbX&m53D$w:
X,;Vl&G9C`&mw4bvbvJb#

bVl&GqI&;vv!vZ53hF_D<ul7LH,9!vZ$w:XGq~S`&mXF#MKD
NqxT,g{NqG&p;vbQg0EkDtP,vSK12m;'*;vCwb,+GYgNqG*5
D0,bVv(GqP'M5C3IK#

g{(iS;v%&mw53(F=;v`&mw53D?jG*KDxT\,rBPu~XkI":
v $w:X\&mw^F"RQ-9C|D%&mw53%M#
v $w:X|,`V&mw\/D*X,}gBqr_4SFc,b)YwIT,1"RwT@"X4P#
v VPD%&mw;\}6,2;\Im;v\?dcD%&mwzf#

d;}#ivB;dD%_L&CLrZ3v`&mw73P\}7KP,+|GDT\##aPbbDd
/#(F=`&mwITDF53DLB?,"\Dx4SD`_L&CLrD4P1d,+G\Y\Dxv
pD%_L|nDl&1d#

*S;v`&mw53qCnQT\,h*T`&mw53@PDYw53M2~4P/,PyKb#

TF`&mwEnMe5a9
TZvS534STDNNd/,*KqCnKzbDYwMT\,9C`&mwzzK;)hF1Xk}p
"bDBn#

nbD4ST9C2~/m~(bD6'|s,"Rh*H%&mw53|*t\D2~/m~hF-w#h
Fl&M(bD;,iO9C`&mw53De5a9|S`y/#

`&mD`M
fZ`V`pD`&m(MP)53#

^2m MP
&mw.d;P2mD?V(?;v<PT:DZf,_Y:fMEL),+G|GG%*D#b``&m2
F*?/:#

?v&mw<G;vj+@"Dzw,KPYw53D;v1>#(} LAN ,S1,&mw.dGI"nO


D#x(}*;w,S1,&mw.dGt\nOD#&mw.dD(E(}{"+]xP#

by;v53DEcG|_P\CDIluTM_ICT#x1crGC53G;v;*Kl$D`L#M
({"+M)
#

2mEL MP
2mELDEcG#tKl$D`L#MD;?V(EL}]GI07M,xD,xZfr;G),xRk2
mZfD53`H,bV53|]W5V_ICT#1cGIZZT2m}]xPomM_-CJ1fZ?
1,|DIluT\=^F#

&mw5PTmDZfM_Y:f#&mw"PKP"2mEL#?v&mw<KPYw53D;]1>,"
R&mw.dGI"nOD((} LAN ,S)
#&mw.dD(E(}{"+]xP#

© Copyright IBM Corp. 1997, 2006 45


2mZf/:
;v2mZf/:PDyP&mwPT:DJ4(wf"w"ELM I/0),"R?v&mwKP;]Yw53
D1>#

&mw.dGt\nOD((};v*;w,S)
#&mw.dD(EG(}2mZf5VD#

2mZf MP
yP&mw(};u_Y\_r_;v*;wZ,;zwPt\nO#&mw2m,yD+VZf"ELM I/0
h8#;P;]Yw53D1>gyP&mwKP,"RYw53XkhF*\{CbVe5a9(`_LY
w53)#

SMP P8vEc:
v |GGvSLB?D;V.cD=(#
v IZYw53IyP&mw2m,|Ga)K;v%@D533q(WZ\m)
#
v |GT;v%@DJb&C`&mw("P`L)
#
v :X=bGIYw535VD#
v bV%&mw(UP)`L#MICZ;v SMP P#
v TZ2m}]45,|GGIluD#
v yP}]IIyP&mw07,"RI2~`S_-#V,xT#
v IZ(E-I+V2mZf4P,Z&mw.d(E;X9C{"+Mb#
v |`\?DhsI(}r53mS|`&mw4bv#;x,Z;v SMP 53omS|`&mw1,zX
khCXZT\v?DV5Z{5#
v VZ=4=`D&CLrM$_<IT9C#s`} UP &CLrITZ SMP e5a9PKPr_;F2
= SMP e5a9P#

SMP 53P;)V^T,gByv:
v IZ_Y:f`XT"x(zF"2mTsMd{Jb,IluT\=^F#
v h*B<u4{C`&mw,}g_L`LMh8}/Lr`L#

"P/&CLr
9C=V=(PDN;VI+&CLrZ SMP OxP"P/#
v +3=(G+&CLrVb*`vxL#b)xL9CxLd(E(IPC)=(xP(E,}g\@"EE
?r_2mZf#Xk\;h{xL9dH}B~D"z(}g4Td{xLD{"),"RxLXkC
`FxD+w-wT2mTsDCJ#
v m;V=(G9CkT UNIX®(POSIX)_LDIF2Yw53SZ#_LMxL;yfZ-wDJb,"
P`FD&mzF#rK;v%@DxLIT,1P\`_LKPZ;,D&mwO#-wb)_L"R
9CT2m}]DCJrP/G*"_DpN#

Z"P/;v&CLrD1r,<G_LMxL=_wTDEF"Rv(9CDV=(#_LI\HxLl,
"R|TZfD2m2HO]W#m;=f,xLD5V|]WV<=`vzwr_/:P#g{;v&CL
rh*4(r_>}B5},r_La|l(ZIzxLP*z|s)#Md{&\xT,_LD*zMxL
n;`#

}]rP/
NNII`v_LAr4Df"*XZLrKPP<I\Dd#

46 T\\m8O
(#,bT`LrhF73T0`&m73<GI"D,+G`&mwDvVT=V==vSKbV"bBn
DwCrMX*T#
v `&mwM_LD'V9C`4Z_LP2m}]D&CLr_P|}&M|]W#
v ZKY2;\(}r%X{CPO4bvrP/Jb#

":*K\bzzOXJb,2m}]DLrXk2EC,TT}]xP.PCJ,x;G"PCJ#Z;v
Lr|B;v2m}]n.0,Xk7#;Pd{Lr(|(|>mZm;v_LoKPDm;1>)a
DdCn#(#AYwIT"PX4P#

C4\bLr%`IEDw*zFGx#xG;VisEn,|zmTCJ;vr`v}]nDmI#x(M
bxDksG-S6D;2MG5,|GD5V==*:da{H;\PO2;\`&mwCJD0l#yP
CJ;v2m}]nDLrZ&m|.0XkHqCk|`XDx#g{bvxQ-Im;vLr(r_m;
vKP,;LrD_L)<P,rksDLrXkFYCJ,1=xdCIC#

}KH}xy(D1d.b,rP/2vSK;v_LI*;IVI_Ly(D1d#1_L;IVI1,d
{_L\I\a9bv;IVI_LD_Y:f_7;f;,b+<B_LnsqCx";VI1ZfH}1
dI>vS#

Yw53DZK|,\`2mD}]n,yT|XkZZ?xPrP/#rKrP/SYuAI\Z;v;k
d{Lr2m}]D&CLrP"z,r*ICLr9CDZK~qXkrP/2mDZK}]#

x
9CxVdMMEZ?Yw53Zf#

PX|`E",kNDKbx(#

xD`M
*Em~ypa/1(OSF/1)1.1 Dx(=(;w*;v AIX D`&mwx(&\#M9C#

;x,IZ53GI@<MIw3D,T OSF/1 1.1 x(#MvSK;)Xw#r%M4SDx<GI@<D#


;v_LZ"TqC;v&4,Dr%x12IT/_,g{xDyP_10";ZKPD0#mb,1&m
wZr%xOT}3N1d?(K1d?*536'd?).s,r%x+d*]_x#

r%x:

Yw53Z 4 fPD;vr%xG8;vZX(u~B/_T@9;v_L^^ZT}DT}x#

r%xGI@<D,bb6E;vZK_LZVP;vr%x1,bvxIT;m;vEH6|_DZK_L
@<#Z`&mw53P,r%x#$_L - PODYgN,|XkkPOXFaO9C,TcZ4P&m
wZ?MZ;,D&mw.drP/4P#

Z%&mw53P,POXFMQ-c;K;;PX*9Cx#r%xD?DG#$_L - _LM_L - P
ODYgN#r%xg{&Z;vPO&mLrP,|ZxdCICT0a;1T}#|GP=V4,:x(
rbx#

4Sx:

AIX PD4SxGA4x,CZ#$_L-_LYgx#b)xGI@<D#

4SxGT}x,|GaZX(ivB/_#1!ivB,|G;G]iD,+GZ lock_set_recursive() Z
K~qPITdI]iD#|GP}V4,:@<4"2mArbx#

`&m 47
x#H
;vZ`&mw73P$wDLr1Xkv(T2m}];(*4(`Y%@Dx#g{;P;vx4rP/
{v2m}]nD/O,r`H.B\I\vVxyC#c:9CxDfZx53LB?SKO^#

g{?;v;,D}]n<PT:Dx,r=v_LyCbvxDEJ`T45MHOM#;x,?;v=S
Dx(MbxwC<a{D&mw1d,"R`vxDfZ9CI\"z@x#nr%D@xivgB<y
>,dP_L 1 5Px( A "R}ZH}x( B#,1,_L 2 5Px( B "R}ZH}x( A#b=
vLr<@6C;OarF@xD unlock() wC#(#T@xD$@k)G(";v-i,y]C-i,yP
9C;v8(Dx/ODLrXk<U4Uj+`,D3rqC|G#

< 11. @x. O<y>G;v@x,dP{*_L 1 DP5Px( A,"R}ZH}x( B#,1,{*_L 2 DP5


Px( B,"R}ZH}x( A#b=vLr_L<@6C;OarF@xDbxwC#

y]ESm[,;vJ4PCC=Y,*C=|D=yH}1dM=$#bVX5GG_TD;g{xDv}
-6,=yH}bvxD1dMH-4D=69*`#

uYTxDH}1dDnP'=(GuYbvxy#$D6's!#BfG;)<r:
v uYTNNxDks5J#
v ;x(CJ2m}]Dzk,x;G;vi~DyPzk(b+uYxDVP1d)
#
v ;x(X(D}]nra9,x;G{v}L#
v <U+xMX(D}]nra9X*p4,x;GM}LX*#
v TZsD}]a9,*a9D?;*X!q;vx,x;G*{va9!q;vx#
v 1VP;vx1,S;4P,= I/O r_NNd{h{n/#
v g{zTzi~PD,;}]P`vCJ,kTE+|GF=;p,Tc|GIT|,Z;vx( - bx
YwP#
v \b+=QDiv#g{zZ;vxB^DK;)}],"R;C;(*3KzvKb~B,rZ+<=
Q.0kMECx#
v g{Xk,1VP=vx,rnsksGvn&Dx#

m;=f,}8#H+vSTxDksMMED5J,rxavSnbD8n#zXkZ}8M}V#H.d
R==b#nQ#H;C;(}TiMmsR=,b2G;v MP 53PDnst=.;#B<T>KxDL
B?M#H.dDX5#

48 T\\m8O
< 12. LB?k#H.dDX5. bv<G;vr%D+xja<m#91ar y am>LB?#.=ar x am>#
H,XExjj_rbF/1#HS+8=VZxd/#;uS$D4{z_mwK#HTLB?DX5#fE#HS+
8=VZ,LB?p%vS=;vns.=,;s*<}}B5#bmw*Ko=nsLB?,XkZ#HO[T#

x*z
ksx"H}xMMEx<avS&m*z#
v ;v'V`&mDLr\GxP`,Dx(Mbx&m,49|GZ;v%&mwoKPr_G;v`&
mw53oTZbvxD(;9C_#
v 1;v_Lks;vIm;_LVPDx1,"vksD_LI\aT};ar_CZ/_4,,g{I
\D0,aVIm;v_L#ba{D&mw1d#
v c:9CxDfZx53LB?SK;vO^#}g,g{;vx(DLr( 20% D4P1d4VP;v
%bx,bvLrn`;Pev5}\,1KP,;\53oP`Yv&mw#B5O,49;Pev5
},|G2\I\@6;a+7,=,Tb%`H}#
(NDZ 52 3D:`&mwLB?IluT;)#

H}x
1;v_Lh*m;v_LQ5PDx1,C_L;h{"RXkH=xdCIC*9#

P=V;,DH}==:
v TZ;;VP\L1dDx45,T}xG\JOD#|JmH}PD_L#Vd&mwX4li3v@
-7(T})oDx(;,1=xdCIC#T}<B CPU 1d(ZKrZK)9x(D1d)vS#
v /_xJOZI\a;VPO$1dDx#_La/_=xIC*9,1xdCICs,|a;EX=K
PSPo#/_<B|`DPC1d#

H}\a5M53T\#g{9CT}x,&mwG1&D,+G|;GZvPC&(;GZ*LB?v
&)
#g{9C/_x,a<BOBDP;MVID*zT0f.x4D_Y:f4|PDvS#

Yw53*"_GITZ=V`MDx.d!q:ZH}xdCIC1JmxLT}M/_D%br%x,M
ZH}xdCIC1ITT}Mh{xLD4SA4x#

;)<(\mE9CxDfr#;\G2~9Gm~<;P5)r#iDzF#!\9CxQ-9C AIX V4
G“MP 2+”D,+*"_G9GPpN(eM5VOJDx(_T4#$dT:D+V}]#

_Y:f;BT
ZhF`&mw1,$L&GT#$_Y:fD;BTxhK`1`D"b#{G!CKI&;+G_Y:f
;BTGTT\*z[D#

RGh*mbbvb\%wDJb:

g{?v&mw<P;v43Zf;,?V4,D_Y:f,MI\aP=vr|`_Y:f5P`,_7D
1>#2PI\G;vx(D_7a|,;9;vIx(D}]n#g{=v_LTG)}]nwKJ1Dr

`&m 49
P/|D,a{I\G=v_Y:f<T;,D,msf>DZf_7xfU#;d05,53D4,;Y;
B,r*53|,K&CG;vX(ZfxrDZ]D=v;,f>#

T_Y:f;BTJbDbv=8(#|(Z_7^D.s,}K;u_7Tb,9yPX4_7<''#!
\2~9C`S_-9_7'',;PNNm~I$D0,NN_Y:f_7Q-''D&mwIZf.x4
DSY,+aZB;N07=C_71vV_Y:f4|P#

`SGC4bv_Y:f;BTJbD_-#&mwPD`S_-?N^DKd_Y:fPD;vVs,aZ
\_Oc%;u{"#`S_-2Z\_O`S,0R4Td{&mwDbV{"#

1;v&mwlb=m;v&mwQ-|DKfZZ|>m_Y:fZD;vX7D51,`S_-a9C|
T:D_Y:fPDCn''#b;F*;f=''#;f=''aQ&mw_Y:fPD5Q-^'K,&
mwXkZp&(Zfrd{_Y:f)0R}7D5#IZ;f=''vSK_Y:f4|PJ,x`S-
ivSK\_w?,rxbv_Y:fD;BTJba5MyP SMP DT\MIluT#

&mwW5TMs(
&mw`FTG8+;v_LVI=H0KP|D&mw.ODEJ#T&mw`FTD?wLH&f_LD
_Y:f$w/s!1Sd/,xfT|O;NVIT4D1d$L4rd/#AIX V4 VIw?F5V&m
wW5T,rKW5TIYw53~=jI#

g{;v_LPOsVXBVI=,;v&mwP,C&mwD_Y:f2mT,PtZC_LD_7#g{
C_L;VI=;,D&mw,|+\I\-z;5P_Y:f4|P,1=|D_Y:f$w/S RAM r
d{&mwD_Y:fPlw=#m;=f,g{;vIVID_LXkH=|H0ZdPKPD&mwI
C,C_L2ma-z;v|$DSY#

n_LHD&mw`FTG+;v_Ls(=;vX(&mwO#s(b6E_L+;VI=C&mw,;\
d{&mwGqIC#bindprocessor |nM bindprocessor() S}L+8(xLD_Ls(=X(&mw
#T=s(G(} fork() M exec() 53wCLPx4D#
(kNDZ 61 3D:bindprocessor |n;)

s(TZ CPU \/D\Y-zPODLrGPCD#P1,|T;cDLrI\aP4wC,r*|2ma


Z;v I/O .sSYT;v_LDXBVI,1=_Lys(D&mwdCIC#g{_LZ3v I/O YwD
Vx1dP;1h{,rd&mOBDDs?V;+I\#tZ|ys(D&mwD_Y:fo#g{C_L
;VI=B;vICD&mwP,|\I\aC=|CD~q#

ZfM\_yC
Z;v%&mwP,;)Z?J4(}gZfuM I/O r_Zf\_)DyC(#Gi~9C1dD;!?V#
Z;v`&mwP,b)0ladC|X*,XpGg{_Y:f;BTc(vSKT RAM DCJ}?#

SMP T\Jb
*KP'9C SMP,h*<G3)Bn#

$w:X""T
SMP 53XPDw*T\JbG$w:XD"PT,bvJbITbymo:“VZRGP n v&mw,RG
gN#V|G+<P'X$w”?

g{ZNN8(1d,;vD7D`&mw53P;P;v&mwZpwC,r|H;v%&mwC;K`
Y#IZh*9C\b&mwdIEDnbzk,|I\a|c#

50 T\\m8O
$w:X"PTGrP/D9d#Z53m~r&CLr$w:X(r_Gb=_.dD;%wC)*srP
/b;cO,$w:X"PTMCb\p'#

$w:X"PT2IT(}vS&mw`FT4|qZ{DGyB5#S&mw`FTC4Da_D_Y:f
'JI\a9CLr|lDjI#$w:X"PTG5MK(}GP|`IVID_L&ZIC4,),+G
l&1dC=KDF#

$w:X"PTD;viI?V,xL"PT,G8;v`_LxLZNN1r<5P`vIVI_LDL
H#

LB?
SMP 53DLB?w*!vZtIvrX#
v ;1&Z_6pD$w:X"PT#&mwZX(1do5P|`DIVI_L";\9%;)&mwZ
d{1dPCDiv#
v xyCD}?#
v &mw`FTDLH#

l&1d
&Z SMP 53PDX(LrDl&1d!vZ`VrX#
v CLrDxL"PT6p#g{CLr;15P=vr|`IVI_L,|Dl&1d\I\aZ SMP 7
3oC=DF#g{Lr;|,;v%@D_L,|Dl&1dn`2MGM;v&Z`,YH%&mw
PDLr`1#
v kLrd{5}r_d{9C`,xDLr.dDxyCD}?#
v LrT&mwD`FTLH#g{Lr?N<;VI=;,D&mwP,C&mwP;P|DNN_Y:
f_,rCLrI\aHZ;v`1D%&mwPKPC|}#

SMP $w:X
=SD&mwTT\D0lGIy&mDX($w:XDXwv(D#b;ZV[G)X|Xw0d0l#

TBuoC4hv;vVPDLr;^D=NVLH,r_;vBLrDhFLH,TcKPZ;v SMP 7
3o:
SMP 2+
Z;vLro\bNNaZ SMP 73o<B&\JbDYw,}gT2m}]DG.PCJ#bvu
oZ%@9C1,(#G8;vZ SMP 73o*K}7KPx;xPKyhDn!|DDLr#
SMP P'
Z;vLro\baZ SMP 73o<B&\rT\JbDNNYw#;vhv* SMP P'DLr,
12G SMP 2+D#;v SMP P'DLr(#wvnbD|DTn!/u<?1#
SMP {C
T;vLrmS&\,b)&\GXpC4P'{C SMP 73D,}g`_L#;vhv* SMP {
CDLr(#Y(G SMP 2+M SMP P'D#

$w:X`&m
ZlYFczOKP1X$w:XD`LrhFYw53xKDPu!sGP8~BiZ,1"z#

`&m 51
B5O,\`Q&D$w:XZNbx(1L";Ps?DIVI_L,49G1|KPZ;vrP/`T4
5;GsJbD%&mw53P1#}GAY\GPk&mw;y`DIVI_L,*;;\P;vr`v&
mwZ;?V1doPC#

IVI_LD}?G53P_LD\}
v u%}ZH} I/O D_L},
v u%}ZH}2mJ4D_L},
v u%}ZH}m;v_La{D_L},
v u%}T|GT:Dks/_D_L}#

$w:X]5GIT`&mD,Sb;c45,|;[N1<T>vk53PD&mw};y`DIVI_L
}#k"b,b";;b6EIVI_LD=y}?M&mw;y`#g{IVI_L}Z;k1do*c,
#`1doG&mwF}D=6,rIVI_LD=y}+HZ&mw},+G53oN;x(D&mw;\
Z;k1do$w#

vS$w:XD`&mTf0=TBD;vr=v=f:
v 7O"bv}p_LH}DNN?1
v vS53PD_L\}

b)bv=8;G@"D#YgP;v%@D"w*D53?1,vSVPD(}C?1D$w:XD_L}
+;avvvS_LH}DH}#Yg?0;P?1,vS_L}I\a4(;v?1#

`&mwLB?IluT
5J$w:X";\Z SMP 53P+QDlu#

;){9+QluDrXgByv:
v 1&mwD}?vS1,\_/*XDyC2vS#
v ZfyCvS(yPZf<*yP&mw2m)
v fEZf;O{D,_Y:f4|PDI>vS
v _Y:f;f=''MA!m;v_Y:fT#V_Y:f;BT
v IZ|_VIJx}pDvSD_Y:f4|P(|`DxL/_Lh*Z53PVI)
v vSD,=8nI>
v IZ|sDYw53M&CLr}]a9xvSD_Y:f4|P
v *x(/bxxvSDYw53M&CLr76$H
v IZH}xxvSDYw53M&CLr76$H

yPb)rX<TF*$w:XDIluTpwC#IluTG$w:XLB?\fZd{&mwICTDL
H#|(#m>*;v`&mwD$w:XLB?I;v`1D%&mwDLB?y}C=DL#}g,g{
;v%&mwZx(D$w:XB?kqC 20 vks,x;vD&mwD53?kqC 58 vks,rH}
rS+G 2.9#bv$w:XG_HIluD#;v(EI$ZKP"Fcz\/DLriID$w:X,g{
d I/O rd{ZKn/GIvTD,"R;P2m}],rITZ;vD753Po= 3.2 = 3.9 DH}r
S#;x,V5Ps`}$w:X;\o=bv.=#IZIluTG\Q@FD,IluTDYh&yZf
5$w:XD@@5#

52 T\\m8O
B<5wKluJb#$w:XI;5PYhD|niI#?u|ns<P}V.;D}#&m"}V.;D
I/O H}M}V.;TyVPxD&m#Z%&mwP,B5O;N;\&m;v|n,;\G;GVPx#Z
T>D1ddto(G|n@"4P1dDe6),%&mw&m 7.67 v|n#

< 13. `&mwlu. C<5wKluJb#$w:XI;5PYhD|niI#?u|ns<P}V.;D}#&m"


}V.;D I/O H}M}V.;TyVPxD&m#Z%&mwP,B5O;N;\&m;v|n,;\G;GVPx#
Z,yD1ddto,%&mw&m 7.67 v|n#Z,yD1ddto,`&mwT 1.83 DH}rS&m 14 v|
n#

Z`&mwO,=v&mw&mLr4P,+GT;;P;vx#*r%p{,T>KyP0l&mw B Dx
yC#Zy>D1dNo,`&mw&m 14 v|n#rKH}rS* 1.83#RG;V[=v&mw,r*|
`&mwDiv;aP24d/#VZxZ 100% D1do<&Z9C4,#Z;vD7D`&mwP,H}
rSI\G 1.83 r|!#

5JLr\Yaqe<PD|nGyTF#mb,RGvv<GKyCD;v_H:x(#g{RG+_Y:
f;BTM&mw`FTD0l|(x4,^IH}rS8ua|!#

C>}5wK$w:X(#;\(}r%mS&mw49||lKP#7(Mn!/_L.dDyC42GX
*D#

luGk$w:X`XD#;)+<Dy<Lr5>_.=DIluTG]WqCD#s`}byDy<Lr
G(}KP!MD CPU \/LrDiOx9lv4D,b) CPU \/Lr8u;C24ZK~q#b)y
<LrDa{zmKIluTDO^,x;GV5Z{#

y<LrDm;v5C"bDP$[cG(#ivB,;v%7 SMP DKPYHaHKPYw53D UP f


>D,H%&mw}(s< 5%-15%)
#

`&mwl&1d
;v`&mw;\+;v@"LrD4P1dDx=CCLrIT`_L==KPDLH#

P8V=(ITC;v%@LrD3)?V5V"P4P:
v T=wC libpthreads.a S}L(r_,ZOODLrP:wC fork() S}L)T4(`v,1KPD_
L#
v C;v"P/D`kwr_$&mw&mLr,C`kwr$&mwalb=I,14PDzkrP,"
zI`v_L4"PKPb)zk#
v 9C;v>mG`_LDm~|#

}G9Cb)<uD;Vr`V,LrZ;v`&mw53P;aHZ;v`1D%&mwPKPCl#B5
O,IZLra-z|`Dx(*zMZ;,1dVI=;,&mwxzzDSY,|PI\a|}#

49yPICD<u<C=K,ns^HDDx2\=;vF*“Amdahl (I”frD^F#

`&m 53
v g{LrZ%&mwPD4P1d t D x V.;;\xP3r&m,k`1D%&mwD4P1d`H,
n 7`&mwPD4P1dDDx(speed-up)ITBH=xv:

< 14. Amdahl (I. Amdahl (I5w,speed-up HZ%&mw1d}TrP1dSO`&mw1d,r_G 1 }T x


SO(x }T n)DM#Lim speed-up HZ 1 }T x,n HZ^ns#

Y}45,g{;vLrD 50% D&mXk3r4P,50% IT"P4P,rnsDl&1dDx!ZrS


2(Zm;vPCD 4 7`&mwP,C5A`* 1.6)
#

SMP _LwH
Z SMP 73P,_L'VDICT9C5V SMP {CD&CLr|]W,z[2|M#

_L'V+Lr4PXFV*=viI?V:
v xLGKPLryhomJ4D/O,}gZfMTD~DCJ#
v _LGLrD;v5}D4P4,,}g8nX7DfwM(CDfwD10Z]#?v_L<Z;vx
(xLDOBDPKP,"R9CCxLDJ4#`v_LITZ;v%@DxLPKP,T2mdJ
4#

Iz`vxLT4(`vXFwGi3M:sD,r*?vxL<5PTmDZfJ4/,"R*shC`1
`D53&m#Z;vxLP4(`v_L*sD&mOY,9CDZf2OY#

_L'VP=v6p:
v &CLr73PD libpthreads.a 'V
v ZK_L'V

!\_L(#G;V{C`&m<uD=cP'DzF,+9GfZk.X*DIluT^F#r*_L2m
xLJ4M4,,Tb)J4Dx(MrP/P1ra^FIluT#

1!wHLrT(FD$w:XD&m
TVPLrxT,xLM_L.dDxVG^SulD#

B5O,SYw53DOg"Pf1S(F}4D$w:Xa4(xL,g,|G(#yvDGy#?vBx
L4(1axP;v%@D_L(u<_L),C_Lkd{xLD_L:y CPU#

u<_LD1!tTkBDwHLrc(aOp4*;dD$w:Xn!/53/,d/#

54 T\\m8O
MT0;y,EH6IT(} nice M renice |n0 setpri() M setpriority() 53wCXF#wHLrn
`Jm;vx(D_LKP;v1d,(;cG 10 ms),.sM?F|C=ZB;v,HrO_EH6DI
VI_L#PXj8E",kNDZ 102 3D:XF"&mwyC;#

wHc(d?
I8vd?0l_LDwH#

;)G_L'VXPD;m;)GxLwH"bBnDj!8Z:
EH6 _LDEH65G|ZyC&mw1d1EH(Dy>8>{#
wHLrKPSP;C
_LZwHLrDIVI_LSPPD;C43K;)0fD4v#
wH_T
b;_LtTv(K;v}ZKPD_LZ1d,D)2av=24iv#
yCwCr
_LDyCwCrv(K|Gq;M|DxLZDd{_L:y,9GM53oDyP_L:y#;
v4(1xPxLyCwCrD pthread Ib4wH,xG)4(1xP53wCrDrIZKwH#
bwHLr{C;vZK_LX4wH_PxLwCrD pthread#;c45,g{ pthread }Z4P
I/O,r4(_P53wCrD pthread#1P\`xLZ,=1,xLwCrGPCD#yCwCrG
;v libpthreads.a En#
&mw`FT
ZNVLHO?F4P`FTa0lT\#

+b)"bBnaOp4<G44G4SD,+GzZ\m;vx(xL1ITS}VX;;,D=(P!
q:
1! xL5P;v_L,C_LDEH6fE CPU {Dx;,,dwH_TG SCHED_OTHER#
xL6XF
xLITP;vr`v_L,+GG)_LDwH_T*1!5 SCHED_OTHER,bJm9CVPD
XF nice 5ML(EH6D=(#yPb)=(TxLPD?;v_LD0lG`,D#g{9CK
setpri() S}L,xLPyP_LDwH_T;hC* SCHED_RR#
_L6XF
xLIT5P;vr`v_L#b)_LDwH_ThC* SCHED_RR r_ SCHED_FIFOn,Siv
x(#?;v_LDEH6GL(D,I_L6S}LXF#

wH_TZZ 33 3D:_LwH_T;Phv#

_Lw{
C'_LZ;vxLPa)@"DXFw#

g{C'_Lh*CJZK~q(}g53wC),`XDZK_La*|~q#P\`;,Dm~|a)K
#Z libpthreads 5VP,C'_L;Zib&m
C'_L,n5C"bDG pthreads 2mb(libpthreads.a)
w(VP)D%?,xib&mw>m;ZZK_L%?#;v`_LDC'xLIT9C=V#M.;,g
Byv:
1:1 _L#M
1:1 #MG8?vC'_L}C5P3d=|D;vZK_L#bG AIX 4.1"AIX 4.2 M AIX 4.3 O
D1!#M#Zbv#Mo,?vC'_L<;s(=;v VP O,"R}Ck;vZK_L4S#VP

`&m 55
;;(*s(=;v5JD CPU O(}GQ-s(=;v&mwO)
#;vs(= VP OD_L;F
*_P53wCr,r*|GMyPd{C'_L;pIZKwHLr1SwHD#
M:N _L#M
M:N #MZ AIX 4.3.1 P5V,,1VZ2G1!#M#ZC#MP,8vC'_LIT2m,;v
ib&mwr,;v VP X#?v VP ITO*G;vICD CPU,IT4PC'zkM53wC#
;v;s(= VP OD_L;F*_P>XrxLwCr,r*|;MyPd{_L;pIZKwHL
r1SwH#pthreads ba&m= VP DC'_LwH,;sZKawH`XDZK_L#S AIX 4.3.2
*<,1!ivG+;vZK_L3d=KvC'_L#bGITS&CLrZ?r_(};v73
d?w{D#

y]&CLrD`M,\m1IT!q9C;,D_L#M#AIX 4.3.2 ODbTmw3)&CLrITZ 1:1


#MP4PC|C#b;c\X*,r*S AIX 4.3.1 *<D1!5G M:N#(}r%hCCxLD73d?
AIXTHREAD_SCOPE=S,RGIT+_L#MhCI 1:1,;s+|DT\k0vD_L#M* M:N 1DT
\`HO#

g{z4=;v&CLrZ4(M>}_L,bI\GIZC'_LTZK_LD1!HJG 8:1 x<BZK


_L}Z;Un(harvested)#bVUn,,bwHD*z;pIT0lT\#m;=f,1fZ8'vC'
_L1,ZbDC'UdowH|Gx;G\m8'vZK_La9*zOY#g{zZ9C pthread 1v=
T\Jb,&C\G"TDdwCr;Z\`ivB,53wCrITa)|CDT\#

g{;v&CLrKPZ SMP 53o,rYgC'_L;\q!;v%bTs,|a"TT}o 40 N#%


bTs+I\;ZL1dZIC,rKT}O$1dI\G5CD#1zmS|` CPU 1,g{T\B5,
b(#m>Px(Jb#zI\k(}hC73d? SPINLOOPTIME=n 4v$T}1d,dP n GT}N
}#y] CPU YHM CPU }?4+5hC=8'b4_";Y{#;)T}F}C!,_LITxk]_
4,TH}%bTsd*IC,r_|IT"v yield() 53wC,"R;GEz CPU +#VI4P4,(x
;Gxk]_) #1!ivB,|axk/_,+G(}+73d? YIELDLOOPTIME hC*;v},|aZ
xk/_.0Ez`oC}VG4`N#?N|ZEz.sC= CPU,|ITT<q!%bTs#

s?9C malloc S53D3)`_LC'xLIT(}Z&CLrt/.0<v73d?


MALLOCMULTIHEAP=1 4qC|CDT\#TZ`_L C++ Lr45,1ZT\DxDI\TXps,r
*b)LrZ?NwC9l/}r_v9/}1<IT{C malloc S53#NNICDT\DxZ`_LC'
xLKPZ;v SMP 53O1n*wT,XpG9C53wCr_L1(M:N DHJ* 1:1) #;x,ZP)
ivB,DxZd{u~BMZ%&mwO2IT\wT#

_L73d?
Z libpthreads.a r\Z?,a)K;5PDw{}%,|GI\a0l&CLrDT\#

gPI\,k9C0K shell E>wC~xFI4PLr#C shell E>&C8(z#{2GBf?VPyv7


3d?D531!5DB5#

AIXTHREAD_COND_DEBUG(AIX 4.3.3 0sxf>)

AIXTHREAD_COND_DEBUG d?,$)wTw9CDu~d?DPm#g{Lr|,s?n/Du~d?,
"R514(MF5u~d?,r,$Cu~d?PmI\azz|sD*z#+Cd?hC* OFF +{C
CPm#9Cd?&Z*t4,I9CwT_L&CLr|*]W,+I\a?S;)*z#

AIXTHREAD_ENRUSG

AIXTHREAD_ENRUSG d?tCr{C pthread J4U/#*tbvd?aJmT;vxLPyP pthread x


PJ4U/,+GavS;)*z#

56 T\\m8O
AIXTHREAD_GUARDPAGES=n

TZ AIX 4.3 0sxf>:


* +-----------------------+
* | pthread attr |
* +-----------------------+ <--- pthread->pt_attr
* | pthread struct |
* +-----------------------+ <--- pthread->pt_stk.st_limit
* | pthread stack |
* | | |
* | V |
* +-----------------------+ <--- pthread->pt_stk.st_base
* | RED ZONE |
* +-----------------------+ <--- pthread->pt_guardaddr
* | pthread private data |
* +-----------------------+ <--- pthread->pt_data

TOe<PD RED ZONE F*/d3#

S AIX 5.2 *<,pthread attr"pthread M ctx zm*;v pthread VdDZfD PTH_FIXED ?V#

TZ 32 ;,|FVZs!ZB<D=(EPjv#TZ 64 ;,iI PTH_FIXED D,N&CTs;),"


R|}]&* 8 K,xd{=f;y#
* +-----------------------+
* | page alignment 2 |
* | [8K-4K+PTH_FIXED-a1] |
* +-----------------------+
* | pthread ctx [368] |
* +-----------------------+<--- pthread->pt_attr
* | pthread attr [112] |
* +-----------------------+ <--- pthread->pt_attr
* | pthread struct [960] |
* +-----------------------+ <--- pthread
* | pthread stack | pthread->pt_stk.st_limit
* | |[96K+4K-PTH_FIXED] |
* | V |
* +-----------------------+ <--- pthread->pt_stk.st_base
* | RED ZONE [4K] |
* +-----------------------+ <--- pthread->pt_guardaddr
* | pthread key data [4K] |
* +-----------------------+ <--- pthread->pt_data
* | page alignment 1 (a1) |
* | [<4K] |
* +-----------------------+

Ce<PD RED ZONE F*/d3#

*mS= pthread ;2D/d3D}?(.xF)* n,C52G4( pthread 1y8(DtT5#g{&C


Lr8(|TmDQ;,r;4(NN/d3#1!5* 0 R n Xk*}5#

/d3DVZ}I n KT PAGESIZE v(#3s!G53v(Ds!#

AIXTHREAD_MNRATIO(AIX 4.3 0|_f>)

AIXTHREAD_MNRATIO d?XFbDuErS#CHJZ4(MU9 pthread 19C#|TZxP+s?_L


D&CLrI\\PC#+|\GbT 1:1 DHJ,r*|ITa)|CDT\#

`&m 57
AIXTHREAD_MUTEX_DEBUG(AIX 4.3.3 0|_f>)

AIXTHREAD_MUTEX_DEBUG d?,$)wTw9CDn/%bTsDPm#g{Lr|,s?n/D%bT
s,"R514(MF5%bTs,r,$C%bTsPmI\azz|sD*z#+Cd?hC* ON 9C
wT_L&CLr]W;),+GI\a?SnbD*z#+Cd?hC* OFF +{CCPm#

AIXTHREAD_MUTEX_FAST(AIX 5.2 0|_f>)

g{LrIZOXD%bTsyCxvVT\B5,r+Kd?hC* ON +?F pthread b9CvTxL=


P%bTspwCDE/%bTsx(zF#b)xL=P%bTsXk9C pthread_mutex_init }LxPu<
/,"RXk9C pthread_mutex_destroy }LF5#+Cd?hC* OFF +?F pthread b9C1!%bT
sx(zF#

AIXTHREAD_READ_GUARDPAGES(xP 5300-03 D AIX 5.3 0|_f>)

AIXTHREAD_READ_GUARDPAGES d?tCr{CTmS= pthread ;2D/d3DACJ#XZI pthread


4(D#$3D|`E",kNDZ 57 3D:AIXTHREAD_GUARDPAGES=n;#

AIXTHREAD_RWLOCK_DEBUG(AIX 4.3.3 0|_f>)

AIXTHREAD_RWLOCK_DEBUG d?,$)wTw9CDA4xDPm#g{Lr|,\`n/DA4x"-
#4(MF5A4x,r,$bvA4xPmI\zz|sD*z#+Cd?hC* OFF +{CCPm#

AIXTHREAD_SUSPENDIBLE={ON|OFF}(xP 5300-03 D AIX 5.3 0|_f>)

+ AIXTHREAD_SUSPENDIBLE d?hC* ON IZ+BP}Lk pthread_suspend_np }Lr


pthread_suspend_others_np }L;p9CD&CLrP@9@x:
v pthread_getrusage_np
v pthread_cancel
v pthread_detach
v pthread_join
v pthread_getunique_np
v pthread_join_np
v pthread_setschedparam
v pthread_getschedparam
v pthread_kill
Kd?ax4YmT\p'#

AIXTHREAD_SCOPE={P|S}(AIX 4.3.1 0|_f>)

P !nm>xL6'DyCwCr(M:N),x S !nm>536'DyCwCr(1:1)
#Xk8(b=v!
n.;;1!5* P(xL6'DwCr) #

9C AIXTHREAD_SCOPE 73d?v0lG)T1!tT4(D_L#1 pthread_create() S}LD attr


N}* NULL 1,+IC1!tT#

g{;vC'_LZ4(1_P536wCr,|;s(=;vZK_LO"IZKwH#WcDZK_LG
;kNNd{C'_L2mD#

g{;vC'_LZ4(1_PxL6wCr,r|~SC'wHLrXF#bb6E:

58 T\\m8O
v |;P(CZK_L#
v |ZC'==B]_#
v 1|H}&mw1,+CZC'KPSPP#
v |\FZC'wHLrxPD1dV,#

AIX 4.3.2 ODbTmw,3)&CLr9C 1:1 #MI\T\*CC`#

AIXTHREAD_SLPRATIO(AIX 4.3 0|_f>)

AIXTHREAD_SLPRATIO _Lw{d?XF&C$tx]__LDZK_L}#;c45,h*C4'V/_
pthread DZK_L}HOY,r* pthread (#G;N;=Q;v#bMZ<KZKJ4#

AIXTHREAD_STK=n(AIX 4.3.3 ML 09 T0 AIX 5.1)

A I X T H R E A D _ S T K = n _ L w { d ? X F & * ? v p t h r e a d V d D V Z } ( . x F )# C 5 I I
pthread_attr_setstacksize 2G#

MALLOCBUCKETS

Malloc f"xa)K;VI!DyZf"xD1!VdLrD)9#|D?DG**"vs?!DVd*sD
&CLra_ malloc T\#1 malloc f"xtC1,MI|G4&mtZ$H(eDis!6'ZDVdk
s#yPd{ksrC(#D=(I1!VdLr4&m#

Malloc f"x1!ivB;GtCD#|G(}hC MALLOCTYPE M MALLOCBUCKETS 73d?TZx


Lt/0tCMdCD#

PX malloc f"xD|`E",kND6AIX 5L V5.3 (C`LEn:`4"wTLr7#

MALLOCMULTIHEAP={considersize,heaps:n}(AIX 4.3.1 0|_f>)

h*P`vQTc_L&CLr\P`Z;vD_L"v malloc()"free() M realloc() S}LwC#g{;


P;vQ,ryP"TxP malloc()"free() r realloc() wCD_L+rP/(2MG5,;N;\xP;
vwC)#da{G`&mwzwa\=OXD0l#Z`QivB,?v_LITC=|T:DQ#g{y
PQ<}Z9C,rNN"TxPwCDB_L<XkH},1=;vr`vQIC*9#rP/T;fZ,
+G"zrP/DI\TT0"z1ylID0l+ss5M#

*K&mbV==,_L2+x(Q-DdK#?;vQ<P|TmDx,xRx(}L“wGX”!q3vQ
TT<@9rP/#g{ MALLOCMULTIHEAP 73d?PhCK considersize !n,rC!n9+"T!
qPc;ICUd4&mksDNNICQ,x;G;!qB;v4x(DQ#

I8(`v!n("RIT4NN3r),;*!ndC:EVt,}g:
MALLOCMULTIHEAP=considersize,heaps:3

b)!nG:
considersize
K!n9Cm;VQ!qc(,Cc("T9xLD$w/s!n!/#1!ivB;9CK!n,
xG9C|lDc(#
heaps:n
9CK!nI|DQD}?#n DP'6'* 1 = 32#g{+ n hC*ZK6'.bD}(4,g
{ n<=0 r n>32),r n +hC* 32#

`&m 59
MALLOCMULTIHEAP D1!5* NOT SET(;9CZ;vQ)
#g{hCK73d? MALLOCMULTIHEAP
(}g,MALLOCMULTIHEAP=1),r_L&CLr+\;9CyP 32 vQ#hC MALLOCMULTIHEAP=heaps:n +
QQ}^F* n,x;G 32 vQ#

PX|`E",kND6AIX 5L V5.3 (C`LEn:`4"wTLr7PD:Malloc `Q;;Z#

SPINLOOPTIME=n

SPINLOOPTIME d?XF53+Z;I!(zYw(}gwCZKTCvxL)DivB,"TqC1&%b
TsrT}xDN}#bVXFGfr MP 53D,#{ZdOMEIm;v}Zn>KPD pthread VPD
x#CN};Z libpthreads(C'_L)P$w#g{x(#Z;!N1doIC,z2mk(}hCbv73
d?4vST}1d#ZCxm;v pthread .0XT;v1&xDN}* n#1!5G 40 "R n Xk*}
5#

MAXSPIN ZKN}0lZKx(}LPDT}(kNDZ 63 3D:9C schedo |n^D MAXSPIN N};)


#

YIELDLOOPTIME=n
YIELDLOOPTIME d?XF53ZxO5J*k]_.0,Z"TqC1&%bTsrT}x1Cv&mwD
N}#g{Pm;v_8c;EH6DI4PZK_L,r&mw+CxCZK_L#Q-$wbvd?Z`
vx;9CD4S&CLrPGP'D#Zh{;v1&Dx.0Cv&mwDN}* n#1!5G 0 "R n
Xk*}5#

xL6'yCwCrDd?
BP73d?0lZ4(1_PxL6yCwCrD pthread DwH#
AIXTHREAD_MNRATIO=p:k
bo k G&CC4&m p vIKP pthread DZK_L}#bv73d?XFbDH}rS#CHJ
Z4(MU9 pthread 19C#Cd?;ZxL6wCrP';Z536wCr,C73d?;vT#
1!hCG 8:1#
AIXTHREAD_SLPRATIO=k:p
bo k G&C* p v/_ pthread #tDZK_L}#/_HJG*K'V/_D pthread xmb#
tDZK_L}#;c45,'V/_D pthread yh*DZK_L}HOY,r*|G(#;N;;
=Q;v#bZ<KZKJ4#NN}{}5<IT8(x p M k#g{ k>p,r+CH}S* 1:1#
1!5* 1:12#
AIXTHREAD_MINKTHREADS=n
bo n G&9CDZK_L}Dn!}?#bwHLr;aXUMZbv}VDZK_L#B5O;
vZK_LZNNivB<I\;XU#;c45,;vZK_LDXU?jGw* pthread U9Da
{#1!5G 8#

_LwT!n
pthread b,$;vn/%bTs"u~d?MA4xPm,T)wTw9C#

1u</;vxs,Yh|9;ZPmP,r|amS=PmP#Pmw*;v4mxVP,rKZPmds
17(;vBx9;ZPmP~,KT\PXDrX#bvJbMPmGI;vx(dbx__mutexes)#$DB
5aOZ;p,bvxZQwPm1;1VP#ZbVivB,d{T pthread_mutex_init() S}LDwCZ
Qwax1T;#V#

g{BP73d?hC*1!5 OFF,raj+{CJ1DwTPm#bb6E dbx |n(r_9C pthread


wTbDNNwTw)+T>;fZNNTs#
60 T\\m8O
v AIXTHREAD_MUTEX_DEBUG
v AIXTHREAD_COND_DEBUG
v AIXTHREAD_RWLOCK_DEBUG

*+b)73d?PDNN;vhC* ON,9CBP|n:
# export variable_name=ON

SMP $_
Yw53DyPT\$_<'V SMP zw#

;)T\$_a)%@D&mw9C3FE"#d{T\$_TyP&mwD9C3FE"xP=ys;T>
=y5#

b;ZhvG)vZ SMP O\'VD$_#PXyPd{T\$_Dj8E",kNDJ1BZ#

bindprocessor |n
9C bindprocessor |nZ&mwO+xLDZK_Ls(r_b}s(#

*s(rb}s(xLP;tZzD_Lh* root C'(^#

":bindprocessor |nGfr`&mw53D#!\|Z%&mw53O2\pwC,s(ZbV53OG
;PNN'{D#

*i/ICD&mw,kKPTB|n:
# bindprocessor -q
The available processors are: 0 1 2 3

dvT>KIC&mwD_-&mwE,|M bindprocessor |n;p9C,BfIT4=#

*+;v PID * 14596 DxLs(=&mw 1 O,kKPTB|n:


# bindprocessor 14596 1

g{C|nI&K,+;axv5X{"#*i$xLGs(9G4s(=&mw,k4UZ 95 3D:9C ps
|n;Pyv9C ps -mo THREAD |n:
# ps -mo THREAD
USER PID PPID TID ST CP PRI SC WCHAN F TT BND COMMAND
root 3292 7130 - A 1 60 1 - 240001 pts/0 - -ksh
- - - 14309 S 1 60 1 - 400 - - -
root 14596 3292 - A 73 100 1 - 200001 pts/0 1 /tmp/cpubound
- - - 15629 R 73 100 1 - 0 - 1 -
root 15606 3292 - A 74 101 1 - 200001 pts/0 - /tmp/cpubound
- - - 16895 R 74 101 1 - 0 - - -
root 16634 3292 - A 73 100 1 - 200001 pts/0 - /tmp/cpubound
- - - 15107 R 73 100 1 - 0 - - -
root 18048 3292 - A 14 67 1 - 200001 pts/0 - ps -mo THREAD
- - - 17801 R 14 67 1 - 0 - - -

BND PT>KxLys(=D&mwE,r_g{xLy>4s(,rT>L._(-)#

*T;v PID * 14596 DxLb}s(,KPTB|n:


# bindprocessor -u 14596
# ps -mo THREAD
USER PID PPID TID ST CP PRI SC WCHAN F TT BND COMMAND

`&m 61
root 3292 7130 - A 2 61 1 - 240001 pts/0 - -ksh
- - - 14309 S 2 61 1 - 400 - - -
root 14596 3292 - A 120 124 1 - 200001 pts/0 - /tmp/cpubound
- - - 15629 R 120 124 1 - 0 - - -
root 15606 3292 - A 120 124 1 - 200001 pts/0 - /tmp/cpubound
- - - 16895 R 120 124 1 - 0 - - -
root 16634 3292 - A 120 124 0 - 200001 pts/0 - /tmp/cpubound
- - - 15107 R 120 124 0 - 0 - - -
root 18052 3292 - A 12 66 1 - 200001 pts/0 - ps -mo THREAD
- - - 17805 R 12 66 1 - 0 - - -

1 bindprocessor |nCZ;vxL1,|DyP_L<aST:.0D&mwOb}s(,;ss(=;
v&mwO#TxLb}s(2aT|DyP_Lb}s(#z;\(}9C bindprocessor |n4s(r
b}s(3v%@D_L#

;x,Z;vLrZ?,zIT9C bindprocessor() /}wC4s(%@D_L#g{ bindprocessor() /


}Z;vzkNZC4s(_L=&mwO,_LctZb)&mw"R;\;b}s(#g{TCxL9C
bindprocessor |n,rdyP_L+s(=;v&mwO,"SdwTD0&mwO!{s(#T{vxL
b}s(2aTyP_L<b}s(#

xLZt/0;\;s(;2MG5,|XkfZTc;s(#1xL;fZ1,aT>BPms:
# bindprocessor 7359 1
1730-002: Process 7359 does not match an existing process

1&mw;fZ1,aT>BPms:
# bindprocessor 7358 4
1730-001: Processor 4 is not available

":;*TH}xL kproc 9C bindprocessor |n#

s("bBn
9CxLs(.0,h*<G8vJb#

s(T-z\YPOD CPU \/Lr45I\GPCD#P1r|TU(DLrI\p=4wC,r*|I


\+ I/O sT;v_LDXBVISY=C_Lys(D&mwdCIC1#g{_LZ3v I/O YwDVx
1dP;1h{,rd&mOBDDs?V;+I\#tZ|ys(D&mwD_Y:fP#g{C_L;V
I=B;vICD&mwP,|\I\aC=|CD~q#

s(";ah9d{xLVI=zDxLys(D&mwO#s(kVx;,#;P AIX 4.3.3 P}kD$w


:X\mw(WLM)D0,M;I\9;i&mw(CZX(D$w:X,2;I\9m;i&mw(CZ
m;v$w:X#rK,;vO_EH6DxLI\aVIZzDxLys(D&mwO#ZbVivB,z
DxL;aSd{&mwOVI,rK,z+;\\Ga_s(xLDT\#g{zvSs(xLDEH6,
I\a!COCDa{#

g{zZ;vX:XD53Os(;vxL,rI\a5M|DT\,r*1;v&mwdCPC1,g{|
;GxLys(D&mwD0,xL+;\ZbvPCD&mwOKP#

g{xLG`_LD,s(CxLa+|DyP_Ls(=,;v&mwO#rK,CxL;P{C`&m=
(,T\2C;=a_#

":9CxLs(1k!D,r*|IEKI AIX V4 a)DT;:Xyb,xR\e53T\I\B5#g


{zwD$w:XSxPu<s(1y`SD5"zd/,53T\I\a\p'#g{z9C
bindprocessor |n,*!D(1`Szw,r*73I\aDd,Sx9Cs(DxLT53T\zz
;{0l#

62 T\\m8O
9C schedo |n^D MAXSPIN N}
g{;v_LkqC;v10}Im;v_L5PDx,xROvZ~v_L}KPZm;v CPU O,G4
h*CxD_L+Z CPU OT},1=w*yP_D_LMECx=3;X(5,C5I{* MAXSPIN D
IwN}8(#

MAXSPIN TZ SMP 53D1!5G 0x4000(16384),xZ UP 53O#V* 1#g{z"b=;v53


O0y4PD|`PCr I/O H}1d,I\Gr*_L|51Xxk/_#g{ba}pT\Jb,rT
MAXSPIN w{,9|D5|s,r_+|hC*-1,C5b6ET}o= 0xFFFFFFFF N#

*^DZ*k]_.0DT}N},k9C schedo |nD maxspin !n#*KuYI\I}HT}}pD


CPU 9C,gBu! MAXSPIN D5:
# schedo -o maxspin=8192

zI\a[l=OBDP;DvS#g{OBDP;I*?1,rvs MAXSPIN#

*K|DC5,zXkG root C'#

`&m 63
64 T\\m8O
T\f.M5V
;v;\4b84PDLrG;PC&D#?vLr<Xkzc3iC'(P1aG;i\sRhsw;`,
DC')Dhs#g{LrDT\75;\zcG)C'P\s;?VC'Dhs,r;a9CbvLr#;
v;;9CDLrG;\5V$Z&\D#

bVivT-mIDm~|MC'`4D&CLrG75fZD,!\s`}m~|*"_b6=MT\D0
l,"!&a_LrDKPYH#;RDG,{G;\$bLr*-zDyP73MC>#CLr_PIS\
T\DnU0pMdZKG)!qr`4"f.T020m~|DKmO#

>BhvLr1r53\m1IT7#B`4r:rDLr_PIS\T\D=h#(1Lr1bvJ%@v
V1,||,53\m1MNNTLrDnUI&:pDK#)

*9Lro=IS\DT\,Z$L*<1M*7(M?/IS\T,"Rv;\vSo=?jyhD=(M
J4#!\}p4bGy>=(,+;)`L$L4PbVF|#{GIC;Ve~Xhv*hF"`k"w
T"I\G`4D5,P1dD0Y7(dT\D_T#

*9LrKP1;vZ_-O,xRZ1dO<GI$*D,(;l(MGZm~f.M*"}LPTT\"
bBnxP{e<G#IZ20_O.*"_POYDTI,yTZVPm~201a0f.2mM|X|
K#

!\T;v!Lr45,bv}LD8ZI\4p4\1X,+;*|KRG9PZ~v“GB>”#RG;v
Xk#$BLr_PnKzbDT\,9k7#CLrTVP53D9d?V;a5MKPZC53Dd{L
rDT\#

$w:XiI?VD7(
^[LrGB`4D9G:rD"sLr9G!Lr,*"_"20_M$ZC'<TLrD9CPyYh#

b)YhDdP;)I\*:
v -9CCLr
v LrZNV73BKP
v b)73vVD5H,T0Z3j3B3U31avV`YN
v Zb)73BGq9h9Cd{VPLr
v LrKPZNV53
v P`Y}]+*SN&xP&m
v ILrr*Lr4(D}]GqaZd{=fC=

}Gb)k(Gw*hF}LD;?VavD,qr\I\#};e,"RLr1+8u^IaPk$ZC'
;,DYh#uAZLr1,12GC'bywT\U(DivP,CYh^Xa9TNNOq==xPhF
kYhDHOI*;I\#|cDG,ZT}xPD$w;Pj+mbDivBG;I\7(T\hsD#

T\hsD5
Z7(M?/T\hs1,7(3;Xb*s3sDFmG\X*D#bGf.}L\\&D;?V#C'I
\a+dhsywyZkLr1DYh;%dDLr_-DYh#

T\hs/AY&G<Bf8c:
© Copyright IBM Corp. 1997, 2006 65
v wVX(`MDC' - Fcz;%wCZs?V1da-zDnQl&1d,T0Ts?V1dD(e#
l&1dSC'4P“KP”bvYwD1d1=C'SFczSU=c;4!TLx4PNq4b?#bG
C'Dw[H}1d#|;GS;vS}LDkZ=Z;v4odD1d#

g{C'Tl&1d;PK$,xvvTa{PK$,zIT/J“10@"4P1d@F5D.6”GqI
TS\#g{Xp“G”,zMITLxV[LB?#qr,zITZC'.V"bDivBLxV[l&1
d#
v nMLHIS\#`1dDl&1d#O$Dl&1da9C'O*531z#z9h*8(#`1d,
}g,;lD_e1L,YV.;D;%wC#Z;lD3X(1duYl&1d\Ql=,r_z[|
_#
v h*DdMLB?M+"zDN}#b";GY1"bBn#}g,T;vLrDhsI\G?lKP=
N:Og 10:00 MBg 3:15#g{bG;vKP 15 VS,"RF.KPZ`C'53DP CPU ^FDL
r,rh*3V-LTc@NKP#
v nsLB?\ZDs!MF1#
v [O$Zks0dgNf1dd/#
v `C'&CLrP?(zwDC'}0\C'}#Khv&|(b)C'G<M"zDN},T0YhD
w|YJ"jIDksM<<N}#zI\k*e~<<N}Gqf0sksx53Xd/#
v C'yvDXZ$w:X*ZdOKPDzwDNNYh#g{C'7TPfZ;(_eDzw,G47
#zgMKb|#,y,g{C'yICDGXb`M"s!"I>";C"%*rNNd{d?,xb
)d?+^Fzzc0vhsD\&,G4Yh2d*hsD;?V#zbLHI\;aZLr*""b
TrWN20D53OxP@@#

$w:XJ4hs@F
}Gz}Z:rdPj8J4hsD5Dm~|,qrJ4@FI\GT\f.}LPn'QDNq#

lI'QPgB8v-r:
v 4PNNNq<P8V=(#I`4 C(rd{_6oT)Lr"shell E>"perl E>"awk E>"sed
E>"AIX 0ZT0HH#ST\[c4,;)44XpJOc(MLr1zz&D<uG#:s#

P;u<r\PC,4is6p=_,M=*ww,T7#3v53;aP\nK*HDT\#kP8<
GI;)wT^&D9ly5>D}]?s!M|z}?#
v %v}LD+7I>G\Q7(D#'Q.&;vvG<uOD;9P\'OD#g{`C'KPDx(
LrD`v5}}Z2mLrD>3f,rD;vxL&C:pG)Zf3fX?Yw53+n|C}D
D~3f#tZZfP,Tc*XBCJC}]DLra)_Y:fD'{#XBCJ}]DLr&CT
C4#t}]DUd:pp?3)@@D#H,Hg531S,ITZCZ,;Lr,x5}D CPU 1d
Ozzd/#

P=V=(4&mJ4(fD#}TMIdT#Z;VGvT#}T,Vx{}IdTD44,1=@@
dCI;BTS\#Z~V=(G"TC@@!I\f5,"S3FOhva{#"bs_zzkzz7
3P3V`XTDa{#
v 53\Y(EKP%vLrD%v5}#fZ8u;1&ZKPDX$Lr"51D(En/M(#4T
`vC'D$w:X#b)n/\Y_TvS#}g,vSx(LrD5}v}8u;PvS9CDBL
rD>3f},r*s?VLrQfZZZfP#+G,=SDxLI\<BT&mw_Y:fDnby
C,yT,;vd{xL;C;MBxL2m&mw1d,xRyPxL<a-z4P?u8nh*|`
\ZDiv#b5JO9C&mwYHu},a{<B|51D_Y:f4|P#

*9zD@Fk_eivyJmD;yf5,k9CTB<r:

66 T\\m8O
v g{LrfZ,Tn`FzT:hsDVP20xP@@#nCD=(G9C]?f.$_,g BEST/1#
v g{;POJD20IC,rxPT20"T[O$w:XxP@@#
v g{zIkhs`%dD[O$w:XG;5JD,r@@veD;%wC"+a{CwBfdk#
v g{Lr9;fZ,iR9C,VoTM(Ca9D,HLr"TdxP@@#YN?w,oT=is,
Z7(IHT1M=hww#
v g{,HLr;fZ,rCf.DoT*";vw*c(D-M,Tbv-MxP@@"T$w:X(
##
v ;P1NN`MD@@<G;I\r;IPD,zE&w;vPy]DBb#g{Zf.WNPX*TJ
4hsxPBb,rZd*"WN!gT5JLrxP@@G\X|D#

NG@"m~)&L(ISV)T{GD&CLr##PIuED<r#

Z@FJ41,RGw*TDv=fPK$(^Xb3r):
CPU 1d
$w:XD&mwI>
ELCJ
$w:XzzDELA4YJ
LAN w?
$w:XzIDE"|}?M;;D}]VZ}
5Zf $w:Xyh RAM Ds!

TBwZV[KZwVivBgN7(b)5#

$w:XJ4b?
g{5JLr"IHLrr-M<I)b?,r!qDv=(!vZ`vrX#

b)rX*:
v }KRG*@@D$w:XTb,53Gq9Z&md{$w#
v RGGqP(9Cb)I\<BT\56D$_#}g,53Gq&ZzzP,rZ@@ZdGq*RG
y(C?
v RG\;#br[lf5$w:XDLH#

@@(C53Oj{D$w:X
9C(C53Gmkiv,r*RGIT9C|,53*zT0%@xLI>D@@#

*@@s`}53n/D\e53T\,9C vmstat |n:


# vmstat 5 >vmstat.output

ba)xRG@@4PZd? 5 kD534,<#Z;v vmstat dv/O|,Sn|;N}<= vmstat |


n*<D[}}]#d`/OG0fD1ddt(>}* 5 k)Da{#53O vmstat DdMdv/O`F
gB:
kthr memory page faults cpu
----- ----------- ------------------------ ------------ -----------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
0 1 75186 192 0 0 0 0 1 0 344 1998 403 6 2 92 0

*@@ CPU MELn/,9C iostat |n:

T\f.M5V 67
# iostat 5 >iostat.output

ba)xRG@@4PZd? 5 kD534,<#Z;v iostat dv/O|,Sn|;N}<= iostat |


n*<D[}}]#d`/OG0fD1ddt(>}* 5 k)Da{#53O iostat DdMdv/O`F
gB:
tty: tin tout avg-cpu: % user % sys % idle % iowait
0.0 0.0 19.4 5.7 70.8 4.1

Disks: % tm_act Kbps tps Kb_read Kb_wrtn


hdisk0 8.0 34.5 8.2 12 164
hdisk1 0.0 0.0 0.0 0 0
cd0 0.0 0.0 0.0 0 0

*@@Zf,9C svmon |n#svmon -G |na)KZf9CD\eEv#3FE"T 4 KB 3f(>


}4T AIX 5.2)*%;Fc:
# svmon -G

size inuse free pin virtual


memory 65527 65406 121 5963 74711
pg space 131072 37218

work pers clnt lpage


pin 5972 0 0 0
in use 54177 9023 2206 0

Zbv>}P,zwD 256 MB Zf+?;9C#s< 83% D RAM CZ$wNMKPLrDA/4Zf


(#BD*_Y:fD~yC)#g{PRGPK$D$1dKPDxL,rITj8i4|GZfhs#B
fD>}v(K;v hoetzel C'xLy9CDZf#
# ps -fu hoetzel
UID PID PPID C STIME TTY TIME CMD
hoetzel 24896 33604 0 09:27:35 pts/3 0:00 /usr/bin/ksh
hoetzel 32496 25350 6 15:16:34 pts/5 0:00 ps -fu hoetzel

# svmon -P 24896

------------------------------------------------------------------------------
Pid Command Inuse Pin Pgsp Virtual 64-bit Mthrd LPage
24896 ksh 7547 4045 1186 7486 N N N

Vsid Esid Type Description LPage Inuse Pin Pgsp Virtual


0 0 work kernel seg - 6324 4041 1186 6324
6a89aa d work shared library text - 1064 0 0 1064
72d3cb 2 work process private - 75 4 0 75
401100 1 pers code,/dev/hd2:6250 - 59 0 - -
3d40f f work shared library data - 23 0 0 23
16925a - pers /dev/hd4:447 - 2 0 - -

$wN(5176)P 4 v3f&Z9CP,G ksh LrDC5}D9CI>#2mbD 2619 3fI>M ksh


LrD 58 3fI>Vp)9=yPKPDLrM ksh LrDyP5}P#

g{O* 256 MB D53sZXh?,k9C rmss |n4uYzwDP's!"RXBb?$w:X#g


{3fwHwTvSr_l&1dq/,GMGRGuYZf}`#ITLx9Cbv=(1=RGR=IK
P$w:Xx;5MT\Ds!#PXK<uD|`E",kNDZ 121 3D:9C rmss |nxPZfhs@
@;#

@@xg9CivDw*|nG netstat Lr#BfD>}T>K3;X(nF7SZDn/:


# netstat -I tr0 5
input (tr0) output input (Total) output
packets errs packets errs colls packets errs packets errs colls

68 T\\m8O
35552822 213488 30283693 0 0 35608011 213488 30338882 0 0
300 0 426 0 0 300 0 426 0 0
272 2 190 0 0 272 2 190 0 0
231 0 192 0 0 231 0 192 0 0
143 0 113 0 0 143 0 113 0 0
408 1 176 0 0 408 1 176 0 0

(fDZ;PT>KSn|;N}<T4D[}xgw?#sf?;PT>K0f 5 k1ddtDn/#

zz53ODj+$w:Xb?
zz53D@@=(`FZ(C53OD@@=(,+RGXk*!DTb5M53T\#

nZ<I>D$_\I\MG vmstat |n,|*Zf"I/O M%v(fP CPU D9Ca)}]#g{ vmstat


1ddt#VOm$H(}g 10 k),=y*zMa`TOM#kNDZ 24 3D:T\^FJ4D7(;T
KbPX9C vmstat |nD|`E"#

@@zz53OD?V$w:X
?V$w:XG8RGk*@@zz53$w:XD;?V,C4xPI\Tm;v53D+MrZm;v5
3OD4F#

IZbG;vzz53,RGXk!I\ww#,1,RGXk|j8XVv$w:X,TxVD)?VGR
GPK$D,D)?VGRG;PK$D#*xP?V@@,RGXkRvyPK$$w:X*XD2,c#
|GGq*:
v ,;vLrr`XLrD!/O?
v 53D;vr`vXbC'4PD$w?
v 4T;vr`vXbUKD$w?

S2,T<G,RGIT9CBfD;v|n
# ps -ef | grep pgmname
# ps -fuusername, . . .
# ps -ftttyname, . . .

47(PK$DxLT0(fG)xLD[} CPU 1d{D#;sRGIT9C svmon |n(bG\wG


D)4@@xLDZf9C#

%vLrb?
\`$_<ITC4@@wvLrDJ4{D#;)Lr9ITT$w:XxP|+fD@@,+CZzz5
3O4;OJ#

ZV[(}w{9X(J4{Do=n!Dwv!ZPnkV[KdPDs?V$_#HO;vD;)P:
svmon
@@;vxL9CD5Zf#ZZ 109 3D:Zf9C;PV[#
time @@%vLrDQ9CD4P1dM CPU {D#ZZ 93 3D:9C time |nb?"&mw9C;
PV[#
tprof @@Lr"S}LbMYw53ZKD`T CPU {D#Z AIX 5L Version 5.3 Performance Tools Guide
and Reference PD tprof |n?VV[#
vmstat -s
@@ILrzID I/O :X#ZZ 157 3D:9C vmstat |n@@\eEL I/O;PV[#

T\f.M5V 69
@FBLrh*DJ4
`kWN"zD4wMXBhFGQT${D,+BfD<rITozzThsP;v+fKb#

T4`4DLrxP+7@FG;I\D#w*;vpc,n!Lrh*TBu~:
v s< 50 AkD CPU 1d,s?VG531d#
v 5Zf
– ;vLrD>3f
– s< 15 v3f(dP 2 vG]f3f)CZ$w(}])N
– T libc.a xPCJ#(#bMyPd{Lr2m,"1wYw53y>I>D;?V#
v s< 12 v3fwxDEL I/O Yw(g{Lrn|P4`k"4Fr9C)
#qr24<;h*#

}KOv;)=f,9PIhFy~,*sDy>I>]n(xvD%*vw>}C):
v CPU 1d
– TZ;|,_6|zrz[_:DS}LwCDU(Lr,d CPU {D!C8u^(ul#
– g{a=DLr|,Fc4SDc(,r*";v-M,Tc(xP@@#
– g{a=DLr9CFc4SDbS}L,g X r Motif 9lr printf() S}L,rCd{!LrT|
GD CPU {DxP@@#
v 5Zf
– ?vLrD>3fJms< 350 Pzk,dP?Ps< 12 VZ#;*|K`kgqk`kw!nIZ
N;=fzz;=VrXDnl#C]nGkTkzdMiv`XD3fD#g{zDhFZI4PL
rDax&2eP4PN}\YDS}L,rG)3f(#;{D5Zf#
– }C2mbx;G libc.a avSZfhs,vSbvbeO45,G)b";kd{Lrr}Z@FLr
D5}2m#*b?b)bDs!,k`4;v$ZKPD}CG)bD!Lr,"TCxL9C svmon
-P |n#
– @FZhFPy7(D}]a9yhf"?s!#/P=n?|D3f#
– ZL1dDKPP,?;vEL I/O Yw9C;vZf3f#Yh3fXkQGICD#;*YhLra
H}m;vLrD3fME#
v EL I/O
– TZ3r I/O,?Ar4 4096 VZ<B;v I/O Yw,}GD~n|U;CJ}"R;)3fTtZZ
fP#
– TZfz I/O,?;NT;,D 4096 VZ3fDCJ,^[s!,<a<B;v I/O Yw,}GD~n
|U;CJ}"R;)3fTtZZfP#
– ?;NTsD~xP 4 KB 3fD3rA4a<Cs< 100 v%*#?;NxP 4 KB 3fDfzA
4a<Cs< 300 v%*#G!5JD~;;(3rf"ZELO,!\LrT|GxP3r4MA#r
K,k3rf!I>`H,5JELf!DdM CPU I>kfzf!I>|S|#
v (E I/O
– g{EL I/O 5JOGTxgD~53(NFS)6L20DD~53D,rEL I/O Z~qwO4P,
+M'zaP#|_D CPU MZf*s#
– NN;V RPC T CPU :X<PG#sD1W#hFPavD RPC &C$HxPn!/"z&m"-
M/M@@#
– ?;NxP 4 KB 3fD3r NFS Ar4a<CM'zs< 600 v%*#?;NxP 4 KB 3fDf
z NFS Ar4a<CM'zs< 1000 v%*#
– Web /@M Web ~q5>Ps?Dxg I/O,,1 TCP ,SDr*MXUG#51#

70 T\\m8O
+Lr6p@F*;I$w:X@F
@F_eMdMJ4hsDnC=(G9CES#M,g BEST/1#

IT9C2,#M,+fZ_@rM@_eJ4DgU#ZN;ivB,SJ4hsD[cv",z<h*m
b$w:XPD`vLrGgN;%D#

g{z}Z9(;v2,#M,k9C1ddt,bGTs`}51KPrAsDLr((#=_G`,D)
xTIS\TnnDl&1d#v(Z?v1ddtP(#KPD)Lr,b*yZzyf.DC'}"{G
D<<N}"w|dkYJT0$ZDlOYw#

9CTB<r:
v CPU 1d
– Z1ddtPKPDyCLrD CPU hs\M#|(Lr}*4PDELM(E I/O D CPU hs#
– g{Z1ddtPbv}VsZIC CPU 1dD 75%,r&<GuYC'}rvS CPU#
v 5Zf
– Yw53ZfhsfomZfs!xd/#Yw53>m9C 6 = 8 MB#%z53PC}V|!#s
;v}VGT LAN ,ST09C TCP/IP M NFS D53xTD#
– Z1ddtPKPDLryP5}D$wNhs\M,|(*Lr}]a9y@FDUd#
– 4+KPD?v;,LrD>NDZfhs(;vLrD>1>*CLryP5}~q)D\M#G!
4TG2mbDNN(Rvv)S}L+I*I4PLrD;?V,+b)b>m";ZZfP#
– ?;vI$w:XPNNLr9CD2mby{DDUds!\M#YN?w,;v1>I)yP5}
9C#
– *Ka)c;DUdCw3VD~_Y:fMTIPm,zDZff.\M;&,}*9CDzws!
D 80%#
v EL I/O
– ?vLrD?v5}y5>D I/O \}#VpFc!D~(rfzA4DsD~)kj+3rAr4Ds
D~(sZ 32 KB)D I/O \}#
– }%G)zO*ITSZfPqCD I/O#0;v1ddtDNNAr4G<Z101ddtP\I\T
;IC#Kb,liavDzwDs!"kzw$w:XD\ RAM hsTH#Yw53hsk$w:X
hs.bDyP#`UdI\|,n|Ar4DD~3f#g{zD&CLrhFgOfyv,G4\
PI\zaXB9Cn|CJ}D}],zITkT_Y:fD'{Fc]n#G!XB9CGZ3f
6pO,x;GG<6pO#g{XB9C;ux(G<DI\T\M,+?v3fVPs?G<,r
ZNNx(1ddtPh*D;)G<I\aqn|9C}Dd{G<;ydZ,;3fP#
– +; I/O hs(?EEL?kSDEL I/O)k10EL}/wD|F]?`HO#g{fzr3rhs
,}*#f&CLr}]D`&DEL\]?D 75%,G4MPX*Z&CLrKP1xPw{("RI
\G)9) #
v (E I/O
– Fc$w:XDxm{D#g{ LAN OyPZcD\xm{DsZn(xmD 70%(T+xPD
50%),zI\k9Cxm|_Dxg#
– T*SZ~qwODnb:XD CPU"ZfM I/O hsxP`FVv#

":G!;P1;I\xP[O@@1,b)<rEPC#NNIC4zf3v<rD&CLrX(D@@<
aTxa_@FD+7T#

T\f.M5V 71
P'DLrhFM5V
g{zQ7(DVJ4a^FLrDYH,k1Sx=V[n!/9CCJ4DJ1=(DBZ#

qr,YhLr+a!C=b,"R>ZPyP(i<JC#5VLrs,kLxAZ 24 3D:T\^FJ
4D7(;#

\^Z&mwDLr
g{Lrrd8uj+I}5FciIxP&mw^F,ry!qDc(TLrT\pw*D0lwC#

5JP&mw^FDLrDnsYHITB8cv(:
v 9CDc(
v Lr14(D4zkM}]a9
v `kwzIDzwoT8nrP
v &mw_Y:fDs!Ma9
v &mwTmDe5a9M1S5J(kNDZ 359 3D:7("&mwYH;)

XZwVc(DV[;Z>iV[6'#YhZ!qc(1Q-<GKFc'J#

Y(P;vc(,Z0fDPmP,Lr1IT0lDvPDnG4zk"9CD`kw!n,2I\G}]
a9#Bf8Z&m1C'5PvpLr4zk1,a_Lr'JIT9CD<u=(#g{4zk;IC,
"T9Cw{r$w:X\m=(#

P'9C_Y:fDhFk`k
P'9Cf"wG89d<U0z\I\*9CD}]M8n#

&mwP`6f"wcNa9:
1. 8nw._M CPU Dfw
2. 8nM}]_Y:fT0`&D*;s8:ex
3. RAM
4. EL

8nM}]XcNa9rOF/,|GFkHM6pYH|l,+2|!M|:sDf"w#*9?;(x(
Dzwo=I\DnQT\,yTLr1XknP'D{C?;6pOICDf"w#

5VP'f"D;vO-MG“f"wG4L($HDiVdD”b;5Jiv,}g_Y:fPM5Zf3f
(#";T&ZLrr}]a9PD_g#hF14<Gf"wcNa9DLrM}]a9(#;\P'{C
Vdx|Df"w,Z!53r_:X53PaTT\zz;{0l#

<Gf"wcNa9b6EmbMJ&Z_Y:fribZf73BP'`LD#f-r#XBb0<uIT
Z;XB`kDivBzzXsDx,yPBzkZhF1&C<GP'{Cf"wDJb#

V[P'{CVcDf"w1,P=vuoGX;IYD:}CDV?TM$w/#
v LrD}CDV?TG8Zx(D1ddtP,|D8n4PDX7M}]}C/:Zf"wD;!ix
rPDLH#
v Z,;1ddtPLrD$w/G89CPDf"i/O,r_|+7X5,G<PG)iDzkr}
]#

72 T\\m8O
}CDV?TCDLr_Pn!$w/,r*}Z9CDiPttnzK4Pzkr}]#&\`1+}CD
V?TnDLr_POsD$w/,r*h*|`Di4]IOs6'DCJX7#

r*+?vi0k=cNa9D3;x(6ph*s?D1d,ZVcDf"w53PP'`LD?jMGT
3V==hFMb0zk,bV==*#V$w/M5J;y!#

B<5wKZS}L6pOCk5D5yiv#LrDZ;vf>G4UI\D`4rPb0D#Z;vS}
L PriSub1 |,LrDkZc#|<U9CwS}L PriSub2 M PriSub3#LrP;);#CD/}h*
(zS}L SecSub1 M SecSub2#Z+YivBh*msS}L ErrSub1 M ErrSub2#

< 15. }CDV?T. <DOk?VhvKgNb0;v~xFLr9.T>OMD}CV?T#~xFI4PD~PW


HG PriSub1 D8n,sfzP SecSub1"ErrSub1"PriSub2"SecSub2"ErrSub2 M PriSub3 D8n#Zbv
I4PD~P,PriSub1"SecSub1 M ErrSub1 D8n<CKZ;vZf3f#PriSub2"SecSub2 M ErrSub2 D
8n<CZ~vZf3f,PriSub3 D8n<CZ}vZf3f#SecSub1 M SecSub2 \Y9C;ErrSub1 M
ErrSub2 2+Y9C(g{xC}) #rK,CLrDb0mVK}CDV?Tn,T0I\a9CHyhZf|`DZ
f#Z<DZ~?VP,PriSub1"PriSub2 M PriSub3 ;CKK`Z,"<CKZ;vZf3f#PriSub3 .sG
SecSub1"SecSub2 M ErrSub1,|G2,<CKZ~vZf3f#ns,ErrSub2 ;Zns,<CKZ}vZf3
f#r* ErrSub2 I\S;h*,bVivBauY;3DZfhs#

LrDu<f>}CDV?TOn,r*Z(#ivBKPa<C}vZf3f#NS}LMmsS}L+L
rDw76V*omOV*D}N#

LrDDxf>9wS}LKK`Z,sfEOKPN}OYD/}#X*DmsS}L(+Y9C);ZI
4PLr)K#VZ;h*;NELA!M;<C;v(x;G0fh*D}v)Zf3fMI&mLrDn
U(/}#

G!}CDV?TM$w/G`TZ1dx(eD#g{Lr4WNKP,dP?;WN<Cs?1d"R9
C;,DS}L/,rk"T+?;WND$w/uAn!#

DfwMw._
(#,DfwUdDVdME/T0#Vw._&Zdz4,G`kwD0p#

Lr1Dw*pNG\bfZIT{}`kwE/<uDa9#}g,g{zZLrD;vX|-7P9C;
vS}L,r1SekCS}LTn!/4P1d2mT`kwGOJD#g{S}LQ-b0Z;v;,D
.c #iP,+G,|;\I`kw1Sek#

_Y:fM TLB
_Y:fI#f*;bv:ex(TLB),TLB P|,n|9CD8nD>r}]3DibX7=5JX7D
3d#

!vZ&mwDe5a9M#M,&mwP;v=8v_Y:f4#fBfD}]:
v }Z4PDLrDw?V
v I}Z4PDLr9CD}]

T\f.M5V 73
v TLB

g{"z_Y:f4|P,0k;vj{D_Y:f_h*}.v&mw\Z#g{"z TLB 4|P,Fc;


v3fib=5JD3dI\h*8.v\Z#+7DI>I4Pivv(#

49;vLrM|D}]ITfk_Y:f,9CDP}r TLB kZ=`(4}CV?T=M),0kyPZ


]yhD CPU \Z=`#}G8nM}]`NX49C,qr0k|GyhD*z<Lr\4P1dD\s
;?V,b<B53T\5M#

CD`L<uIT#$LrDweMdMB}w!I\!#w}L0d51wCDyPS}L&CG`ZD#
I\T!Div,g~NDms,&C;-}wePDbT#g{ivfD"z,r&CZ%@DS}LPx
P&m#yPb`S}LZ#iDax&&CiOZ;p#bV2EuYK9CJMDzk<C9CJ_D_
Y:f_PDUdDI\T#Zs#iP,;)r_yP9CJMDS}LI\a<C8uS4;XAkZf
D3f#

,yD-rT}]a92JC,!\P1PX*|Dzk49%`kwXZ}]<VDfr#

}g,;)XsKc,qXsK(,|,PG)g{r%`kr}CV?TMnDc(#XsKc(#|(3
rf!Xs}],}gwCZP*XDP*X#?v`kw<PXZf"wXs<VDXbfr#FORTRAN `
#C `kw4P*
kw4P*wDq=<CXs(4Z 1 PDyP*XsfGZ 2 PDyP*X,TK`F)
wDq=<CXs#g{Xs\!,rP*XMP*XIT|,Z}]_Y:fP,&mwM!c%*ITn
lYHKP#+G,fEXss!DvS,bVP/PKc}CDV?Tdn,nUan=9}];\Y#V
Z_Y:fP#5JO,P/PKcDT;f!#=zz_Y:fD53_$#=,dPf!D*XV{.H
_Y:fs,a?Fu<f!D*Xxv,;sT`,}]YNX4Kf!#=#

K`Xsf!#=D#fbv=8G+Kc.V*i,by`,*XD`XKcITZ1|G9#fZ_Y:
fP14P#bV#f<uPvu4a!#

}5Vv(R;*sTXsYwc(Df>xP`k,b)c({Cu4a!Md{E/<u#a{GXsK
(T\C= 30 6Da_#-w{D}L;Zy>_Tz}S}L(BLAS)b /usr/lib/libblas.a P#;v|
sDT\w{S}L/G“$LkF'S}Lb(ESSL)”mILr#

y>_Tz}S}LD&\MSZG<Z AIX 5L Version 5.3 Technical Reference P#*9Cb,Xk20


FORTRAN KP173#(#,C'&C9CCb4xPXsMr?Kc,r*S}L-}w{Io=C'T
:;I\o=DLH#

g{}]a9ILr1XF,rI\aPd{&'##f-rGZI\D1r+519CD}]r|Z;p#
g{;va9P|,51f!DXFE"M<{f!Dj8}],k7#XFE"GT,xDVZVdD#b
avSZyPXFE"0k=_Y:fP1zz%v(rAYn!}?)_Y:f4|PDI\T#

$&mwM`kw{C
Z8nXB{mP,P8vE/6pxh`kwT;,LHDTI#

;vLr1*kSZ3(x(zwOKPD3vx(LrqCn_I\DT\,Xk&mBf8c"bBn:
v $&mwIT(}XB{m;)4zka94NI;v&\O`1D4#i,C#iIT`kI|P'J
DI4Pzk#
v }gfZ;)e5a9d?;y,fZ;)`kw!nJPTXbd?rd?/OxPnE`k#
v Lr1IT9C #pragma &\4(*Lr3)=fD C `kw,Lr+Jm`kw(}ME;)n5i
vDYh4zI|P'Dzk#

74 T\\m8O
g{;\xP5i,Lr1M&<UxPE/$w#-E/M4-E/DzkZT\ODnp8u<\s,T
AZ;C;<U9Cy>E/(`kw|nD -O !n)#(;D}bGT1SzkzIPXb*sDbTi
v,g9C tprof $_xPod6pDT\Vv#

b)<uaT3)LrzznbDT\a},+7(DViOa9LrzznQT\I\h*s?DXB`k
M@@#

PXP'9C`kwD<IDj!V[,kND Optimization and Tuning Guide for XL Fortran, XL C and XL


C++#

E/6p
`kwTdzIDzkDE/LH(} -O j>xPXF#
No optimization
Z;P -O jGDyPf>P,`kw;xP8nXEr;wd{DxT\D"TxzI1Szk#
-O r -O2
b),HDjG9`kwyZzkXED#XYhxxPE/#;9C #pragma 18n.`DT=I
[#C6p4PGm~w._<u"-79*rr%$F`FT#|9^FK`kw\;9CDZf
s!#
-O3 Kj>8>`kwT9C}+DE/<u,9CXhD!I\`DZf45VnsE/#g{LrT
Z!cl#"c{Er_XErFcD+H0lG#tP,rKE/6pI\<BLrD&\T|
D#+ -qstrict !nk -O3 iO9CI\bb)1wC,+*6v;)T\z[#iO9C -qhot !
nk -O3 9$FD`FTM;)9*I*I\#b)DdDa{GsDr4SD}L9C -O3 !n
(I\k -qstrict r -qhot ;p9C)aP;yr|CDT\,|GZOg`kwf>P9C} -O
!n#
-O4 Kj>k -O3 -qipa H,,_PT/zIDe5a9M=(OmkDw{!n#
-O5 Kj>`FZ -O4,}K -qipa = level = 2 Div#

X(2~=(`k
ZkTX(2~=(xP`k.0,&C<G`vBn#

53I9C`V`MD&mw#(}9C -qarch M -qtune !n,IkTb)&mwDXb8nMXp&m


\&E/Lr#

kq-BP<r:
v g{LrvKPZ%v53rKPZ&mw`M`,D;i53O,r9C -qarch !n8(&mw`M#
v g{LrKPZ;,`MD&mwD53ORzIT7(DV`MD&mwGnX*D1r,k!q!1
D -qarch M -qtune !nDhC#FORTRAN M HPF C'IT9C xxlf M xxlhpf |n4;%X!q
b)hC#
v g{#{LrITKPZyC`MD&mwD53O,x;#{LrKPZ3;X(D&mw53,;*
!q -qarch r -qtune#

string.h S}LT\D C !n
Yw53a)K+V{.S}L6k&CLrx;GS libc.a 9C|GD\&,SxZ!KwCM5X4S1
d#

*6kV{.S}L,&CLrD4zkZ9CS}L.0XkPBfbvod:

T\f.M5V 75
#include <string.h>

T\nQD C M C++ `kgq


\`ivB,C 9lDT\I>;wT,P)uAk1u`4#

PgB;)iv:
v ZNNI\DivB,C int zf char r short#

s`}ivB,char M short }]nh*4P|`8n#nb8n*(Q1d,"R,}GGZsD}iP,


(}9CO!D}]`MZ!B4DyPUdH(}vSI4PLrDs!xzzD+F?*s#
v g{;(*9C char,ZI\DivBZ0fSO unsigned#

;v signed char d?Z?N0kDfw1H unsigned char `<C=u8n#


v !I\9CV?(T/)d?x;G+Vd?#

+Vd?HV?d?h*|`D8n4f!#mb,Z1YE"D`4ivB,`kwYhyP+Vd?
I\QI3vS}LwCDd#bvDdTE/p4wC,r*NNZS}LwC.s9CD+Vd?5
XkXB0k#
v 1PX*f!+Vd?(;kd{_L2m)1,+d54F=V?d?P"R9CC1>#

}G+Vd?;f!;N,qr9CV?1>a|P'J#
v 9C~xFzkx;GV{.4G<MbTwViv#V{.DC}]M8nUd#}g,rP:
#define situation_1 1
#define situation_2 2
#define situation_3 3
int situation_val;

situation_val = situation_2;
. . .
if (situation_val == situation_1)
. . .

HTBrP|P'J:
char situation_val[20];

strcpy(situation_val,"situation_2");
. . .
if ((strcmp(situation_val,"situation_1"))==0)
. . .
v 1Xh9CV{.1,!I\9CL($HDV{.x;G^P9$HIdDV{.#

mem*() 5P}L(g memcpy())HT&D str*() }L(g strcpy())l,r* str*() }LXkli?


vVZGq* null,x mem*() }Lr;C#

`kw4P1d
P`VrXI0l`kwD4P1d#

ZYw53P,C `kwIT(}=v;,D|n4wC:cc M xlc#cc |n(z7O;1CZwC53D


C `kw)+9 C `kwT langlevel=extended ==KP#bV==JmTG ANSI f]DVP C Lr
xP`k#b,yDC&mw1d#

g{`kPDLr5JOG ANSI f]D,C xlc |nwC C `kw|P'#

76 T\\m8O
9C -O3 j>Q-~=|,K -qmaxmem !n#bv!nJm`kw9C!I\`DXhZf45Vns
E/#bVivaP=V0l:
v Z`C'53P,;vsD -O3 `kI\DCc;`Zf,SxTd{C'9CDT\p4wC#
v Z;PO!5ZfD53O,;vsD -O3 `kI\DCc;`Zf,<Bw3YJO_,`kYHu}#

Zf^FLr
T0_Z,&K~3)73(g DOS 73)D07^FDLr1xT,256 MB ibZfNFuGP'^^
s#Lr1"TvTf"w<x,*n!76$HMnsr%/xP`k#;RDG,bV[cfZ;v1
c#

ibZfGdsK,+YH2IdK#9CDZf=`,YHM=},R=_X5GG_TD#;*5JO}
IyPLr(4$w/\M)<CDibf"w\?HzwPG]f5Zf?T!,ibZfM\T|F5Z
fDYHKP#fEyPKPPDLrD$w/\M%%,}ICD3f!},ZfT\To==v}?6D
6}8YB5(g{ VMM Zf0kXF;XU)#g{53o=bvLH,MF.*53_$#53(Q8
uyP1dxP3fwH"R;\IPCD$w,r*?vxL<Z"TSd{xL!X]IT:$w/yh
Df"?#g{ VMM Zf0kXFGn/D,MIT\bbVTR,VD53_$,+*TTxvSl&1
d*z[#

IZfDM'9ClID566sZI_Y:fDM'9ClID56,r*ZfkELZYHODnl*H
_Y:fkZfZYHODnlsC`#_Y:f4|P\<C8.v CPU \Z,x13JO(#h* 10 A
kr|`D1d,2MGAY 400000 v CPU \Z#

!\ VMM Zf0kXFIT7#u<53_$iv;ad*T@f,+;X*D13JOT;?SK;(z
[,lIl&1dd$MLB?uY(kNDZ 126 3D:9C schedo |nxP VMM Zf0kXFw{;)
#

Iw3zka9
*+LrDzk$w/uAn!,#f?jMGTZ!xrZ514PDzkr|,TSOY4PDzkPV
kv4#

XpG:
v ;*+ms&mzkD$iEIP#+|GEk;,S}LP,nCG;,D4zk#iP#b;vTm
s76JC,T;#CDNN&\!n2JC#
v ;*fb9l0k#i#"T7#51wCDTs#ikwCLr!I\|#I\YwCDS}LiI
(mkO)DTs#i&C/PZ0k#iDax&#|G<]D3f\Y;Ak#

Iw3}]a9
*+}]$w/uAn!,k"T/P#C}]T0\bTibf"w3f;X*D}C#

XpG:
v C malloc() r calloc() S}L4vks5Jh*DUds!#15Jiv;9C}iD;!?V1,Pp
ks;su</nsD}i#1zC=;vB3fC4u</}i*X1,z5JOG?F VMM Sp&T
!;v5Zf3f#fs,15PC3fDxL"TYNCJ|1,alI13JO#malloc() M calloc()
S}LDnl;vvZSZO#
v r* calloc() S}L+VdDf"wCc,|k?;vVdD3f`X,x malloc() S}L;kZ;v3
f`X#g{zC calloc() S}LVd;sixr,;snu;9C;!?V,G4zT53)SK;X*
D:X#;v3fXku</;g{|GD5Zf!;XU,rQu</+S49CD3fXk4v=w
3Ud#bVivKQ I/O Mw3Ud[#

T\f.M5V 77
v sa9(g:ex)D4mIT}p`FDJb#g{zDLr4Ps?0R3vX(\?D4=zY,
k<G#V4SM\?k}]Vkr9C"Pm=(4zf#
v }CV?Tb6E1dODV^T,x;vvGX7UdO#vZ9C.0u</}]a9(g{Zy>
O)#ZX:X53P,Zu</M9C.d$1d$tD}]a9P!;T!D#U#;szDLrMa
Z*<9C}]a91"z;X*D13JO#
v ,y,g{gH9C;vsa9,;skLr#`?V^X*,|&Ca;ME#9C free() S}L4ME
I malloc() r calloc() S}LVdDUdG;;D#free() S}LvvMEa9<CDX76'#*ME
5ZfMw3Ud,2I9C disclaim() S}L4EzUd#T disclaim() DwC&CZwC free() .
0xP#

sCL(f"
*\b-7M,1,!?V53Xk]fZ5ZfP#

TKzkM}]xT,$w/DEn;Pbe,r*yP]fE";1;Z5Jf"wP,;[|GGq;9
C#NN]fzkr}]DLr(gC'`4Dh8}/Lr)Xk*P8hF(rP8li,g{PKZD
0)T7#;9CnY?D]ff"w#PgB;)/d>}:
v zkyZ3v0k#i(I4PD~)x]f#g{3vi~Z;)Xk]fD?j#i,xd{GIw
3D,r+]fD?j#ir|I*;v%@D0k#i#
v r*I\fZJbx]f#ir}]a9G;:pND#hF_&C.CZDVivBI\h*E",T
013JOGqZ]mD^H.Z#
v ]fa9yhsDs!GI:Xv(D,g:exX,|G&CGII53\m1wZD#

T\`XD20<r
Z20}L.0M20}LP,P\`Jbh*<G#

Yw53200<r
h*<G=Viv,gB:
v ZB53O20Yw53

*<20}L.0,7(zQTELD~53Mw3UdDs!M;CwvKv(,T0KbgNkYw
53Mb)v(xP(E#
v ZVP53O20B6pDYw53

g{z*}6*B6pDYw53,k4PTBYw:
– klizGq}Z9C /etc/tunables/nextboot D~#
– g{zD79C /etc/tunables/nextboot D~,G4kZWNXB}<.sli
/etc/tunables/lastboot.log D~#

"&mw200<r
9C1!"&mwwHN},g1d,Vx1d#

}GzPZ8uH,DdCOD`,$w:X=fDc:`SMw{-i,qrZ201;*Ddb)N}#

kNDZ 87 3D:"&mwT\;TKb20s(i#

78 T\\m8O
Zf200<r
Zz_P53T5J$w:XDl&=fD-i.0,;*vNNZfP5=fDDd#

kNDZ 109 3D:ZfT\;TKb20s(i#

EL200<r
(eM)9_-mDzFT<xPI\DnQ1!5!q#+G,g{5320_*$ZD}]f"M$w:
Xhsx(F_-mDs!M<C,r|PI\qCnKzbDEL I/O T\#

PgB;)(i:
v I\D0,1!mi rootvg &C;I53nu20DommiI#(e;vr|`d{mi4XF53PD
d{omm#bv(iT53\mMT\<PC&#
v g{;vmiI;vTODommiI,zIT(}BfD=(.!T\:
– T_P%vommDmixPu<(e#
– ZBmiZ(e_-m#bv(e9miDU>_-mVdZZ;ommO#
– +d`DommmS=miP#
– ZBvSDommO(e_n/TDD~53#
– Z|,U>_-mDommOv(e,Mn/TD~53(g{PD0)
#;P1 I/O a}pU>D~5
3(JFS)DU>Bq1,bEa0lT\#

bV=(S_n/T}] I/O PVkvU> I/O n/,SxvSKX~DI\T#bV<uT NFS ~


qwT\PXpX*D0l,r*}]MU>4YwXkZ NFS T3v4Yw"v I/O jIEE.0j
I#
v !g(er)9_-m=nsZ{s!#*o=9T\Yg_-m`ZR;ZZ{D;CDnsI\T,
WH*(er)9|G#
v _9CJ_-m&C<]`vEL}/wD`v?V#g{ SMIT LrD Add a Logical Volume A;(l
Y76:smitty mklv)OD RANGE of physical volumes !nhC* maximum,rB_-m+V<
ZmiDomm(r_T=PvDomm/)P#
v g{53P;,`MD}/w(r_zZ"Tv():NV}/w),k<GBfD<r:
– +(#G3rf!DsD~EknlDICEL}/wP#
– g{zZ{513rf!;ZnlEL}/wODsD~,G4^F?vELJdwDEL}/Lr}
?#
– ZI\D1r,x_YJdw=SX|D_]?T\hsD}/w#b)Jdw_P;)d{ELJd
w;PD&\,g,x4D\&#
– ZO!DEL}/wO,#fOsR51f!D3rD~D_-m&CVdZommDb_X#b)E
LDbcHx?;E@P|`Di,PzZa_3rf!T\#
– Z-< SCSI \_O,ns`ED}/w(G)_Pns}VD SCSI X7D}/w,Zom}/wOh
C)Pn_EH6#s4Df6##"Tk-<f6#Vf]T#rK,EH6Sn_=nMD3rM
G:7-6-5-4-3-2-1-0-15-14-13-12-11-10-9-8#

Zs`}ivB,bV0l";wT,+RG*@sD3rD~YwZCJ\_1+}V!D}/wE
}Zb#z2m&CdC#fnYgl&1dD}]DEL}/w,}];Z?y SCSI \_Dn_X7
&#

T\f.M5V 79
lsdev -Cs scsi |n(f?y SCSI \_O10X7Vdiv#Z-< SCSI JdwO,SCSI X7G
dvPZDT}VDZ;v}V#ZTBdv>}P,;v 400 GB ELD SCSI X7* 4,m;vD
X7* 5,8 AWExzDX7* 1,CDROM }/wDX7* 3#
cd0 Available 10-80-00-3,0 SCSI Multimedia CD-ROM Drive
hdisk0 Available 10-80-00-4,0 16 Bit SCSI Disk Drive
hdisk1 Available 10-80-00-5,0 16 Bit SCSI Disk Drive
rmt0 Available 10-80-00-1,0 2.3 GB 8mm Tape Drive
– s?9CR(#fzf!DsD~,g}]b,&CV<Z=vr|`ommO#

kNDZ 149 3D:_-mMEL I/O T\;TKb20s(i#

w3Ud<VMs!
(#(iw3UdDs!\MAY&*zw5Zfs!D=6,;1=Zfs!* 256 MB(w3Ud 512
MB)
#

":TsZ 256 MB DZf,PgB(i:


\w3Ud = 512 MB + (Zfs! - 256 MB) * 1.25

+G,S AIX 4.3.2 MSY3fUdVd*<,bv<rI\as(H5Jyh|`DELUd#PX|


`E",kNDZ 134 3D:3fUdVd;#

mkivG&CP8vs!sB`HDw3Ud,?;v<;Z;,omEL}/wO#g{zv(4(nb
Dw3Ud,Z:XH rootvg Pomm|aDommO4(|G#ZVdw3Udi1,VMM S?;vPI
CUdDn/w3Ud@NVdDi#153}<1,;Pww3Ud(hd6)&Zn/4,#rK,yPZ
}<ZdVdDw3Udi<;Zww3UdP#bb6Eww3Ud&CTsZNw3Ud#Nw3Ud&
C+<_P,ys!,T7#@N4PDc(\P'$w#

lsps -a |na)K53PyPw3Ud10{CLHDlU#z2IT9C psdanger() S}L47(w3


UdD9CkYg6p9P`6#w*;v>},BfDLr9C psdanger() S}L4a)1,}P51D
/f{":
/* psmonitor.c
Monitors system for paging space low conditions. When the condition is
detected, writes a message to stderr.
Usage: psmonitor [Interval [Count]]
Default: psmonitor 1 1000000
*/
#include <stdio.h>
#include <signal.h>
main(int argc,char **argv)
{
int interval = 1; /* seconds */
int count = 1000000; /* intervals */
int current; /* interval */
int last; /* check */
int kill_offset; /* returned by psdanger() */
int danger_offset; /* returned by psdanger() */

/* are there any parameters at all? */


if (argc > 1) {
if ( (interval = atoi(argv[1])) < 1 ) {
fprintf(stderr,"Usage: psmonitor [ interval [ count ] ]\n");
exit(1);
}
if (argc > 2) {
if ( (count = atoi( argv[2])) < 1 ) {
fprintf(stderr,"Usage: psmonitor [ interval [ count ] ]\n");

80 T\\m8O
exit(1);
}
}
}
last = count -1;
for(current = 0; current < count; current++) {
kill_offset = psdanger(SIGKILL); /* check for out of paging space */
if (kill_offset < 0)
fprintf(stderr,
"OUT OF PAGING SPACE! %d blocks beyond SIGKILL threshold.\n",
kill_offset*(-1));
else {
else {
fprintf(stderr,
"WARNING: paging space low. %d blocks beyond SIGDANGER threshold.\n",
if (danger_offset < 0) {
fprintf(stderr,
"WARNING: paging space low. %d blocks beyond SIGDANGER threshold.\n",
danger_offset*(-1));
fprintf(stderr,
" %d blocks below SIGKILL threshold.\n",
kill_offset);
}
}
if (current < last)
sleep(interval);
}
}

EL5qT\be
ST\[cv",5qFwz[\_,x“4i$”D5qFwz[9*|_(?4;NEL`}*;&),x
“4i$”M“5q4;BT”D5qFwz[G1Pn_D(EL}*SO 0 yf0@)#

g{}ZFw5q"R“5q4;BT”&Zr*(1!5)4,,k<G+1>EZELbcxr,r*“5
q4;BT”E"\G4Z 0 yfP#S-CGH4,;T4YwFw5qHO:s#!\ lslv |n(#T>
G5q_-mD“5q4;BT”Gr*D,+";P"z5J&m}L,}G“1>”5sZ;#“4i$”1!
*XU,r*|TG5q_-m;Pbe(Mz[) #

S AIX 5.1 *<,a)K;VF*“;/5q4;BT”(MWC)D5q4;BT!n#CZ7#5q4;B


TD1!zF*“w/ MWC”#"z@#sxPXB}<1,“w/ MWC”Ia)lYV4#+G,bVC&G
T4T\B5*z[D,HdGZfz4DivB#{C“w/ MWC”IT\bb;4T\p',+@#sXB
}<1Xk9C syncvg -f |n4V/,={vmi,.sC'E\CJCmi#*o=bv?D,Xk{C
miDT/S(#

tC“;/ MWC”;+I\b“w/ MWC”x4D4T\p',xRZCJVx1_-m+T/XB,=#bb


6E\m1;XV/,=_-mr{CT/S(#“;/ MWC”D1cGZyPVxXB,=.0I\vVO}
DAYw#

Z4(r|D_-m1,IZ SMIT P!qN;5q4;BT!n#!qD!nvZ5q_-m1(1>} >


1)Eaz'#

5qux/ LV T\be
_-m5qFwMux.V(}m~+ RAID 1 D}]ICTk RAID 0 DT\j+aOZ;p#

Z AIX 4.3.3 .0,_-m;\,1xP5qFwMux.V#|,u4M5q_-mDmi;\<k AIX


4.3.2 r|gf>#

T\f.M5V 81
(E200<r
XZ}7DJdw<VMwVT\<r,kND PCI Adapter Placement Reference#

kNDZ 213 3D:TCP M UDP T\w{;MZ 241 3D:w{ mbuf XT\;PD(Ew{(iD**#

82 T\\m8O
yZ POWER4 D53
P`VT\JbkyZ POWER4™ D~qwPX#

{Kb`XE",kNDZ 195 3D:D~53T\;"Z 31 3D:J4\m; T0 IBM l$i The


POWER4 Processor Introduction and Tuning Guide#

POWER4 T\v?
POWER4 "&mw|,`VT\v?#
v *TF`X&m<u(SMP)wKE/,a)K|CD8n"PT#
v ICK|CD8nM}]$!c(0|P'D8nV'$bzF#
v |a)KH POWER3™ "&mw|_DZfxm,"R<ZT_C`D5J$w#

"&mwHO
BmHOK;, IBM "&mwDX|=f#

m 1. &mwHO
POWER3 RS64 POWER4
5J 450 MHz 750 MHz > 1 GHz
(cKc%* 3 2 2
!cKc%* 2 1 2
Xk/f"%* 2 1 2
V'/d{%* 1 1 2
+dxm 4 4 5
8nV'$b /, 2, /,
8n_Y:fs! 32 KB 128 KB 64 KB
}]_Y:fs! 128 KB 128 KB 32 KB
2 W_Y:fs! 1, 4, 8 MB 2, 4, 8, 16 MB 1.44
3 W_Y:fs! ;JC ;JC f&mw}?xd/
}]$! 'V ;'V 'V

yZ POWER4 D53IluTv?
S AIX 5.1 *<,^[Z$w:XMT\O,KPZyZ POWER4 ODYw53PEHT0f>|_DI)
9T#

$w:XI)9TG8&mp%vSD$w:XD\&#T\I)9TG8vSm~J4Tzcs$w:XD
h*1+T\,VZIS\D.=#

BfGI)9Ta}D8vw*=f#|GZ AIX 5.1 Pi\}#

© Copyright IBM Corp. 1997, 2006 83


}]bDL(2mZf
AIX 4.3.3 M AIX 5.1 I+Zf3;1#tZ5ZfP#bVzFF*L(Zf#

L(;iZfxIT@93fwHLr5!KiZfsfD3f#

OsZf'V
64 ;ZKy'VDns5Zf]?* 256 GB#

bG@] 64 ;ZKD2~53M I/O dCyhDt/Zf*sx7(D#64 ;ZK;fZn!w3Ud]


?#bGr* AIX 4.3.3 ZK'VSYw3UdVd#

64 ;ZK
T AIX 5.1 *<,Yw53a)K 64 ;ZK,kT 32 753OI\^FLB?D?1#

POWER4 53kT 64 ;ZKxPKE/,64 ;ZK<Za_ RS/6000 System p 53DIluT#|9T


Z POWER4 53OKP 64 ;&CLrxPKE/#64 ;ZKD`ky}M 32 ;ZK8uG;yD#+G,
64 ;DzkGC|HxD`kw`kD#

64 ;ZKJm9C|s]?DomZf,2a_KI)9T#32 ;ZKDomZfO^G 96 GB#

Z 32 ;ZKPD 64 ;&CLr
64 ;&CLrKPZ POWER4 53 64 ;ZKODT\&C_ZrHZ,;&CLrKPZ,;2~ 32 ;
ZKODT\#

64 ;ZKJm 64 ;&CLr;h*XB3drX\53wCN}#64 ;ZK&CLr9CK(EkT


POWER4 53xPKE/D|_6D`kw#

Z 64 ;ZKPD 32 ;&CLr
s`}!OB,32 ;&CLr\Z 64 ;ZKOKPxT\";B5#

IZN}X\,32 ;&CLrKPZ 64 ;ZK1dT\;cTMZKPZ 32 ;wCODT\#bVT\B


5(#;,} 5%#}g,wC fork() |nI\lIwT|sD*z#

G POWER4 53 64 ;ZKOD 64 ;&CLr


64 ;&CLrZG POWER4 53 64 ;ZKODT\I\MZ`,&CLrZ`,2~ 32 ;ZKODT\#

G POWER4 53<ZES= POWER4 53,1Yo=nQ 64 ;ZKT\yhD'V#

G POWER4 53OD 64 ;ZK)9


POWER4 53OD 64 ;ZK)9DT\&HZr_Z`,2~u~BD 32 ;ZK)9#

+G,G POWER4 zwOD 64 ;ZK)9DT\I\MZ`,2~u~BD 32 ;ZK)9,r*G


POWER4 53O1YT 64 ;ZKT\DE/#

:v?MU>D~53;
DxD JFS(2F* JFS2)H JFS PE|CDI)9T#

84 T\\m8O
mb,JFS2 G 64 ;ZK,ODD~53#zI!q9CJOZ 32 ;73D JFS D~53,rGJCZ 64
;ZKDDxD JFS D~53#PXv?M JFS D|`E",kNDZ 195 3D:D~53T\;#

yZ POWER4 D53 85
86 T\\m8O
"&mwT\
>wb|,BP<uD`XE":lb'XLrr&mw\/MLr,T0+dT53T\D;{0l5=n
MLH#

g{;l$"&mwwH,rZLxDA.0I\h*NDZ 31 3D:&mwwHLrT\;wb#

"&mwT\`S
&m%*G53PnlDi~.;#

%vLrZ3v1L9"&mw#V1&J* 100%(2MG5,UP 0%,H} 0%)}kSTODiv`T


Y{#uAZX:XD`C'53P,<{avV;) 10 Ak(ms)D1dN,Zdax1yP_L&ZH
}4,#g{`Sw$1dXT>"&mw1&J* 100%,r\PI\G3vLr]kK@-7#49Lr“
vv”G<CO`J4x;G@#K,2h*+|6pv4"xP&m#

vmstat |n
Z;v*9CD$_G vmstat |n,C|nI8Ya)XZwV53J4Mk.`XDT\JbDr*E"#

vmstat |n(fXZZK_LD3FE",|(&ZKPMH}SPPD"ZfPD"3fwHPD"ELP
D"PO"53wC"OBDP;M CPU n/DZK_L#y(fD CPU n/GC'=="53=="U
P1dMH}EL I/O DYVH8?V`#

":g{9C vmstat |n1;xNN!n,r_;xP1ddtM(I!)F}N},}g vmstat 2 10,


G4Z;P}V*T53XB}<T4D=y5#

w*;v CPU `Sw,vmstat |nEZ iostat |n,r* vmstat |nGv/D,9C|D?(f;PD


dv|]W(h,"Rg{P\`EL,S=53P,IKyf0D*z|Y#BfD>}ITozz6p;
vLr'X1r CPU }H\/TAZ;\Z;v`C'73PKP1Div#
# vmstat 2
kthr memory page faults cpu
----- ----------- ------------------------ ------------ -----------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
1 0 22478 1677 0 0 0 0 0 0 188 1380 157 57 32 0 10
1 0 22506 1609 0 0 0 0 0 0 214 1476 186 48 37 0 16
0 0 22498 1582 0 0 0 0 0 0 248 1470 226 55 36 0 9

2 0 22534 1465 0 0 0 0 0 0 238 903 239 77 23 0 0


2 0 22534 1445 0 0 0 0 0 0 209 1142 205 72 28 0 0
2 0 22534 1426 0 0 0 0 0 0 189 1220 212 74 26 0 0
3 0 22534 1410 0 0 0 0 0 0 255 1704 268 70 30 0 0
2 1 22557 1365 0 0 0 0 0 0 383 977 216 72 28 0 0

2 0 22541 1356 0 0 0 0 0 0 237 1418 209 63 33 0 4


1 0 22524 1350 0 0 0 0 0 0 241 1348 179 52 32 0 16
1 0 22546 1293 0 0 0 0 0 0 217 1473 180 51 35 0 14

KdvT>KZ;v@-7P+Lr}k=;v1&D`C'53Pyx4D'{#7}v(f(Q>}*
*)mw53=bZ 50-55% DC'"30-35% D53M 10-15% D I/O H}&#1-7Lr*<KP,yP
ICD CPU \Z<;DC#r*-7Lr;xP I/O,yT|IT<P0fr* I/O H}x4C}DyP\
Z#|cDG,bzm1;vPCxLEz CPU 1,<UP;vxL<8S\ CPU#r*-7LrDEH6
kyPd{0(xL;y,yT1m;vxLdCIVI1|2;X*;(CEz CPU#CLrKPs< 10
kS(ev(f),;sI vmstat |n(fDn/V4=O}#D#=#
© Copyright IBM Corp. 1997, 2006 87
nQ{CGC CPU Z 100% D1dP$w#bJCZ%C'53Div,;h*2m CPU#\D45,g{
us + sy 1dMZ 90%,r;O*%C'53G CPU \^FD#+G,g{Z;v`C'53P us + sy 1
d,} 80%,rxLI\*(1dZKPSPPH}#l&1dMLB?a\p&#

*li CPU GqG?1,<G vmstat (fPDDv cpu PM=v kthr(ZK_L)P#i4JOP2G


5CD:
v cpu

ZC1ddtZ9C CPU 1dDYVH8V#cpu PgB:


– us

us PT>KC'==By(Q CPU 1dDYVH#UNIX xLIZC'==B4P,2IZ53(Z


K)==B4P#1ZC'==B1,xLZ|T:D&CLrzkP4P,;h*ZKJ44xPF
c"\mZfrhCd?#
– sy

sy PjvK CPU Z53==B4P;vxLy(1dDYVH#b|(ZKxL(kproc)Md{h*


CJZKJ4DxLy{DD CPU J4#g{;vxLh*ZKJ4,|Xk4P;v53wC,"I
KP;=53==Sx9CJ4IC#}g,T;vD~DAr4Ywh*ZKJ44r*D~"0R
X(D;C,T0Ar4}],}G9CZf3dD~#
– id

id PT>K;P]R>XEL I/O 1,CPU UPrH}D1dYVH#g{;P_LI)4P(KPS


P*U),r53+VI;vF* wait D_L(VF*UP kproc) #Z;v SMP 53P,?v&m
w<P;v wait _LIVI#I ps |n(xP -k r -g 0 !n)zID(f+dj6* kproc r
wait#g{ ps (fT>bv_LD\F1dO_,bmwfZX*D1dN,dP;Pd{_L<8Z
CPU OKPrH}4P#53rKs?V1dUPMH}BNq#
– wa

wa Pj8T>K]R>XEL I/O M NFS SXELD CPU UP1dYVH#g{Z wait KP1A


YP;v4jIDEL I/O,C1dMi* I/O H}1d#}GxL9Cl# I/O,qrTELD I/O k
sa<BwCDxLh{(r/_),1=ksjI*9#;)xLD I/O ksjI,CxLMEkKP
SPP#g{ I/O \ljI,CxLIT9C|`D CPU 1d#

,} 25% D wa D5ITm>ELS53I\;P;}7=b,r_b2I\GEL\/$w:XDa
{#

PXT wa yw|DDE",kNDZ 149 3D:H} I/O 1d(f;#


v kthr

?kSZIydt1dOTwVSPPDZK_L}sCD=y5#kthr PgB:
– r

IKPDZK_L=y},|(}ZKPD_LM}ZH} CPU D_L#g{bv}VsZ CPU D}


?,AYP;v_L*H} CPU,H} CPU D_L=`,=PI\TT\zz0l#
– b

?k VMM H}SPPDZK_L=y}#b|(}ZH}D~53 I/O D_L,rIZZf0kXF


x]RD_L#

88 T\\m8O
g{xLIZZf0kXFx]R,r vmstat (fPDh{P(b)mw_L}?DvS,x;GKP
SPvS#
– p

TZ vmstat -I,G?kH}-<h8 I/O D_L}?#H}D~53 I/O D_L;|,ZdP#


v faults

XZxLXFDE",g]eMPOJ#JOPgB:
– in

Z3;1ddtP[b=D?kh8PO}#|`E"IZZ 152 3D:9C vmstat |n@@ELT\;


PR=#
– sy

Z3;1ddtP[b=D?k53wCN}#(}w7D53wC,C'xLIT9CJ4#b)w
C8>ZK4PwC_LDYw,"ZZKMCxL.d;;}]#r*$w:XM&CLrd/\
s,;,DwC4P;,D&\,yT;I\(e?kSP`Y53wCEc+`#+G(#42,Z
;v%&mw53O1 sy Pvs=,}?kS 10000 vwC1,r*sxPx;=wi(Z;v SMP
53O,bv}V*?v&mw?kS 10000 vwC) #;v-rI\G“V/”S}L,q select() S}
L#Tb;P,(ixP;vy<@@,xv}# sy 5DF}#
– cs

Z3;1ddtP[b=D?kSOBDP;N}#om CPU J48V*?v 10 AkD_-1d,#


Yh;v_L;wHKP,|+;1KP1=|D1d,Cj"1=;@Hr1=|T8Ez CPU XF
(#1xhm;v_L CPU XF(1,Xk#f0;v_LDOBDr$w73,"RXk0k10_
LDOBD#Yw53P;v\P'DOBDP;}L,yT?NP;";DQJ4#NNOBDP;
DTxvS,g1 cs HEL I/O MxgE"|YJ_C`,<&xPx;=wi#

iostat |n
XZ53GqPEL I/O s(DT\Jb,iostat |nGqCZ;!sDnl=(#

kNDZ 150 3D:9C iostat |n@@ELT\;#bv$_2(f CPU 3FE"#

BfD>}T>K iostat |ndvD;?V#Z;ZT>KTS53t/T4D3FE"**#


# iostat -t 2 6
tty: tin tout avg-cpu: % user % sys % idle % iowait
0.0 0.8 8.4 2.6 88.5 0.5
0.0 80.2 4.5 3.0 92.1 0.5
0.0 40.5 7.0 4.0 89.0 0.0
0.0 40.5 9.0 2.5 88.5 0.0
0.0 40.5 7.5 1.0 91.5 0.0
0.0 40.5 10.0 3.5 80.5 6.0

CPU 3FE"P(% user"% sys"% idle M % iowait)a)K CPU D9CJO#vmstat |ndvPj*


us"sy"id M wa DP2(fKb)E"#PXb)5Dj8bM,kNDZ 87 3D:vmstat |n;#mk
"bZ 149 3D:H} I/O 1d(f;PhvDT % iowait yvD|D#

sar |n
sar |nU/XZ53D3F}]#

"&mwT\ 89
!\ITC|4U/;)XZ53T\DPC}],+ sar |navS53:X,g{Iy5JO_MaSg
$HfZDT\Jb#+kGJ|`H,sar |nDIE|!#53,$K;5P53n/F}w,C4G<
wVn/"a) sar |n(fD}]#sar |n;a<Bb)F}w;|Br9C;;[ sar |nGqKP
b<aT/xP#y]8(x sar |nDIyYJMIyN},|vvSb)F}wPa!}]"#fB4#

(}|Dm`!n,sar |na)KES"3fwH"TTY Mm`d{D3FE"#sar |nD;vX*&\


G|a(f536(yP&mwD[O)D CPU 3FE"(T;)a{!=y5,TYVHm>,Td{s
M),r_(f?v@"&mwD3FE"#yTbv|nZ SMP 53OXpPC#

P}VivIT9C sar |n:

51IyMT>
*U/""4T>533F(f,kKP sar |n#

9CgB|n:
# sar -u 2 5

AIX aixhost 2 5 00049FDF4C00 02/21/04

18:11:12 %usr %sys %wio %idle


18:11:14 4 6 0 91
18:11:16 2 7 0 91
18:11:18 3 6 0 92
18:11:20 2 7 0 92
18:11:22 2 7 1 90

Average 2 6 0 91

b;>}4TZ;v%C'$w>,T>K CPU 9CJ#

T>T06qD}]
-o M -f !n(TC'x(D}]D~PxPA4)JmzZ=v@"=hP+zwDP*IS/#ZJbY
VZdb)Yw{D\YDJ4#

(}+MD~zIT9C%@D;(zw4Vv}],r*U/D~xFD~#tK sar |nyhDyP}]#


# sar -o /tmp/sar.out 2 5 > /dev/null

OfD|nZs(KP sar |n,T=kD1ddtU/ 5 N53n/}],"+(4q=/D)sar }]


f"Z /tmp/sar.out D~P#Tj<dv9CX(rIT\bA;dv#

BP|nSD~Pa! CPU E""+q=/D(fdv=j<dvP:


# sar -f/tmp/sar.out

AIX aixhost 2 5 00049FDF4C00 02/21/04

18:10:18 %usr %sys %wio %idle


18:10:20 9 2 0 88
18:10:22 13 10 0 76
18:10:24 37 4 0 59
18:10:26 8 2 0 90
18:10:28 20 3 0 77

Average 18 4 0 78

6qD~xF}]D~P#tK(fyhDyPE"#rKITwi?vI\D sar (f#b2JmZ;v%


&mw53OT> SMP 53D&mwX(DE"#

90 T\\m8O
(}X$Lr cron D53n/GJ
53P9l=v shell E>(/usr/lib/sa/sa1 M /usr/lib/sa/sa2)TI cron X$LrKP,b) shell E>
a)?U3FE"M(f#

sar |nwC;vPv sadc DxL4CJ53}]#/var/spool/cron/crontabs/adm crontab D~P|,K


y>Z(+Q"Mt)T8( cron X$Lr&N1KP shell E>#

Bf8PT>K;v^D}D\m1C'D crontab#;}%K}]U/D"MV{:
#=================================================================
# SYSTEM ACTIVITY REPORTS
# 8am-5pm activity reports every 20 mins during weekdays.
# activity reports every an hour on Saturday and Sunday.
# 6pm-7am activity reports every an hour during weekdays.
# Daily summary prepared at 18:05.
#=================================================================
0 8-17 * * 1-5 /usr/lib/sa/sa1 1200 3 &
0 * * * 0,6 /usr/lib/sa/sa1 &
0 18-7 * * 1-5 /usr/lib/sa/sa1 &
5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 3600 -ubcwyaqvm &
#=================================================================

TbV==U/}]PzZmwZ;N1ZP53D9Civ"7(9C_e1d#

PCD"&mw!n:

TZ sar |n,P\`PCDk"&mw`XD!n#

nPCD!n*:
v sar -P

-P !n(f8(&mwD$&mw3FE"#(}8( ALL X|V,I(fwv&mwD3FE"MyP


&mwD=y5#ZCZ8(*(fD3FE"DG)j>P,;P -a"-c"-m"-u M -w b8vj>I
k -P j>;p9C#

BfD>}T>K3v"&mwL(DLrZ 0 E&mwOKP1D$&mw3FE":
# sar -P ALL 2 3

AIX aixsmphost 2 5 00049FDF4D01 02/22/04

17:30:50 cpu %usr %sys %wio %idle


17:30:52 0 8 92 0 0
1 0 4 0 96
2 0 1 0 99
3 0 0 0 100
- 2 24 0 74
17:30:54 0 12 88 0 0
1 0 3 0 97
2 0 1 0 99
3 0 0 0 100
- 3 23 0 74
17:30:56 0 11 89 0 0
1 0 3 0 97
2 0 0 0 100
3 0 0 0 100
- 3 23 0 74

Average 0 10 90 0 0

"&mwT\ 91
1 0 4 0 96
2 0 1 0 99
3 0 0 0 100
- 3 24 0 74

?ZDns;P(T cpu PPDL._(-)*7)GyP&mwD=y5#vZ9C -P ALL !n1Ea


T>=y5(-)P#g{8(K&mw,b;P+;}%#ns;ZjGK=y5x;G;v1dA,#
tKyPZP&mwX(PD=y5#

BP>}T>KK1 vmstat Ddv:


# vmstat 2 5
kthr memory page faults cpu
----- ----------- ------------------------ ------------ ------------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
0 0 255636 16054 0 0 0 0 0 0 116 266 5 0 1 99 0
1 1 255733 15931 0 0 0 0 0 0 476 50781 35 2 27 70 0
1 1 255733 15930 0 0 0 0 0 0 476 49437 27 2 24 74 0
1 1 255733 15930 0 0 0 0 0 0 473 48923 31 3 23 74 0
1 1 255733 15930 0 0 0 0 0 0 466 49383 27 3 23 74 0

Z;vP`EDPG53t/T4D**#Z~P43K sar |nDt/,b)(fI(}Z}PxPH


O#vmstat |n;\T>yP&mwD=y"&mw{CJ#b`1Z sar |nD"&mw{CJdvP
DL._(-)P#
v sar -u

bT>K"&mw{CJ#g{;8(d{j>,bMG1!j>#|T>DE"k vmstat r iostat |


nD"&mw3FE"`,#

ZBP>}P,t/K;v4F|n:
# sar -u -P ALL 1 5

AIX aixsmphost 2 5 00049FDF4D01 02/22/04

13:33:42 cpu %usr %sys %wio %idle


13:33:43 0 0 0 0 100
1 0 0 0 100
2 0 0 0 100
3 0 0 0 100
- 0 0 0 100
13:33:44 0 2 66 0 32
1 0 1 0 99
2 0 0 0 100
3 0 1 0 99
- 0 17 0 82
13:33:45 0 1 52 44 3
1 0 1 0 99
2 0 4 0 96
3 0 0 0 100
- 0 14 11 74
13:33:46 0 0 8 91 1
1 0 0 0 100
2 0 0 0 100
3 0 1 0 99
- 0 2 23 75
13:33:47 0 0 7 93 0
1 0 0 0 100
2 0 1 0 99
3 0 0 0 100
- 0 2 23 75

Average 0 1 27 46 27

92 T\\m8O
1 0 0 0 100
2 0 1 0 99
3 0 0 0 100
- 0 7 11 81

cp |nZ 0 E&mwO$w,d{}v&mwUP#PX|`E",kNDZ 149 3D:H} I/O 1d(


f;#
v sar -c

-c !nT>K53wCJ#
# sar -c 1 3
19:28:25 scall/s sread/s swrit/s fork/s exec/s rchar/s wchar/s
19:28:26 134 36 1 0.00 0.00 2691306 1517
19:28:27 46 34 1 0.00 0.00 2716922 1531
19:28:28 46 34 1 0.00 0.00 2716922 1531

Average 75 35 1 0.00 0.00 2708329 1527

d; vmstat |n2T>53wCJ,+g{b)53wCG read()"write()"fork()"exec() Md{wC,


r sar |n2IT>|GD53wCJ#kXp"b fork/s ;P#g{|O_,rI\h*9CGJ5C
Lr(g trace |nr tprof |n)xPx;=wi#
v sar -q

-q !nT>KKPSP$HM;;SP$H#
# sar -q 5 3

19:31:42 runq-sz %runocc swpq-sz %swpocc


19:31:47 1.0 100 1.0 100
19:31:52 2.0 100 1.0 100
19:31:57 1.0 100 1.0 100

Average 1.3 95 1.0 95

runq-sz
?kSIKPD=y_L}MKPSP;<CD1dYVH(% VN]Wvm)
#
swpq-sz
VMM H}SPPD=y_L}M;;SP;<CD1dYVH#(% VN]Wvm#
)

-q !nIT8vGqKPK}`w5(runq-sz),rP;v1ZD3fwH?1#Z;v_HBqTD5
3(}gs5J4f.,4 ERP)P,KPSPI\P8Yv,r*?nBq;9CY?D"&mw1d#
g{3fwHGJbyZ,rKP vmstat |n#_D I/O H}mwfZOXDELyCn/,rIZZf
;cxzz}`D3fwH#

xmperf Lr
9C xmperf LrTd/DV*_<T> CPU 9Civ#

Performance Toolbox Version 2 and 3 for AIX: Guide and Reference Pj8hvK xmperf Lr#

9C time |nb?"&mw9C
9C time |nITKb%vLrM|D,=SLrDT\Xw#

"&mwT\ 93
time |n(f5J1d,2MGSLr*<=axDDC1d#|9(fCLry9CD"&mw1d?#"
&mw1dV* user M sys#user 5GILrTmM|ywCDNNbS}Ly9CD1d#sys 5GIL
rwC(1SrdS)D53wCy9CD1d#

user + sys .MG4PLrD1S"&mw\I>#b;|(ZK?VD"&mwI>,C?VIT5Gzm


LrKP,+5J";Zd_LOKP#}g,Lrt/1T!3!TzfSUPPmP!CD3!DI>"
;w*CLrD"&mw{DD;?V(f#

Z%&mwO,*5J1dM\"&mw1d.dDn5,4:
real - (user + sys)

GyPITSYCLrDrS.\SO;GLr>m5PD(Q#Z;v SMP P,ITPgB|F:


real * number_of_processors - (user + sys)

|F4Us!]uD3r,b)rXI\*:
v qCLrDD>M}]yhD I/O
v qCLr9CD5ZfyhD I/O
v d{Lr{DD"&mw1d
v Yw53{DD"&mw1d

ZBfD>}P,T0;ZP9CDLrC -O3 xP`kT9|KP|l#KPCLryhD5J (}#1S


1d) 1dkdC'M53"&mw1d.MDn5\!#CLr}Zq!|h*DyP1d,\I\T53P
d{Lr*z[#
# time looper
real 0m3.58s
user 0m3.16s
sys 0m0.04s

ZBfD>}P,(}+|D nice 5S 10,RGTOMDEH6KPCLr#|*(8u=6D1d4KP,


+d{Lr2PzaxP|GD$w:
# time nice -n 10 looper
real 0m6.54s
user 0m3.17s
sys 0m0.03s

k"b,RG+ nice |nECZ time |nP,x;G`4#g{RGQdk


# nice -n 10 time looper

raC=zIOM+H(fD;, time |n(/usr/bin/time),x;GRGx9CD time |nf>(Cf


>Z(Z ksh shell P)
#g{ time |nH4P,zC=DGZCf>,}Gz8( /usr/bin/time +^({#
g{Sm;v|nwC time |n,raC= /usr/bin/time#

time M timex |n"bBn


19C time r timex |n1*<GTB8vrX#

b)rX*:
v ;Fv9C /usr/bin/time M /usr/bin/timex |n#g{I\,k9C Korn r C shell D time S|n#
v timex -s |n9C sar |n4q!nbD3FE"#r* sar |nPIET,yT timex -s |n2G
gK#XpTZL]KP,timex -s |n(fD}]I\^(+743;vLrZ;v;\`X53PDP
*#

94 T\\m8O
v IZ531SNpD$H(10 Ak)MwHLr+ CPU 1d<CirZ_L19CDfr,time |nD
a{";Gj+7(D#r**T1dxPIy,Z,xKP.d;I\bafZ;(Dd/#bvd/
I1SNp4v(#LrKP1d=L,(fa{d/DYVH=s(NDZ 355 3D:CJ&mwF1
w;)#
v ;Fv9C time r timex |n(;[S /usr/bin r(}ZC shell D time /})4b?Z|nPOd
kD(}\@,SD;v|nrPDC'r531d#;v1ZDJbG,o(hvI\}p time |n;
b?dP;v|n,xTC'ms;xPNN8>#o(Z<uOG}7D,;G;\zzC'k*Dl
&#
v !\ time |nDo(;PDd,Z SMP 53O|Ddv4PBD,e:

Z SMP O5JDr-}D1dI\H;vxLDC'1dL#b1C'1dG_LrxLZyP&mwO
y(1dD\M#

g{;vxLP 4 v_L,Z;v%&mw(UP)53OKPCxLT>v5J1dsZC'1d:
# time 4threadedprog
real 0m11.70s
user 0m11.09s
sys 0m0.08s

Z;v 4 7D SMP 53OKPCxLaT>v5J1ds<;GC'1dD 1/4#BPdvmw`_LD


xL+|D$w:XV<=8v&mwO,ITDF|D5J4P1d#53LB?rKxvS#
# time 4threadedprog
real 0m3.40s
user 0m9.81s
sys 0m0.09s

"&mw\/MLr7(
*iR"&mw9C?n_DxL,P=Vj<$_,ps |nM acctcom |n#

m;vI9CD$_G topas `Sw,Z 15 3D:9C topas |nxP,x53T\`S;PTdxPKh


v#

9C ps |n
ps |nG;vinD$_,C46p53PKPDLrM|Gy9CDJ4#|T>XZ53PxLD3FE
"M4,E",gxLr_Lj6"I/O n/"CPU rZf{Civ#

>ZP,RG;V[k CPU `XD!nMdvVN#

ps |nD}vI\dvPTw;`,D==(f CPU 9Civ#


P 5G:
C xL|49CD CPU 1d(T1SNp*%;)
#
1d SxLt/T49C CPU D\1d(TVSMk*%;)
#
%CPU SxLt/T49C CPU D\1d}T_Lt/sy-zD1d#bGH?LrT CPU @5LHD
;V=(#

"&mwT\ 95
CPU \/

BP shell E>:
# ps -ef | egrep -v "STIME|$LOGNAME" | sort +3 -r | head -n 15

G;v/P53Pn|9CD CPU _H\/DC'xL(*Ke~p{,XBekKjbP)D$_:


UID PID PPID C STIME TTY TIME CMD
mary 45742 54702 120 15:19:05 pts/29 0:02 ./looper
root 52122 1 11 15:32:33 pts/31 58:39 xhogger
root 4250 1 3 15:32:33 pts/31 26:03 xmconsole allcon
root 38812 4250 1 15:32:34 pts/31 8:58 xmconstats 0 3 30
root 27036 6864 1 15:18:35 - 0:00 rlogind
root 47418 25926 0 17:04:26 - 0:00 coelogin <d29dbms:0>
bick 37652 43538 0 16:58:40 pts/4 0:00 /bin/ksh
bick 43538 1 0 16:58:38 - 0:07 aixterm
luc 60062 27036 0 15:18:35 pts/18 0:00 -ksh

ZDP(C)Gn|D CPU 9Civ#-7LrDxL\]WMZPmPlH#[l C 5I\T-7xLD


CPU 9CivKbOY,r*wHLrZ 120 &#9F}#

CPU 1dH5

ps |n(ZKP,Z TIME PPT> CPU 1d,"Z %CPU PPT> CPU 1dk5J1dDH5#iR


'd CPU 9CDxL#au M v !na)KPXC'xLD`FE"#aux M vg !nT>C'M53xL#

BP>}!TZ;v 4 7D SMP 53:


# ps au
USER PID %CPU %MEM SZ RSS TTY STAT STIME TIME COMMAND
root 19048 24.6 0.0 28 44 pts/1 A 13:53:00 2:16 /tmp/cpubound
root 19388 0.0 0.0 372 460 pts/1 A Feb 20 0:02 -ksh
root 15348 0.0 0.0 372 460 pts/4 A Feb 20 0:01 -ksh
root 20418 0.0 0.0 368 452 pts/3 A Feb 20 0:01 -ksh
root 16178 0.0 0.0 292 364 0 A Feb 19 0:00 /usr/sbin/getty
root 16780 0.0 0.0 364 392 pts/2 A Feb 19 0:00 -ksh
root 18516 0.0 0.0 360 412 pts/0 A Feb 20 0:00 -ksh
root 15746 0.0 0.0 212 268 pts/1 A 13:55:18 0:00 ps au

%CPU GTSxLt/T4VdxCxLD CPU 1dDYVH#|FcgB:


(xL CPU 1d/xLVx1d)* 100

hkP=vxL:;vt/"KPekS,+";ax;;sm;vt/"KPekS,+";ax#K1 ps
|naT>Z;vxL %CPU * 50%(-z 10 kS,CPU 1d* 5 kS),Z~vxL* 100%(-z 5
kS,CPU 1d* 5 kS)
#

Z;v SMP O,bv5*}T53PICD CPU v}#kX40fD>},bMG cpubound xLD %CPU


5@6;a,} 25 D-r,r*C>}DivGZ 4 7&mw53OKP#cpubound xL 100% X9C
;v&mw,+G %CPU 5}TICD CPU }?#

THREAD !n

(}9C ps -mo THREAD |n,ps |nITT>_LT0_LrxLys(=D CPU#BfG;v}S:


# ps -mo THREAD
USER PID PPID TID ST CP PRI SC WCHAN F TT BND COMMAND
root 20918 20660 - A 0 60 1 - 240001 pts/1 - -ksh
- - - 20005 S 0 60 1 - 400 - - -

TID PT>_Lj6,BNDPT>s(=&mwDxLM_L#

96 T\\m8O
(#IT4=;vPv kproc(Z 4 fDYw53P PID * 516)DxLZ<C CPU 1d#1;P_LI
TZ3v1d,PKP1,wHLr+C1d,D CPU 1dVdxbvZKxL(kproc),F*UPrH}
kproc#SMP 53T?v&mw<+P;vUP kproc#

XZ ps |nDj{j8E"kNDZ6AIX 5L V5.3 |nN<s+7P#

9C acctcom |n
g{$nGJ53,acctcom |nT> CPU 9CivDz7}]#

kvZxTh*1E$nGJ,r*t/GJ53+x53x4`1sD*z#*$nGJ53,k4PTB
Yw:
1. 4(;vUDGJD~:
# touch acctfile
2. r*GJ:
# /usr/sbin/acct/accton acctfile
3. CGJKP;a;sXtGJ:
# /usr/sbin/acct/accton
4. T>6q=DGJgB:
# /usr/sbin/acct/acctcom acctfile
COMMAND START END REAL CPU MEAN
NAME USER TTYNAME TIME TIME (SECS) (SECS) SIZE(K)
#accton root pts/2 19:57:18 19:57:18 0.02 0.02 184.00
#ps root pts/2 19:57:19 19:57:19 0.19 0.17 35.00
#ls root pts/2 19:57:20 19:57:20 0.09 0.03 109.00
#ps root pts/2 19:57:22 19:57:22 0.19 0.17 34.00
#accton root pts/2 20:04:17 20:04:17 0.00 0.00 0.00
#who root pts/2 20:04:19 20:04:19 0.02 0.02 0.00

g{zXC,yDD~,IT(}0R accton xL(bGZ;NC4XUGJDxL)i4OBDxL24


1rt/#

9C pprof |nb?ZK_LD"&mw9Civ
pprof |n(}zY5CLr(fZ;v1ddtZKPDyPZK_LD"&mw9Civ#

-<xLE"#f= pprof.flow P"zIev(f#g{;8(j>,MzIyPD(f#

*7(Gq20"IT9C pprof Lr,kKPTB|n:


# lslpp -lI bos.perf.tools

(fDV`gB:
pprof.cpu
PvyPZK6_L(4U5J"&mw1dEr)#|(:xL{F"xLj6"8xLj6"*
<Max1DxL4,"_Lj6"8_Lj6"5J CPU 1d"t/1d"#91d"#9 - *
<#
pprof.famcpu
PvyP5P(P2,fHDxL)DE"#5PDxL{MxLj6;;(GfH#|(:t/1
d"xL{"xLj6"_L}"\ CPU 1d#

"&mwT\ 97
pprof.famind
Pv45P(P2,fHDxL)ViDyPxL#SxL{`TZ8xLux#|,:t/1d"
#91d"5J CPU 1d"xLj6"8xLj6"_Lj6"8_Lj6"*<Max1DxL4
,"6p"xL{#
pprof.namecpu
Pv?VZK_L(yP{F`,DI4PD~)DE"#|(:xL{"_L}"CPU 1d"\ CPU
1dDYVH#
pprof.start
Pv pprof |n1ddtZVIDyPZK_L(4Ut/1dEr)
#|(:xL{F"xLj6"
8xLj6"*<Max1DxL4,"_Lj6"8_Lj6"5J CPU 1d"t/1d"#91
d"#9 - *<#

BfG;vy> pprof.namecpu D~,CD~G(}KP tthreads32 LrzID,CLrIzvDv_L,


?v_LSEVIzv;vT:DxL#;sb)xL4P8v ksh M sleep Lr:
Pprof PROCESS NAME Report

Sorted by CPU Time

From: Thu Oct 19 17:53:07 2000


To: Thu Oct 19 17:53:22 2000

Pname #ofThreads CPU_Time %


======== ========== ======== ========
tthreads32 13 0.116 37.935
sh 8 0.092 30.087
Idle 2 0.055 17.987
ksh 12 0.026 8.503
trace 3 0.007 2.289
java 3 0.006 1.962
kproc 5 0.004 1.308
xmservd 1 0.000 0.000
trcstop 1 0.000 0.000
swapper 1 0.000 0.000
gil 1 0.000 0.000
ls 4 0.000 0.000
sleep 9 0.000 0.000
ps 4 0.000 0.000
syslogd 1 0.000 0.000
nfsd 2 0.000 0.000
========== ======== ========
70 0.306 100.000

`&D pprof.cpu gB:


Pprof CPU Report

Sorted by Actual CPU Time

From: Thu Oct 19 17:53:07 2000


To: Thu Oct 19 17:53:22 2000

E = Exec’d F = Forked
X = Exited A = Alive (when traced started or stopped)
C = Thread Created

Pname PID PPID BE TID PTID ACC_time STT_time STP_time STP-STT


===== ===== ===== === ===== ===== ======== ======== ======== ========
Idle 774 0 AA 775 0 0.052 0.000 0.154 0.154
tthreads32 5490 11982 EX 18161 22435 0.040 0.027 0.154 0.126

98 T\\m8O
sh 11396 5490 EE 21917 5093 0.035 0.082 0.154 0.072
sh 14106 5490 EE 16999 18867 0.028 0.111 0.154 0.043
sh 13792 5490 EE 20777 18179 0.028 0.086 0.154 0.068
ksh 5490 11982 FE 18161 22435 0.016 0.010 0.027 0.017
tthreads32 5490 11982 CX 5093 18161 0.011 0.056 0.154 0.098
tthreads32 5490 11982 CX 18179 18161 0.010 0.054 0.154 0.099
tthreads32 14506 5490 FE 17239 10133 0.010 0.128 0.143 0.015
ksh 11982 13258 AA 22435 0 0.010 0.005 0.154 0.149
tthreads32 13792 5490 FE 20777 18179 0.010 0.059 0.086 0.027
tthreads32 5490 11982 CX 18867 18161 0.010 0.057 0.154 0.097
tthreads32 11396 5490 FE 21917 5093 0.009 0.069 0.082 0.013
tthreads32 5490 11982 CX 10133 18161 0.008 0.123 0.154 0.030
tthreads32 14106 5490 FE 16999 18867 0.008 0.088 0.111 0.023
trace 5488 11982 AX 18159 0 0.006 0.001 0.005 0.003
kproc 1548 0 AA 2065 0 0.004 0.071 0.154 0.082
Idle 516 0 AA 517 0 0.003 0.059 0.154 0.095
java 11612 11106 AA 14965 0 0.003 0.010 0.154 0.144
java 11612 11106 AA 14707 0 0.003 0.010 0.154 0.144
trace 12544 5488 AA 20507 0 0.001 0.000 0.001 0.001
sh 14506 5490 EE 17239 10133 0.001 0.143 0.154 0.011
trace 12544 5488 CA 19297 20507 0.000 0.001 0.154 0.153
ksh 4930 2678 AA 5963 0 0.000 0.154 0.154 0.000
kproc 6478 0 AA 3133 0 0.000 0.154 0.154 0.000
ps 14108 5490 EX 17001 18867 0.000 0.154 0.154 0.000
tthreads32 13794 5490 FE 20779 18179 0.000 0.154 0.154 0.000
sh 13794 5490 EE 20779 18179 0.000 0.154 0.154 0.000
ps 13794 5490 EX 20779 18179 0.000 0.154 0.154 0.000
sh 14108 5490 EE 17001 18867 0.000 0.154 0.154 0.000
tthreads32 14108 5490 FE 17001 18867 0.000 0.154 0.154 0.000
ls 13792 5490 EX 20777 18179 0.000 0.154 0.154 0.000
:
:
:

9C emstat $_lb8nBf
*K#VkI~xFD~Df]T,AIX ZK|,K*I\;|,ZX(>,e5a9PD8na)'VDB
f}L#T<4P;\'VD8na<BG(8nl##ZKTCG(8nxPbk,g{G;u;\'VD
8n,ZKKP;vBf}L#bC8nD&\#

y];\'VD8nD4P5J0dBf76D$H,r*ZKOBDP;M8nBfD*z,BfalI;
,LHDT\B5#uA;v\!H}DBf2alIT\OD\snp#BmT>KT8v;\'VD8n
76$HD@F#

8n BfoT @FD76$H(8n)
abs c`Lr 117
doz c`Lr 120
mul c`Lr 127
rlmi C 425
sle C 447
clf C 542
div C 1079

ZCc`oT4DzkP,Xk}%G);ZyP=(O(CD8n,r*XB`k;T_c4zkP'#c
`LrPD}LXkDd,9C|G;9C1YD8n,r*bVivBXB`k;pwC#

Z;=GC emstat $_7(P;P8nBf#

"&mwT\ 99
*7(Gq20K emstat LrRIT9C,KPBP|n:
# lslpp -lI bos.perf.tools

emstat |nDYwk vmstat |n`F,zITZK|nP8(;vTk*%;Ddt1dMdtDN}(I


!)#Z;PPD5GS53}<T4D[}F},Z~PPD5GZCdt1dZBf8nDv}#Bfo
=?kSs<C8'N1aTT\zz0l#

BfG"v emstat 1 |nsDdv>}:


# emstat 1

Emulation Emulation
SinceBoot Delta
0 0
0 0
0 0

;)lb=Bf,B;=G7(Dv&CLrZBf8n#b7(p4HO'Q#;vl(G?N;KP;v
&CLr,"C emstat Lr`S#P13)Bf<BbvzYR3#bI(}DV PROGRAM CHECK Z ASCII
zY(fD~Pi4#kbvzYB~PXDxL/_LZxP8nBf,*4GIZ|T:DzkZBf8
n,*4|Z4Pbrd{#iDzk,b)zk}ZBf8n#

C alstat $_lbTkl#
}]4TkI\<B2~zITkl##

AIX `kwT}]`MxPT;DTk#}g,TZ 2 vVZDL{M}],`kwT/+|vS= 4 vV


ZD$H#;)#{D`L0_g`M*;MTk`k8>,I\a}p&CLr}]Tk;}7#yZ
POWER DE/Yh}]}7Tk#by,!;PTkD}]I\*`NCJZf,+G;NCJM&Cc;K#
}]4TkzIDTkl#+?FZK#byh*DZfCJ#q8nBf;y,b+5M&CLrT\#

bos.perf.tools f=D alstat $_ICZlbGq"zKTkl##*KyZ?v CPU T>Tkl#,9C


-v !n#

IZ alstat M emstat G`,D~xFD~,rb=v$_PDN;v<ICZT>8nBfMTkl##


*T>8nBf,rZ alstat P9C -e !n#*T>Tkl#,rZ emstat P9C -a !n#

alstat Ddv4p4kBf`F:
# alstat -e 1
Alignment Alignment Emulation Emulation
SinceBoot Delta SinceBoot Delta
0 0 0 0
0 0 0 0
0 0 0 0

C fdpr LrX9I4PLr
fdpr(4!(rLrX9)LrTI4P#ixPE/,9d4P|lR|P'X9C5Zf#

*7(Gq20K fdpr LrRIT9C,KPBP|n:


# lslpp -lI perfagent.tools

fdpr |nG;vT\w{5CLr,ITa_C'6&CLrDT\M5Zf{CJ#4zk;G fdpr Lr


XhDdk#+G;'VuNDI4PLr#g{4zkIC,rC`kwj> -qfdpr 9(DLr+|,3)

100 T\\m8O
E",T-z fdpr LrC#$&\zI-}XBErDLr#g{9C -qfdpr j>,T;vLryPD?
j#i<&9CCj>#g{9C -qfdpr j>,2,4S+;avSLrT\#

fdpr $_XBEr;vI4PLrPD8n4a_8n_Y:f"*;s8:ex(TLB)M5ZfD{CJ,
|4PKBfDYw:
v +4PO`DzkrP((}E*Vv7()r|=;p#
v +u~V'X`kTDF2~V'$b#
v +;#4PDzkF=Pb

}g,Yh;v“if-then-else”od,fdpr LrI\O*Lr9C else V'H9C if V'|51#ZG|+u


~f*,B<T>K=vV':

< 16. u~V'X`k>}. e<T>Ku~V'X`kgNDd3)zk#}g,zk If (condition) I\dI If (!


condition);zk then T#t* then;;)8nd*m;)8n;else T#t* else;d{8nd*;v8n;endif T
#t* endif#

CPU s(DsM&CLr(sZ 5 MB)In`+4P1duY 23%,+G(#45,T\a_Z 5% M 20%


.d#Tb`Lr,D>35ZfhsDuYI\o= 70%#=yZ 20% M 50% .d#b)}V@5Z&
CLrDP*M9C fdpr Lr1ICDE/!n#

fdpr D&mZ}vWN"z:
1. lb*E/DI4P#i,TJmU/j8DT\}]#
2. QlbDI4P#iKPZ;vIC'a)D$w:XB,SKP*<DT\}];G<B4#
3. T\}]C4}/;vT\E/xL,zzDa{G;vXB9lDI4P#i,C#i&C|P'X4
PKCylbDI4PLrD$w:X#C4}/ fdpr LrD$w:X&CkCLr5J9C1D$w:
Xt\%d,bcAXX*#XB9lDI4PLrD$w:XkC4}/ fdpr LrD$w:Xnp`1
s1,XB9lDI4PLrDT\G;I$bD,+GI\H-<I4PLrDT\9*n#

w*;v>},|n
# fdpr -p ProgramName -R3 -x test.sh

+9CbTC} test.sh 4KPlbN=DLr ProgramName#CKPDdv+C44PTCLrDn$x


E/(-R3),TNI1!F* ProgramName.fdpr DB#i#ZzzPE/DI4PLrH;E/D0NK
P|CDLH+Z\sLHO@5ZbTC} test.sh TzzP$w:XI&#BDLH#

":fdpr LrO"K;)_6E/c(,P1a<BE/DI4PLr;\k-<I4P#i;ypwC#N
NE/DI4PLrZCZNNzz73P.0;2MG5Z|DdvC=EN.0,&xPdVbT,
b;cxTX*#

"&mwT\ 101
\D45,fdpr LrDC'&1qXTB8c:
v !&9C;v$w:X4}/Izm$Z9CivD fdpr Lr#
v dVbTyzzDXB9lDI4PLrD&\#
v ;TQ-w{D$w:X9CXB9lDI4PLr#

XF"&mwyC
!\ AIX ZK+_LVIx;,DxL,+Gs`}53\m$_9G}CKP_LDxL,x;G}C_L
>m#

XFC'xLDE!6
I9C nice r renice |nr setpri() S}LXFC'xLDEH6,"C ps |nT>#

Z 32 3D:xLM_LDEH6;Pa)KEH6Ev#

(}EH6FcIT5V:
v Z_LP2m CPU
v @9NN_LJ41&
v M#Fc\^D_L
v fE1dD}%vS,xD_Lxp

9C nice |nKP;v|n
(}9C nice |n,NNC'<ITMZ}#DEH6KP;v|n#

;P root C'EIT9C nice |nKP;v_Z}#EH6D|n#bVivB,nice |n!56'* -20


M 19 .d#

(} nice |n,C'8(;v5,kj< nice 5`Su#^D}D nice 5CZKP8(|nDxL#x


LDEH6T;;L(;4EH65T;ITy] CPU 9Civ"nice 5Mn!C'xLEH65\ZTX
XBFc#

0(xLDj< nice 5G 20(T ksh s(xLG 24)


#TB|n+9 vmstat |nT nice 5 25(x;
Gj<D 20)Z0(KP,Sx<BuEH6#
# nice -n 5 vmstat 10 3 > vmstat.out

g{z9C root C'G<,ITCBP|nT;vO_DEH6KP vmstat |n:


# nice -n -5 vmstat 10 3 > vmstat.out

g{;PC root C'G<,""vK0v nice |n>},r vmstat |n+TTj< nice 5 20 KP,


"R nice |n;a"vNNms{"#

C setpri S}LhCL(DEH6
Z root C'j6BKPD&CLrIT9C setpri() S}L4hC|T:Drd{xLDEH6#

Hg:
retcode = setpri(0,59);

+a)x10xL;vL(DEH6 59#g{ setpri() S}L'\,|+5X -1.

102 T\\m8O
BfDLrS\;vEH65M;vxLj6Pm,"+yPxLDEH6hC*8(D5#
/*
fixprocpri.c
Usage: fixprocpri priority PID . . .
*/

#include <sys/sched.h>
#include <stdio.h>
#include <sys/errno.h>

main(int argc,char **argv)


{
pid_t ProcessID;
int Priority,ReturnP;

if( argc < 3 ) {


printf(" usage - setpri priority pid(s) \n");
exit(1);
}

argv++;
Priority=atoi(*argv++);
if ( Priority < 50 ) {
printf(" Priority must be >= 50 \n");
exit(1);
}

while (*argv) {
ProcessID=atoi(*argv++);
ReturnP = setpri(ProcessID, Priority);
if ( ReturnP > 0 )
printf("pid=%d new pri=%d old pri=%d\n",
(int)ProcessID,Priority,ReturnP);
else {
perror(" setpri failed ");
exit(1);
}
}
}

C ps |nT>xLEH6
ps |nD -l(!4 L)j>T>8(xLD nice 5M10EH65#

}g,zITCTB|nT>;vx(C'5PDyPxLDEH6:
# ps -lu user1
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
241801 S 200 7032 7286 0 60 20 1b4c 108 pts/2 0:00 ksh
200801 S 200 7568 7032 0 70 25 2310 88 5910a58 pts/2 0:00 vmstat
241801 S 200 8544 6494 0 60 20 154b 108 pts/0 0:00 ksh

CdvT>K0fhvD nice -n 5 |nDa{#xL 7568 P;vMEH6 70#(ps |nZ,6C'=


=BI;v%@Da04KP,rKP=v TTY) #

g{dP;vxL9CK setpri(10758, 59) S}L4xT:8(;vL(DEH6,r ps -l dvDy>g


B:
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
200903 S 0 10758 10500 0 59 -- 3438 40 4f91f98 pts/0 0:00 fixpri

"&mwT\ 103
C renice |n^DEH6
renice |nDd53PQ-ZKPD;vr`vxLD nice 5,rKDdKEH6#xLIIxLj6"x
Lij6r5PCxLDC'{6p#

renice |n;\Z_PL(EH6DxLO9C#G root C'ITZ;vr`vKPxLD nice 5OS;


v8(D5,+;\SPu%8(D5#jIKxL nice 5D^D#b)xLDEH6T;;L(#;P root
C'ITC renice |nZ -20 = 20 D6'ZDdEH65,rS;vr`vKPxLD nice 5Pu%;
v5#

*9C>}\;Lx,9C renice |nDdC nice t/D vmstat xLD nice 5#


# renice -n -5 7568
# ps -lu user1
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
241801 S 200 7032 7286 0 60 20 1b4c 108 pts/2 0:00 ksh
200801 S 200 7568 7032 0 60 20 2310 92 5910a58 pts/2 0:00 vmstat
241801 S 200 8544 6494 0 60 20 154b 108 pts/0 0:00 ksh

VZbvxLZ;vO_6DEH6OKP,kd{0(xLDEH6`H#*7zbva{,IT"vBP
|n:
# renice -n 5 7569
# ps -lu user1
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
241801 S 200 7032 7286 0 60 20 1b4c 108 pts/2 0:00 ksh
200801 S 200 7568 7032 1 70 25 2310 92 5910a58 pts/2 0:00 vmstat
241801 S 200 8544 6494 0 60 20 154b 108 pts/0 0:00 ksh

Zb)>}P,renice |nI root C'KP#1I;vU(C'j64KP1,9C renice |nw*P=


v^F:
v ;\8(CC'j6y5PDxL#
v xLD nice 5;\uY,uAZC renice |n+|DEH6h*OMEH6s,;\+CxLV4=1
!DEH6#

nice M renice |no(5w


nice M renice |nP;,D=(8(S=j< nice 5 20 OD}?#

|n |n a{ nice 5 nQEH65
nice -n 5 renice -n 5 25 70
nice -n +5 renice -n +5 25 70
nice -n -5 renice -n -5 15 55

_LEH65DFc
>ZV[9CEH6FcM schedo |nDw{#

Z 105 3D:schedo |n; |nJmz|DC4*?v_LFcEH65D;) CPU wHLrN}#kND


Z 32 3D:xLM_LDEH6;TKbPXEH6D30E"#

*7(Gq20"IT9C schedo Lr,kKPTB|n:


# lslpp -lI bos.perf.tune

104 T\\m8O
EH6Fc
ZK*?v_L,$;vEH65(P1F*wHEH6)#EH65G;v}{}RkX*_LDX*TD
d/=r`4#2MG5,O!DEH65m>;v`TX*D_L#1wHLr0R_LxPVI1,|!
q_PO!EH65DIVI_L#

FcEH65D+=G:
EH65 = y>EH6 + nice p' +(yZn| CPU 9CivD CPU p')

?1"zF1wPO(? 10 Ak)1,g{x(_LTZ CPU XFB,rC_LDn| CPU 9Civ5


+v 1#n| CPU 9Civ5Z ps |ndvPD C PPT>#n| CPU 9CivDns5* 120#

1!c(+n| CPU 9Civ}T 2 4Fc CPU p'#yT CPU p'kn| CPU 9CivDH5G 0.5#
bvH5I;vPv R(1!* 16)D5XF#+=gB:
CPU_penalty = C * R/32

?kS;N,1!c(+?v_LDn| CPU 9Civ5}T 2,yTn| CPU 9Civ%urSG 0.5#


bvH5I;vPv D(1!* 16)D5XF#+=gB:
C = C * D/32

FcEH65Dc(9CxLD nice 547(xLPw_LDEH6#fE CPU D1d%;DvS,nice


TEH6D0lu!#9C schedo -r -d ITEH6FcxhnbDXF,=(G* R M D hCB5#P
X|`E",kND:schedo |n;#

TBPH=*<:
p_nice = y>EH6 + nice 5

VZ9CBP+=:
If p_nice > 60,
then x_nice = (p_nice * 2) - 60,
else x_nice = p_nice.

g{ nice 5sZ 20,|D0lG1|!ZHZ 20 1D=6#BDEH6Fc(vT{MXO)gB:


EH65 = x_nice + [(x_nice + 4)/64 * C*(R/32)]

schedo |n
I(} schedo |nD=v!n5Vw{:sched_R M sched_D#

?v!n8(;vS 0 = 32 D{}N}#&Cb)N}1+N}5`K;s}T 32#1!D R M D 5*


16,bazzk-<c( [(D=R=16)/32=0.5] `,DP*#BD!56'Jm|c6'DP*#Hg:
# schedo -o sched_R=0

[(R=0)/32=0, (D=16)/32=0.5] b6E CPU p'\G 0,SxEH6;G nice 5D/}#;Ps(xLaq!


NN CPU 1d,}Gy>;PIVID0(xL#!\|G;G<uO2DL(EH6_L,+b)_LD
EH655JOG;dD#
# schedo -o sched_R=5

[(R=5)/32=0.15625, (D=16)/32=0.5] b6E0(xL@6;XkC nice -n 10 |nt/Ds(xLxP:y#


[}D CPU 1d,^F* 120,b6E0(xLDns CPU p'G 18#
# schedo -o sched_R=6 -o sched_D=16

"&mwT\ 105
[(R=6)/32=0.1875, (D=16)/32=0.5] b6E,g{s(xLC nice -n 10 |nt/,rCs(xLAYZ 1 k
.sEa*<SU CPU 1d#+G,y] CPU 9CivT;ITxV0(xL#$ZKPD0(xLPI
\;Zs(,|nU&C}[c;D CPU 9CT\bkf}D0(e;#
# schedo -o sched_R=32 -o sched_D=32

[(R=32)/32=1, (D=32)/32=1] +b6E$ZKPD_L C 5ao= 120 "#VZGo,Z nice 5Dy!O


xP:y#;\ nice 5*`Y,B_L<aPEH6,1=|G}[c;D1d,+|Gx=VP_LEH
65D6'.Z#

boPXZ R M D D;)<r:
v O!D R 5au!EH66'"9 nice 5TEH6P|s0l#
v OsD R 5a)sEH66'"9 nice 5TEH6D0ld!#
v O!D D 59 CPU 9CivTOlDYJ%u,"RI\}p<C CPU `D_L|gXwH#
v OsD D 59 CPU 9CivTO}DYJ%u,"R|`XM#<C CPU `D_L(rx1x;%`M
D_L)#

EH6Fc>}
C>}T>K R=4 M D=31 "Yh;Pd{IKPD_L#
current_effective_priority
| base process priority
| | nice value
| | | count (time slices consumed)
| | | | (schedo -o sched_R)
| | | | |
time 0 p = 40 + 20 + (0 * 4/32) = 60
time 10 ms p = 40 + 20 + (1 * 4/32) = 60
time 20 ms p = 40 + 20 + (2 * 4/32) = 60
time 30 ms p = 40 + 20 + (3 * 4/32) = 60
time 40 ms p = 40 + 20 + (4 * 4/32) = 60
time 50 ms p = 40 + 20 + (5 * 4/32) = 60
time 60 ms p = 40 + 20 + (6 * 4/32) = 60
time 70 ms p = 40 + 20 + (7 * 4/32) = 60
time 80 ms p = 40 + 20 + (8 * 4/32) = 61
time 90 ms p = 40 + 20 + (9 * 4/32) = 61
time 100ms p = 40 + 20 + (10 * 4/32) = 61
.
(skipping forward to 1000msec or 1 second)
.
time 1000ms p = 40 + 20 + (100 * 4/32) = 72
time 1000ms swapper recalculates the accumulated CPU usage counts of
all processes. For the above process:
new_CPU_usage = 100 * 31/32 = 96 (if d=31)
after decaying by the swapper: p = 40 + 20 + ( 96 * 4/32) = 72
(if d=16, then p = 40 + 20 + (100/2 * 4/32) = 66)
time 1010ms p = 40 + 20 + ( 97 * 4/32) = 72
time 1020ms p = 40 + 20 + ( 98 * 4/32) = 72
time 1030ms p = 40 + 20 + ( 99 * 4/32) = 72
..
time 1230ms p = 40 + 20 + (119 * 4/32) = 74
time 1240ms p = 40 + 20 + (120 * 4/32) = 75 count <= 120
time 1250ms p = 40 + 20 + (120 * 4/32) = 75
time 1260ms p = 40 + 20 + (120 * 4/32) = 75
..
time 2000ms p = 40 + 20 + (120 * 4/32) = 75
time 2000ms swapper recalculates the counts of all processes.
For above process 120 * 31/32 = 116
time 2010ms p = 40 + 20 + (117 * 4/32) = 74

106 T\\m8O
C schedo |nxPwHLr1d,^D
wHLr1d,D$HIC schedo |n^D#*|D1d,,k9C schedo -o timeslice=value !n#

-t D5G1d,DNp},;P SCHED_RR _La9CG1!D1d,5(PXL(EH6D_LDhv,


kNDZ 33 3D:_LwH_T;)#

Dd1d,"4pwC,;h*XB}<53#

IC SCHED_OTHER r SCHED_RR wH_TKPD_Ln`IT9C CPU ;vj+D1d,(1!D1


d,G 1 v1SNp),;v1SNpG 10 ms#

Z3)iNB,"zK+`OBDP;,VI_LD*zHJmb)_LKPZ;v|$D1d,1D*z|
s#Zb)ivB,vS1d,I\TL(EH6_LDT\zz}f0l#9C vmstat M sar |n47(
?kSDOBDP;N}#

Z;vvSK1d,$HD73P,3)&CLrI\;h*r;&_P{v1d,#b)&CLrITC5
3wC yield() w7XEz&mw(qZ;v4^DD73PDLrGy)
#wC yield() .s,wC_L;F
=|DEH6VISPD)2#

9C mkpasswd |nxP"&mwP'DC'j6\m
*ZPm`C'D53PDFG<l&1d"Z<"&mw1d,Yw53I9Cw}f>D /etc/passwd D
~4iRC'j6#9CKzF1,/etc/passwd D~T;fZ,+;Z}#&mP9C#

w}f>DD~I mkpasswd |n9(#g{w}f>;GnBD,rG<&m+V4*:}D"9C


/etc/passwd D"&mw\/M3rQw#

4(w}\kD~D|n* mkpasswd -f#bv|n4( /etc/passwd"/etc/security/passwd M


/etc/security/lastlog D`kw}Df>#4(DD~*
/etc/passwd.nm.idx"/etc/passwd.id.idx"/etc/security/passwd.idx M /etc/security/lastlog.idx#k"b
b+assv?9h*S\\kD&CLr(gG<MNNd{h*xP\kO$DLr)DT\#

&CLr2vK|DT9Cfz}L,g _getpwent() x;G getpwent(),_getpwnam_shadow(name,0)


x;G getpwnam(name) r _getpwuid_shadow(uid,0) x;G getpwuid(uid),TZ;h*S\\k1x
P{V/j6bv#bh9KT /etc/security/passwd xPiR#

;*V$`-\kD~,r*}]bD~(.idx)D1dAGa;,=,"Ra9C1!iR=((_T)#
g{ passwd"mkuser"chuser"rmuser |n(r SMIT H[|n,P,{lY76)CZ\mC'j6,
rw}D~T/#VnB#g{ /etc/passwd D~9C`-wr pwdadm |nxPK|D,rXkX(w}
D~#

":mkpasswd |n;0l NIS"DCE r LDAP C'}]b#

"&mwT\ 107
108 T\\m8O
ZfT\
>ZhvgNb?M^DZf9C#

;v53DZf(#a8u;<z#4910KPDLr;P{DtyPDZf,Yw532a+OgKPD
LrM|Gy9CDD~DD>3f$tZZf#byD$t";PNND*z,r*Zf^[gN<;a%
9Cb;NZf#Zm`ivB,Lrr_D~+a;YNC=,byITuYELDdkdv#

;l$Yw53ibZf\mDA_ZLxDABD.0I\h*i4Z 36 3D:ibZf\mwT\;#

Zf9C
P8VT\$_Ia)Zf9Civ(f#

nCKPK$D(f4T vmstat"ps M svmon |n#

9C vmstat |n7(Zf9Civ
vmstat |n\aK53PyPxL9CD\n/ibZf,T0UPPmO5Zf3!D}?#

n/DibZf(e*ibZfP5JITC=D$wN3fD}?#PX|`j8E",kNDZ 134 3D
:s3fUdVd;#bv}VI\sZzwPD5J3!},r*;)n/DibZf3I\Q4v=w3
UdP#

17(53ZfGqL1r_Gqh*xP3VZfw{1,Zh(D1ddtZKP vmstat |n,"li


a{(fPD pi M po P#b=PmwK?kw3Ud3fwkD}?M?kw3Ud3fwvD}?#g{
b)5-#*Gc5,5wI\fZZf?1#<{vVDGc5;CZb,r*3fwHGibZfDw*
-m#
# vmstat 2 10
kthr memory page faults cpu
----- ----------- ------------------------ ------------ -----------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
1 3 113726 124 0 14 6 151 600 0 521 5533 816 23 13 7 57
0 3 113643 346 0 2 14 208 690 0 585 2201 866 16 9 2 73
0 3 113659 135 0 2 2 108 323 0 516 1563 797 25 7 2 66
0 2 113661 122 0 3 2 120 375 0 527 1622 871 13 7 2 79
0 3 113662 128 0 10 3 134 432 0 644 1434 948 22 7 4 67
1 5 113858 238 0 35 1 146 422 0 599 5103 903 40 16 0 44
0 3 113969 127 0 5 10 153 529 0 565 2006 823 19 8 3 70
0 3 113983 125 0 33 5 153 424 0 559 2165 921 25 8 4 63
0 3 113682 121 0 20 9 154 470 0 608 1569 1007 15 8 0 77
0 4 113701 124 0 3 29 228 635 0 674 1730 1086 18 9 0 73

ZOv>}dvP,k"bdvPDO_D I/O H}JT0h{SPPD_L}#d{ I/O n/I\alI I/O


H},+GZbVXbivB,I/O H}nsI\GIZk3fUd.dD3fwxwvlID#

*l453D VMM GqPT\Jb,kli memory M page BDP:


v memory

a)K5JMibZfDE"#
– avm

© Copyright IBM Corp. 1997, 2006 109


n/ibZf(avm)PzmZU/ vmstat y>1fZDn/ibZf3}#1!_T*SY3fUd
_T#ZC_TB,avm D5I\H9CDw3Ud3f}*_#avm 3FE"";|,D~3f#
– fre

fre PT>vUPZf3fD=y}?#;v3fG5ZfPD 4 KB Dxr#53,$Zf3fD:e


x,F*UPPm#1 VMM h*Ud1IT\=cXCJKUPPm#VMM #tZUPPmODnY
3}I vmo |nD minfree N}v(#PX|`j8E",kNDZ 129 3D:VMM 3ff;w{;#

1;v&CLrU91,|yPD$w3fa"45XxUPPm#;x,|D@C3f(rD~)T
;Z RAM P,;amSXUPPmP,1=I VMM T!CZd{Lr*9#g{>}`&DD~,
2aMEd@C3f#

IZbv-r,fre D5I\;m>xLIT=c9CyP5Zf#g{h*3!,GkQU9&CLr`
XD@C3f+anHF;xm;vLr#

g{ fre D56sZ maxfree D5,r;+I\vV53_$#53_$b6E53;1ZxP3fwx


wv#;x,g{53}Z-z_$,ITO( fre 5\!#
v page

XZ13JOM3fwHn/DE"#|GG;N1ddtD=y5"Tk*%;xv#
– re

":b;810;\'V#
– pi

pi Pj8hvKSw3UdwkD3}#w3UdG$tZELODibZfD;?V#1Zf}?9C
1,|Cwgv#w3UdICZf"S5ZfPT!=D$wi3fD_-miI#1xLCJ;v
T!31,zzK;v13JO,b;3XkSw3UdAkZf#

r*2~dC"m~M&CLrD;,,;PxTD}VITCTN<#bvVNw*w3Udn/D
X|8>{#g{"z3fwx,C3fM;(P;vOgD3fwv#ZZf\^D73B2PI\
?;N3fwxaH9m;v3f;T!x3fwv#
– po

po ;8T>Kwv=w3UdD3f}(YJ) #^[241rT!$wf"wD;3,g{|T4$t
Zw3UdPrQ;^D,G|a;4kw3Ud#g{;;YNCJ,|atZ3fwHh8P1=
xLU9rEzUd#g{|,ZvJO3fPDsxX7}C<B13JO,G4b)3f+aI5
3vpwx#1;vxL}#U9,NNVdxCxLDw3Ud+;ME#g{53Aks?D@C
3f,za"u po 8ovSKxZ pi 8o;P`&vS#b";;(alI53_$,+IT#$T
Z&CLr}]f!#=Dwi#
– fr

Z;(1ddtZy]3ff;c(?kyMED3}#1 VMM 3ff;}L(h3f!m(Page


Frame Table,PFT)1,|9C;)u~!!*T!D3fTek=ICZf!DUPPmP#Cu~|
,K=V3f,$w(FcD)MD~(@CD)3f#Mr*3fQ-ME,";b6E"zKNN
I/O#}g,g{3v@Cf"(D~)3fP4^D,|M;a;4XEL#g{ I/O ;GXhD,r
*sn!D53J44ME3f#
– sr

110 T\\m8O
Z;(1ddtZy]3ff;c(?kyliD3f}#3ff;c(ZITT!c;D3fTzc
3ff;_LDh*.0I\;C;(hm`3f!#sr 5H fr 5_C=`,3ff;c(iR*T!
DOq3fM='Q#
– cy

1Sc(P?kD\Z}#VMM 9C;VP1Sc(D<u4!q*f;D3f#bV<u{CK?;
v3fDCJ;48>D)3n|x;9C(CJ)}#wC3fT!Lr}L1,|iz{v PFT,l
i?;3DCJ;#

cy ;8T>K?k3ff;zk(hK PFT `YN#r*ekUPPmIT;h*j+(h PFT,"R


r*yPD vmstat VN(f*{},b;VN(#* 0#

7(53DJ1 RAM }?D;V=(Gi4 vmstat |n(fD avm Dns5#+C}VKT 4K C=V


Z},;s+dk53D RAM VZ}HO#mkivB,avm &C!Z\ RAM#g{;G,I\avV;
)ibZf3fwH?#P`Y3fwH"z!vZ=v5.dDn5#G!,ibZfDEnGa)xRG
07sZ5Zf]?D\&(;)Z RAM ZfP,xm;)Zw3UdP)#+Gg{ibZf6sZ5Z
f,I\lI}HD3fwH,Sx<BS1#g{ avm !Z RAM,G41 RAM PnzD~31Ma}p
w3UdD3fwH#bVivB,w{ minperm"maxperm M maxclient D5ITuYw3UdD3fwH
?#PX|`E",kNDZ 129 3D:VMM 3ff;w{;#

vmstat -I |n
vmstat -I |nT>=SE",}g?kD~3fwk}M?kD~3fwv},4:;Gw3Ud3fwkr
w3Ud3fwvDNN VMM 3fwkMwv#

9Cbvj>;a(f re M cy 8#

vmstat -s |n
**!n -s rj<dv"M**(f,C(fS53u</*<,TxTF}m>,x;GyZ3v1dd
t#

Fv9Cb)3FE"D=(GZP$w:X.0KPC|n,#fdv,ZP$w:XsYNKPK|n,
"#fdv#B;=G7(=idvdDnl#Z 26 3D:kELrZf`XDJb;Pa)KT/4PC
YwD awk E>,{* vmstatit#
# vmstat -s
3231543 total address trans. faults
63623 page ins
383540 page outs
149 paging space page ins
832 paging space page outs
0 total reclaims
807729 zero filled pages faults
4450 executable filled pages faults
429258 pages examined by clock
8 revolutions of the clock hand
175846 pages freed by the clock
18975 backtracks
0 lock misses
40 free frame waits
0 extend XPT waits
16984 pending I/O waits
186443 start I/Os
186443 iodones
141695229 cpu context switches

ZfT\ 111
317690215 device interrupts
0 software interrupts
0 traps
55102397 syscalls

\aoD3fwxM3fwvD}?zmibZfS3fUdMD~Udwxrwv3fDn/#w3UdD
3fwxwvzm{v3fUd#

C ps |n7(Zf9Civ
ps |n2ITC4`SvpxLTZfD9C#

ps v PID |n*%vxLa)Kn+fDZf`X3FE"D(f,}g:
v 13JO
v $wNQ-o=Ds!
v ZfP$wNMzkNDs!
v D>NDs!
v $t/Ds!
v xL9CD5ZfDYVH

BfG;v}S:
# ps v
PID TTY STAT TIME PGIN SIZE RSS LIM TSIZ TRS %CPU %MEM COMMAND
36626 pts/3 A 0:00 0 316 408 32768 51 60 0.0 0.0 ps v

a{ ps (fPnX*DPhvgB:
PGIN 13JO}pD3fwxD}?#H;yP I/O iZ13JO,Gbw*MG I/O ?Db?#
SIZE xL}]xDibs!(Zw3Ud),C'VZm>(Zd{j>PC SZ 4m>)
#bv}?HZ
xLICD$wN3D}?D 4 6#g{;)$wN310;wv,bv}V+sZy9CD5Zf
?#SIZE |,K=PND3fMxLD2mb}]N#
RSS xL5Zf($t/O)Ds!,C'VZm>#bv}5HZZfPD$wN3MzkN3}MD 4
6#G!zkN3G*yP10LrKPD5}y2mD#g{ 26 v ksh xL}ZKP,;P ksh
I4PLrDNNx(3fD;]1>I;ZZfP,+G ps |na+zkNDs!w*?v ksh
LrD5}D RSS D;?V(f#
TSIZ D>(2mLr)3qDs!#bGI4PD~DD>xrDs!#I4PLrD>xD3fG;\
ZC=|G1xkZfD,MG5,*F=ZfrSZf0k#bv}V;mwKIT0kDD>?
DO^#TSIZ D5";435ZfD9Civ#T3vI4PLr4P dump -ov |n(}g,dump
-ov /usr/bin/ls)2I4=K TSIZ 5#
TRS D>$t/O(5Zf)Ds!#bv}?HZxLICDzkN3D}?D 4 6#1LrP`vK
P5}1,bv}VdsKZfD9Civ#TRS D5I\H TSIZ D5*_Gr*d{3I\|,
ZzkNP,}g XCOFF 7D~M0kLrN#
%MEM
IZfP$wNMzkN3DMD 4 6FcC=(4 RSS D5),Y}Tzw5ZfDs!(%;
KB),YKT 100,Daek=nS|DYVc#bv5<ZmwKxL9CD5Zf#+;IDG,
Mq RSS,|dsK;vxLkd{xL2mLrD>D*z#xR,Daek=nS|DYVc,9
C53PyP RSS 5!Z 0.005 KT}]Zfs!DxLD %MEM 5* 0.0#

112 T\\m8O
":ps |n";mw2mZfNr_Zf3qN{DDZf#r*m`&CLr9C2mZfrZf3dN,
svmon |nG;v|CDi4b)NDZf9CivD$_#

svmon |n
svmon |na)K;v|SnkDZf9CivDVv#Hp vmstat M ps |n,|xP|`E"?,"
R|_P?FT#svmon |n6q;v10Zf4,DlU#;x,b";G;vf}DlU,r*|KPZ
C'6p,4POJm4,#

*7( svmon GqQ20"IC,KPTB|n:


# lslpp -lI bos.perf.tools

svmon |n;\I root C'4P#

g{9C1ddt(-i !n),3FE"+a;1T>1=|n;1@r_1=o=K1ddtD}5(IT
UCZC1ddts8() #

IT9CBP;,D(f4VvyT>DE":
+V(-G)
T>hv{v53P5ZfMw3UdD9CD3FE"#
xL(-P)
T>8(n/xLDZf9Civ#g{;a)xLPm,rZf9C3FE"T>yPn/Dx
L#
N(-S)
T>8(NDZf9Civ#g{;a)NDPm,rZf9C3FE"T>yP(eDN#
NDj8E"(-D)
T>8(NDj8E"#
C'(-U)
T>8(G<{DZf9C3FE"#g{;a)G<{Pm,rT>yP(eDG<{DZf9C
3FE"#
|n(-C)
T>3v|n{8(DxLDZf9C3FE"#
$w:X\m`(-W)
T>8(D$w:X\m`DZf9C3FE"#g{;a)`,rT>yP(eD`DZf9C3
FE"#
!(-F)
T>!DE"#;8(!DEk1,a(f9CDZfDYVH#v<GhCKCJ;D!#Z&m
Zd,yPDCJ;<+4;#rK,1Z~N9C -f !n1,svmon |na(fTON9C -f !
nT4QCJD5ZfDYVH#g{Z53O(eK;v#tX,r+(f?vQ(eXP9CD
ZfDYVH#
c(-T)
T>cDE",}gcE,9C -a j>1D,`{M5ZfPtZcDND\3}#

9CPDZf?
svmon |nIa)PX}Z9CDZf?D}]#

r!+VD3FE",*C -G j>#ZTB>}P,T;kSD1ddtX4=N#

ZfT\ 113
# svmon -G -i 1 2

size inuse free pin virtual


memory 1048576 425275 623301 66521 159191
pg space 262144 31995

work pers clnt


pin 46041 0 0
in use 129600 275195 0

PageSize PoolSize inuse pgsp pin virtual


s 4 KB - 404795 31995 46041 159191
L 16 MB 5 0 0 5 0
size inuse free pin virtual
memory 1048576 425279 623297 66521 159195
pg space 262144 31995

work pers clnt


pin 46041 0 0
in use 129604 275195 0

PageSize PoolSize inuse pgsp pin virtual


s 4 KB - 404799 31995 46041 159195
L 16 MB 5 0 0 5 0

k"bg{53P;P 4 KB D3fIC,r;T>8V?v3fs!DE"DN#

a{ svmon (fPDPhvgB:
memory
hv5Zf9CivD3FE",T>* 4 KB s!D3#
size {vZfDs!,T 4 KB 3F#
inuse RAM PxL9CD3}SOtZU9xL+T$tZ RAM PD@C3f}#bv5HZ\
Zfs!u%UPPmPD3}#
free UPPmP3fD}?#
pin L(Z RAM D3fD}?#
(;vL(D3fMG;1$tZ RAM Px;\wvD3f)
#
virtual ZxLibUdPVdD3}#
pg space
hvw3Ud9CivD3FE",T 4 KB s!D3T>#(fD5Gy9CD5Jw3Ud3f
},bmwb)3fwv=Kw3UdP#|k vmstat |nD;,.&ZZ:vmstat |nD avm P
T>DGQCJ+;;(wvDibZf#
size \w3UdDs!,T 4 KB 3F#
inuse Vd3D\}#
pin |,L(3fD5ZfS/Dj83FE",T 4 KB !T>#
work L(Z RAM PD$w3fD}?#
pers L(Z RAM PD@C3f}?#
clnt L(Z RAM PDM'z3fD}?#
in use
}Z9CD5ZfS/Dj83FE",T 4 KB !T>#
work RAM P$w3fD}?#
pers RAM P@C3fD}?#
114 T\\m8O
clnt RAM PM'z3fD}?(M'z3fMG;v6LD~3f)
#
PageSize
vZ53Os!;* 4 KB D3fIC1T>#8(ITZ53O9CD?V3fs!wTD3FE
"#
PageSize
3fs!
PoolSize
#tZfXP3fD}?#
inuse Q9C3fD}?
pgsp w3UdPVdD3fD}?
pin QL(3fD}?
virtual 53ibUdPVdD3fD}?#

C>}P,ZfD\s!* 1048576 3#+bv}KT 4096 MG\5ZfDs!(TVZF)(4 GB) #d


P 425275 3}Z9C,UPPmPP 623301 3,66521 3L(Z RAM P#ZyP}Z9CD3P,RAM
PP 129600 v$w3"275195 vVC3M 0 vM'z3#b}v?VD\M(SOQ#tD+;;(I#
tX9CDZf)HZ memory ?VP inuse ;8D5#pin ?V+L(Zfs!VI$w3f"@C3fM
M'z3fb}`#|GDM(SOI#tX#tD\GL(DZf)HZ memory ?VP pin ;8D5#w
3Ud\2P 262144 3(1 GB),dPP 31995 3}Z9C#memory PD inuse ;8(#*H pg space
PD inuse ;8*s,r*1;vLrjIs,D~3f<CDZf;aME,xw3UdVdraMEZf#

xLDZf9Civ
svmon -P |nT>53O10}ZKPDyPxLDZf9Civ3FE"#

BfG svmon -P |nD>}:


# svmon -P

--------------------------------------------------------------------------------
Pid Command Inuse Pin Pgsp Virtual 64-bit Mthrd 16MB
16264 IBM.ServiceRM 10075 3345 3064 13310 N Y N

PageSize Inuse Pin Pgsp Virtual


s 4 KB 10075 3345 3064 13310
L 16 MB 0 0 0 0

Vsid Esid Type Description PSize Inuse Pin Pgsp Virtual


f001e d work shared library text s 4857 0 36 6823
0 0 work kernel seg s 4205 3335 2674 5197
b83f7 2 work process private s 898 2 242 1098
503ea f work shared library data s 63 0 97 165
c8439 1 pers code,/dev/hd2:149841 s 28 0 - -
883f1 - work s 21 8 14 26
e83dd - pers /dev/hd2:71733 s 2 0 - -
f043e 4 work shared memory segment s 1 0 1 1
c0438 - pers large file /dev/hd9var:243 s 0 0 - -
b8437 3 mmap mapped to sid a03f4 s 0 0 - -
583eb - pers large file /dev/hd9var:247 s 0 0 - -

--------------------------------------------------------------------------------
Pid Command Inuse Pin Pgsp Virtual 64-bit Mthrd 16MB
17032 IBM.CSMAgentR 9791 3347 3167 12944 N Y N

PageSize Inuse Pin Pgsp Virtual


s 4 KB 9791 3347 3167 12944

ZfT\ 115
L 16 MB 0 0 0 0

Vsid Esid Type Description PSize Inuse Pin Pgsp Virtual


f001e d work shared library text s 4857 0 36 6823
0 0 work kernel seg s 4205 3335 2674 5197
400 2 work process private s 479 2 303 674
38407 f work shared library data s 120 0 127 211
a83f5 1 pers code,/dev/hd2:149840 s 99 0 - -
7840f - work s 28 10 27 39
e83dd - pers /dev/hd2:71733 s 2 0 - -
babf7 - pers /dev/hd2:284985 s 1 0 - -
383e7 - pers large file /dev/hd9var:186 s 0 0 - -
e03fc - pers large file /dev/hd9var:204 s 0 0 - -
f839f 3 mmap mapped to sid 5840b s 0 0 - -
[...]

C|ndvj8hvK?vxLD+VZf9Civ,T0?v(fDxLy9CD?vNDZf9Cj8i
v#1!DErfrG4U Inuse 3fF}5rEP#KP svmon |n1x -u"-p"-g r -v j>.;,
I|DErfr#

*qC53O9CZfD0 15 vxL**,k9CTB|n:
# svmon -Pt15 | perl -e ’while(<>){print if($.==2||$&&&!$s++);$.=0 if(/^-+$/)}’
--------------------------------------------------------------------------------
Pid Command Inuse Pin Pgsp Virtual 64-bit Mthrd 16MB
16264 IBM.ServiceRM 10075 3345 3064 13310 N Y N
17032 IBM.CSMAgentR 9791 3347 3167 12944 N Y N
21980 zsh 9457 3337 2710 12214 N N N
22522 zsh 9456 3337 2710 12213 N N N
13684 getty 9413 3337 2710 12150 N N N
26590 perl5.8.0 9147 3337 2710 12090 N N N
7514 sendmail 9390 3337 2878 12258 N N N
14968 rmcd 9299 3340 3224 12596 N Y N
18940 ksh 9275 3337 2710 12172 N N N
14424 ksh 9270 3337 2710 12169 N N N
4164 errdemon 9248 3337 2916 12255 N N N
3744 cron 9217 3337 2770 12125 N N N
11424 rpc.mountd 9212 3339 2960 12290 N Y N
21564 rlogind 9211 3337 2710 12181 N N N
26704 rlogind 9211 3337 2710 12181 N N N

Pid 16264 G{DZfn`DxLj6#Command 8v|n{,>}P* IBM.ServiceRM#Inuse PT>K 10075


3,CPGCxLy9CDND5Zf\3}#?;3s!* 4 KB#Pin PT> 3 345 3,CP*CxLy
9CDNDL(\3}#Pgsp PT> 3064 3,CPGCxLy9CDw3Ud3D\}#Virtual P(xL
ibUdPD\3})T> 13310 3#

8ZxrT>K**xrPT>D?vxLD?;NDE"#b|(ib Vsid MP' Esid Nj6#Esid 4


3KCZCJ`&3DNDfw#9T>KND`M0dhv,Chv*NDD>hv,|(m{T0@CN
DD~w}Zc#C(f9j8hvK'VND3fDs!(dP s m> 4 KB 3f,L m> 16 MB 3
f)"RAM PD3} Inuse"RAM PDL(3} Pin"w3UdPD3} Pgsp T0ib3} Virtual#

zuAIT9C|`!n4q!|`j8E"#-j !nT>@CNDD~D76#-l !na)XZND|`j


8E",-r !nT>?vN9CDZf6'#BfGx -l"-r M -j !nD svmon |nD>}:
# svmon -S f001e 400 e83dd -l -r -j

Vsid Esid Type Description PSize Inuse Pin Pgsp Virtual


f001e d work shared library text s 4857 0 36 6823
Addr Range: 0..60123
Shared library text segment
400 2 work process private s 480 2 303 675
Addr Range: 0..969 : 65305..65535

116 T\\m8O
pid(s)=17032
e83dd - pers /dev/hd2:71733 s 2 0 - -
/usr/lib/nls/loc/uconvTable/ISO8859-1
Addr Range: 0..1
pid(s)=17552, 17290, 17032, 16264, 14968, 9620

Address Range *@CNr_M'zN8(;v6'r_*$wN8(=v6'#@CNr_M'zND6'


C‘0..x’DN=4m>,dP x GQ9CDib3fDns}?#$wNDVN6'ITG‘0..x : y..65535’,d
P 0..x |,K+V}],avs,x y..65535 |,KQ;xr,au!#TZ;v$wNDX76',GS
=_*<VdUd1=Pd#g{$wNGG=PD(ZKr2mb),UdDVdG;,D#

ZTO>}P,Nj6 400 G(C$wN;|DX76'G 0..969 : 65305..65535#Nj6 f001e G2m


bD>$wN;|DX76'G 0..60123#

;vNII`vxL9C#byDNoD?;v5Zf3bMK?v9CCNDxLD Inuse VN#rK,


Inuse D\}I\,}5ZfPD3f\}#bT Pgsp M Pin VN,yJC#**?VPT>D5IxL9
CDyPND Inuse"Pin"Pgsp M Virtual F}wD\MiI#

ZTO>}P,e83dd NItIxL9C,b)xLD PID G 17552"17290"17032"16264"14968 M 9620#

X(Nj6Dj8E"
-D !nT>KNDZf9CDj83FE"#

BfG;v}S:
# svmon -D 38287 -b
Segid: 38287
Type: working
PSize: s (4 KB)
Address Range: 0..484
Size of page space allocation: 2 pages ( 0,0 MB)
Virtual: 18 frames ( 0,1 MB)
Inuse: 16 frames ( 0,1 MB)

Page Frame Pin Ref Mod ExtSegid ExtPage


341 527720 N N N - -
342 996079 N N N - -
343 524936 N N N - -
344 985024 N N N - -
347 658735 N N N - -
348 78158 N N N - -
349 174728 N N N - -
350 758694 N N N - -
404 516554 N N N - -
406 740622 N Y N - -
411 528313 N Y Y - -
412 1005599 N Y N - -
416 509936 N N Y - -
440 836295 N N Y - -
443 60204 N N Y - -
446 655288 N N Y - -

wPD5wgB:
Page 8(NZ3fDw}#
Frame 8($tZ5ZfD!w}#
Pin 8(m>C3GqL(Dj>#
Ref vC -b j>8(#8(m>C3DCJ;GqP'Dj>#

ZfT\ 117
Mod vC -b j>8(#8(m>C3Gq^DDj>#
ExtSegid
g{3tZ4S=;liND)9N,raT>CNDibNj6#
ExtPage
g{3tZ4S=;liND)9N,raT>C)9NPD3w}#

1)9N4S=liN1,(f`FZTB>}:
Page Frame Pin Ref Mod ExtSegid ExtPage
65574 345324 N N N 288071 38
65575 707166 N N N 288071 39
65576 617193 N N N 288071 40

-b j>T>KyPT>D!DCJM^D;D4,#T>.s,!DCJ;+;4;#19C -i j>1,|
lb?;v1ddtZD)!ITCJ#

":IZTT\alI0l,kww9C -b j>#

9CZfn`DNDPm
-S !nCZ4Zf9CivTNEr,"RT>8(NDZf9C3FE"#g{;a)NDPm,rZf9
C3FE"T>yP(eDN#

TB|n45ZfPD3}`YEP53MG53N#-t !nICZ+T>DN}^F*8(DF}#-u j>


45ZfPD\3}5rEPdv#

BfGx -S"-t M -u !nD svmon |ndvD>}:


# svmon -Sut 10

Vsid Esid Type Description PSize Inuse Pin Pgsp Virtual


70c4e - pers large file /dev/lv01:26 s 84625 0 - -
22ec4 - work s 29576 0 0 29586
8b091 - pers /dev/hd3:123 s 24403 0 - -
7800f - work kernel heap s 22050 3199 19690 22903
a2db4 - pers /dev/hd3:105 s 15833 0 - -
80010 - work page frame table s 15120 15120 0 15120
7000e - work misc kernel tables s 13991 0 2388 14104
dc09b - pers /dev/hd1:28703 s 9496 0 - -
730ee - pers /dev/hd3:111 s 8568 0 - -
f001e - work s 4857 0 36 6823

svmon M vmstat |ndvD`XT


svmon M vmstat Ddv.dfZ`XT#

BfG svmon |nD>}dv:


# svmon -G
size inuse free pin virtual
memory 1048576 417374 631202 66533 151468
pg space 262144 31993

work pers clnt


pin 46053 0 0
in use 121948 274946 0

PageSize PoolSize inuse pgsp pin virtual


s 4 KB - 397194 262144 46053 151468
L 16 MB 5 0 0 5 0

118 T\\m8O
vmstat |nZ;v@"D0ZPKP,kK,1 svmon 2ZKP#vmstat D(fgBy>:
# vmstat 3
kthr memory page faults cpu
----- ----------- ------------------------ ------------ -----------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
1 5 205031 749504 0 0 0 0 0 0 1240 248 318 0 0 99 0
2 2 151360 631310 0 0 3 3 32 0 1187 1718 641 1 1 98 0
1 0 151366 631304 0 0 0 0 0 0 1335 2240 535 0 1 99 0
1 0 151366 631304 0 0 0 0 0 0 1303 2434 528 1 4 95 0
1 0 151367 631303 0 0 0 0 0 0 1331 2202 528 0 0 99 0

+V svmon (fT>K`XD}V#vmstat |nD fre Pk svmon |nD memory free P`X#vmstat


|n(fDn/ibZf avm 5k svmon |n(fDibZf5`F#

svmon M ps |ndvD`XT
svmon M ps |ndv.dfZE;)*5#

svmon |ndvgB:
# svmon -P 14706

---------------------------------------------------------------------------------
Pid Command Inuse Pin Pgsp Virtual 64-bit Mthrd 16MB
14706 itesmdem 9067 3337 2833 12198 N N N

PageSize Inuse Pin Pgsp Virtual


s 4 KB 9067 3337 2833 12198
L 16 MB 0 0 0 0

Vsid Esid Type Description PSize Inuse Pin Pgsp Virtual


f001e d work shared library text s 4857 0 36 6823
0 0 work kernel seg s 4205 3335 2674 5197
f039e 2 work process private s 5 2 27 29
b8397 3 work shared memory segment s 0 0 1 1
d039a 6 work shared memory segment s 0 0 1 1
c0398 4 work shared memory segment s 0 0 1 1
d839b 7 work shared memory segment s 0 0 1 1
e839d f work shared library data s 0 0 91 144
c8399 5 work shared memory segment s 0 0 1 1
83a1 1 pers code,/dev/hd2:221359 s 0 0 - -

+Ov>}kBfD ps (fwHO:
# ps v 14706
PID TTY STAT TIME PGIN SIZE RSS LIM TSIZ TRS %CPU %MEM COMMAND
14706 - A 0:00 16 692 20 32768 19 0 0,0 0,0 /usr/bin/

SIZE 5 328 k svmon |nT& process private D5 59 SOT& shared library data D5 23 D Virtual
5`X*(%; 1 KB) #bv}?HZxLQ9CD$wN3D}?(4QVdDib3D}?)D 4 6#
C}XkKT 4 Gr*3fGT 4 KB *%;x SIZE GT 1 KB *%;D#g{;)$wN310;wv,
bv}5+sZy9CD5Zf?#SIZE 5(692)k svmon |nT& process private D Virtual }(29)
MT& shared library data D Virtual }(144)=}.M`X*(%; 1 KB) #

RSS 8DGxL5Zf($t/O)Ds!,C KB m>#bv}5HZZfPD$wN3MzkN3}MD


4 6#G!zkN3G*yP10LrKPD5}y2mD#g{ 26 v ksh xL}ZKP,;P ksh I4
PLrDNNx(3fD;v1>$tZZf,+G ps |na(f ksh LrD?v5}DCzkNs!,
w* RSS ;?V#RSS 5(20)k Inuse }V`X,C}VI svmon |nC=,T&ZxLD process
private 5(5 v$wf"N)"code,/dev/hd2:221359(0) NT0 shared library data 5(0),T 1 KB
*%;#

ZfT\ 119
TRS 58DG$tDD>/O(5Zf)s!#bv}VHZzkN3}KT 4#}gRGOga=D,bv
}?dsLr}ZKP`v5}DLrDZf9C#b;|(xLD2mD>#TRS 5(232)k Inuse PD
code N(58)PD svmon 3}PX,T 1 KB *%;#TRS D5I\H TSIZ D5*s,r*d{3(g
XCOFF 7M0kLrx)I\|,ZzkNo#

IT9CTBH=4Fc SIZE"RSS M TRS 5:


SIZE = 4 * Virtual of (work lib data + work private)
RSS = 4 * Inuse of (work lib data + work private + pers code)
TRS = 4 * Inuse of (pers code)

TOD svmon |n>};T>K 4 KB D3f#g{9Cd{3fs!,r1zFc SIZE"RSS M TRS 5


1&C<GC3fs!#

n!ZfhsFc
LrDn!Zfhs\]WFc#
\Zf3}(T 4 KB *%;)= T + ( N * ( PD + LD ) ) + F

dP:
T = D>3}(yPC'2m)
N = CLr,1KPD1>}
PD = xL=PNPD$wN}
LD = xL9CD2mb}]3}
F = D~3}(yPC'2m)

C=Da{KT 4 MC=*sD}5,T'VZF#zI\2#{+ZKPDZK)9M2mbD>ND5S
=bv5O,49|GG*53PyPxL2mD#}g,;)g CATIA D&CLrM}]b9C\sD2
mb#i#"b=IZRG;CKxLD%;lUD3FE",;#$RGS+=C=D5MG}7DxLD
n!$w/ODs!5#*qC$w/s!,kKPng rmss |n.`D$_r_ZxLn/Zd6qs?
lU,"Sb)lU!=y5#PX|`E",kNDZ 121 3D:9C rmss |nxPZfhs@@;#

Zf9)Lr
Zf9)G;VX4VdLrDms,Lr9CKZf4;ME|#

$1dKPDLr(g;%=&CLr)gPZf9)rG;vOXDJb,r*|I\zzZfi,,R5
ZfM3fUdPI\aQ}s?Dw*dz^CE"D3f#SxC*53r*%vLrPDZf9)xC
!3fUd#

Zf9)ITC svmon |n4lb,|a0R$wN;1ZvSDxL#ZKND9)I\G mbuf 9)"


h8}/Lr")dZKuAZK}pD#*7(NGqZv$,I9Cx -i !nD svmon |n4i4;
vr;ixL,"RKbGqPNZVxv$#

6p%}DS}Lr_zkP|*'Q,XpGZ AIXwindows &CLrP,b)&CLrazIs?D


malloc() M free() wC#C++ a)K HeapView Debugger 4VvMw{ZfD9CM9)#P;)Z}=
LrITVvZf9)+|Gh*LrCJ4zk#

;) realloc() S}L9C1,I\"Gf}D`Lms,2alIMZf9);yD'{#g{;vLr-#
9C realloc() S}L4vS}]xrDs!,xRf"I realloc() S}LMEDZf;\XCZd{=f,
xLD$wNI\=4=`XdIi,#
120 T\\m8O
9C disclaim() 53/} free() wC/}4ME;Yh*DZf#disclaim() 53wCXkZ free() wC
.0wC#g{LrmOM*ax,ZnswC malloc() /}aKQZf#1LrU91,|D$wN;F5
"R,P$wN}]D5Zf3!;mS=UPPm#BfG;vZf9)Lr>},|D=P$wN
(private working segment)D Inuse"Pgspace M Address Range 5Z;OvS:
# svmon -P 13548 -i 1 3
Pid Command Inuse Pin Pgsp Virtual 64-bit Mthrd LPage
13548 pacman 8535 2178 847 8533 N N N

Vsid Esid Type Description LPage Inuse Pin Pgsp Virtual


0 0 work kernel seg - 4375 2176 847 4375
48412 2 work process private - 2357 2 0 2357
6c01b d work shared library text - 1790 0 0 1790
4c413 f work shared library data - 11 0 0 11
3040c 1 pers code,/dev/prodlv:4097 - 2 0 - -
ginger :svmon -P 13548 -i 1 3

Pid Command Inuse Pin Pgsp Virtual 64-bit Mthrd LPage


13548 pacman 8589 2178 847 8587 N N N

Vsid Esid Type Description LPage Inuse Pin Pgsp Virtual


0 0 work kernel seg - 4375 2176 847 4375
48412 2 work process private - 2411 2 0 2411
6c01b d work shared library text - 1790 0 0 1790
4c413 f work shared library data - 11 0 0 11
3040c 1 pers code,/dev/prodlv:4097 - 2 0 - -

Pid Command Inuse Pin Pgsp Virtual 64-bit Mthrd LPage


13548 pacman 8599 2178 847 8597 N N N

Vsid Esid Type Description LPage Inuse Pin Pgsp Virtual


0 0 work kernel seg - 4375 2176 847 4375
48412 2 work process private - 2421 2 0 2421
6c01b d work shared library text - 1790 0 0 1790
4c413 f work shared library data - 11 0 0 11
3040c 1 pers code,/dev/prodlv:4097 - 2 0 - -

9C rmss |nxPZfhs@@
rmss |n(uYZfD53#bw)*za)K;V#b;,s!D5ZfD=((#bDZf*!Zzzw
D5JZf),x;X!vMf;Zfu#xR rmss |n*Z;(Zf6'ZKPD&CLra)K=c,
T?;vZfs!,T>Kg&CLrl&1d"3fwH?HDT\3FE"#

rmss |n<ZozzXpBfDJb:“*KTIS\DT\6pKPYw53Mx(D&CLr,53h*
`YWVZD5Zf?”Z`C'73B,|<ZozzXpCJb:“Z;(PE X WVZ5ZfDzwO,
P`YC'IT,1KPC&CLr?”

rmss |nDw*CwF.]?D$_,4lb;v$w:Xh*`YZf#|2ITCwJblb$_,Xp
GZG)``Zfa5MT\DivB#

*Klb rmss |nGq20MIC,*HKPTB|n:


# lslpp -lI bos.perf.tools

rmss |n#bDZfs!Gzw5Zf\s!,|(Yw53MI\KPDNNd{Lry9CDZf,G!
b;cG#X*#b";GI&CLr>my9CDZfD?#r*|I\}pDT\5d,rmss |n;\I
yC'r_53ViDI19C#

ZfT\ 121
rmss |n
I9C rmss |n|DZfs!"Kv,r_w*}/Lr,9C;5PZfs!`N4P3v8(D&CL
r,"T>hv&CLr9C?vZfs!1DT\DX*3FE"#

Zk*l4x(D53Zfs!B&CLrgNKP1,r_1&CLr}Z4SxQTC%v|nm>1,
r_kKP;v&CLrD`v5}1,Z;V=(\PC#Z~V=(JCZ1zP;vw*I4PLrr
_ shell E>D~wCD&CLr1#

rmss |nD -c"-p M -r j>


9C rmss |nD -c"-p M -r j>DC&G:|GJmT;\m>*%vI4PLrr shell E>D~D
4S&CLrxPTi#m;=f,9C -c"-p M -r !nD1cG|G?HzT:xPT\@@#RKDG,
ITC vmstat -s |n4@@&CLrKP1Dw3UdDn/#

(}KP vmstat -s |n,KPzD&CLr,YNKP vmstat -s |n,;s+w3Ud3fwxsD}


?u%w3Ud3fwx0D}?,zMIT7(LrKP1"zDw3Ud3fwxD}?#xR,(}T
zLrF1,"+w3Udek3D}?}TLr{DD1d,ITC=w3Ud3fwxD=yYJ#

Z?vZf]?B`NKP&CLr2G`1X*,r*=v-r:
v |DZfs!1,rmss |n-#emvs?Zf#rK,Z;NZfs!d;sKP&CLr,PI\P
;?V5JKPD1dG&CLr+D~Ak5Zf#+G,r*&CLraxsb)D~T$tZZf
P,s4C&CLrD4ParKx{DOLD1d#
v *Kq!;vZfs!B&CLrD=yT\,;+I\?N&CLrKP14F534,#rK;iV
;iXKPa9CC&CLrDT\d/`1s#

E(D5,<GTB;5PD=hw*wC rmss |nD=(:


1PPK$Zfs!ITwi:
{
change to an interesting memory size using rmss -c;
run the application once as a warm-up;
for a couple of iterations:
{
use vmstat -s to get the "before" value of paging-space page ins;
run the application, while timing it;
use vmstat -s to get the "after" value of paging-space page ins;
subtract the "before" value from the "after" value to get the
number of page ins that occurred while the application ran;
divide the number of paging-space page ins by the response time
to get the paging-space page-in rate;
}
}
KP rmss -r 953V4=}#Zfs!(rXB}<)

9CZ 26 3D:kELrZf`XDJb;PhvD vmstatit E>IT/xPw3 I/O }DFc(3fwx


su%3fwx0) #

Zfs!|D:

*|DZfs!"Kv,k9C rmss |nD -c j>#

}g,*+Zfs!|D* 128 MB, 9CBfD|n:


# rmss -c 128

122 T\\m8O
#mb,]?XkiZ 8 M MzzwD5Zf?
Zf]?G;v{}r_TWVZFD!}(}g,128.25)
.d#y]m2~DdC,rmss |nI\^(+Zfs!dC\!,r*53LPa9(gZK)Ds!D5
J#1 rmss |nd/=x(5,|aT>;vmsE"#

rmss |n(}T!#fZ VMM PDUP!PmPDUP!34uYK;v53P'ZfDs!#T!=D


!#fZ^(9CD!Xo"ZP'Zf]?*vSD1r5X=UP!Pm#rmss |n2/,DJ&53d
?M}]a9,C}]a9XkkZfP']?#V;BT#

*;Zf]?h*;(D1d,(s< 15 = 20 k)
#;c45,z#{uYD=`,rmss |njI*(Q
D1d=`#I&s,rmss aX&TBE":
Simulated memory size changed to 128.00 Mb.

*T>10ZfD]?,k9C -p j>,gB:
# rmss -p

rmss |nDdvgB:
Simulated memory size is 128.00 Mb.

ns,g{zkXCZfs!=zzwD5Zfs!,k9C -r j>,gB:
# rmss -r

;\10#bZf]?G`Y,9C -r j>IT+Zf]?hC=Czw5Zf]?#

r*bv}SGZ 256 MB DzwOKP,rmss |n&pgB:


Simulated memory size changed to 256.00 Mb.

":rmss |n(fK;\9CD5Zf#Z|,Kp5M}9CDZfDzwO,rmss (fK5ZfD?,


MHZ5Zfu%p5Dr};539CDZf#}g,rmss -r |nI\(f:
Simulated memory size changed to 79.9062 Mb.

bI\G;)jG*p5D3f<BDr_G3vh8*T:9Cx#tK;)3f(rxC'^(9
C)
#

9C rmss |nZ;5PZfs!OxPD&CLr4P
w*;v}/Lr,rmss |nZ3;Zfs!6'Z4P8(D&CLr,"T>Z?vZfs!B&CLr
DT\3FE"#

rmss |nD -s"-f"-d"-n M -o j>aO9C,T+ rmss |nw*}/LrwC#rmss |nDwCy


=Do(gB:
rmss [ -s smemsize ] [ -f fmemsize ] [ -d memdelta ]
[ -n numiterations ] [ -o outputfile ] command

BfV[?;vj>Dj8E"#-s"-f M -d j>CZ8(Zfs!D6'#
-n Cj>CZ8(?vZfs!BKPMb?C|nDN}#
-o Cj>CZ8( rmss D(f4=D;vD~,1C|nMGzk*Z?vfs!BKPMb?DL
r#
-s Cj>8(p<]?#
-f Cj>8(nUs!#
-d Cj>8(?Ns!d/n5#

ZfT\ 123
yP5<G{}r_!},TWVZF#}g,g{zkZ 256"224"192"160 M 128 MB BKPMb?;
v|n,IT9CTBiO:
-s 256 -f 128 -d 32

`FD,g{zkZ 128"224"192"224 M 256 MB BKPMb?;v|n,IT9CTBiO:


-s 128 -f 256 -d 32

g{!T -s j>,r rmss |nTzwD5JZfs!w*p<s!#g{!T -f j>,r rmss |nT


8 MB w*nUs!#g{!T -d j>,Zfs!v?D1!5G 8 MB#

Gz&C* -s"-f M -d !qD)5X?;Vr%D!qGsZKPz*b?D&CLrD53DZfs!#


;xYZ 8 MB Dv?2I\GPCD,r*1zx(;vs!1,zITq!ITC=DUd?D@F5#
}g,g{;vx(&CLrZ 120 MB &53_$,+ 128 MB &KP;P3fwx,G*@ 120 MB =
128 MB .dDo*<53_$DG#X*#g{S 127 MB *<D,zI\#{+53hC* 128 MB T
ODZf,r_z2#{TE%^D&CLrC=|`DZfUd#m;=f,g{53GS 121 MB *<_
$D,G 128 MB DZfTz45c;K#

-n j>CZ8(?vZf]?BKPMb?C|n`YN#KPMb?C|n=8(DN}s,rmss T>h
vZ&CLrCZf]?BX*D=yT\D3FE"#Z?vZf]?BKP 3 NC|n,zIT9CTB
q=:
-n 3

g{!T -n j>,r rmss |nlbZu</}LP,&CLrXkKP`YNIT9C[}D\KP1d


o= 10 k#rmss byvG*K#$L1dKPD&CLrT\D3FE";;bgIEywTX0l#

":g{zb?;vG#L]DLr,[} 10 k CPU 1dhX4DN}I\\s#r*?;NLr4PA


Y{Ds< 2 kD rmss *z,yTTZLLr&T=8( -n N}#

+ -n j>h*`Y5HOCX?g{z*@&CLrKP*{D66,} 10 k,rIT8( -n 1,by,


C|nKP=N,+T?vZfs!;b;N#9C -n j>DC&G rmss |na|ljI,r*|+;X
Zu</ZdDQ1d47(*KPLr`YN#1;b|nG$1dr;%=X4PD1r,bGG#P[
5D#

"b= rmss |n\GZ?;vZfs!BDKPMb?|n.0w*HmKP;N,bGG#X*D#*K


\b&CLr;ZZf}pDdkdv,HmGG#X*D#d;K`Ddkdv0lT\,";;(G5Z
fD1Yx}pD#HmKPP";|,I -n j>8(N}DX4#

-o j>CZ8( rmss (f*4=DD~#g{!T -o j>,r(fa4k rmss.out D~#

ns,command CZ8(*;b?D&CLr#GITGI4PLrr shell E>,ITxPr!T|nP


N}#;x,Z|nDN=OGP;)^FD#WH,|^(|,dkrdvX(r(}g,foo > output r
#bGr* rmss Q|n+NN|n{w*|DN}#*X(r,+|nCZ;v shell E>D
foo < input)
~#

(#,g{*+ rmss dvf"=3vX(D~,k9C -o !n#g{zk+ rmss |nDj<dvX(


r(}g,+|,S=;vQfZDD~s),G9CgB Korn shell 4Z(EPwC rmss |n#
# (rmss -s 24 -f 8 foo) >> output

rmss |na{bM
rmss |nIzIP[5E"#

124 T\\m8O
:* foo LrzID(f;wbPD>}GT5J&CLrKP rmss |nzID,;GvZd{<G,CL
rD{F|D* foo#zIK(fDX(|ngB:
# rmss -s 16 -f 8 -d 1 -n 1 -o rmss.out foo

* foo LrzID(f
rmss |n* foo LrzIK(f#
Hostname: aixhost1.austin.ibm.com
Real memory size: 16.00 Mb
Time of day: Thu Mar 18 19:04:04 2004
Command: foo

Simulated memory size initialized to 16.00 Mb.

Number of iterations per memory size = 1 warm-up + 1 measured = 2.

Memory size Avg. Pageins Avg. Response Time Avg. Pagein Rate
(megabytes) (sec.) (pageins / sec.)
-----------------------------------------------------------------
16.00 115.0 123.9 0.9
15.00 112.0 125.1 0.9
14.00 179.0 126.2 1.4
13.00 81.0 125.7 0.6
12.00 403.0 132.0 3.1
11.00 855.0 141.5 6.0
10.00 1161.0 146.8 7.9
9.00 1529.0 161.3 9.5
8.00 2931.0 202.5 14.5

(fID8iI#ns_;8xvKZfs!,x Avg. Pageins ;8xvKZCZfs!B&CLrKP13


fwkD=y}?#X*DG,"b= Avg. Pageins ;8a=DyPZLrPjID3fexYw,|(SL
PAkrzk,}]MD~#Avg. Response Time xvK&CLrjIyCD=y1d,x Avg. Pagein Rate
xvK3fwxD=yYJ#

[l Avg. Pagein Rate ;8#S 16 MB = 13 MB,3fwxYJ`T45\!(<1.5 3?k)


#;x,S
13 MB = 8 MB 3fwxYJ;*<}}Xv$,= 8 MB *<lYv$#Avg. Response Time P`FD
N4:*<`T=:,;s:}v$=,ns5= 8 MB *<lYv$#

bo,3fwxYJD7B5K,ZZf]?S 14 MB(1.4 3?k)uY= 13 MB(0.6 3?k)D1r#


b;a}p/(#Z5J53P,;I\Z{a{Gj+=,D#X*DG3fwxYJZ 14 MB M 13 MB
1,yM#

ns,zITT(f9C;)F[#WH,g{&CLrDT\Z 8 MB Zf]?1G;\S\D(\PI\
gK),GvSZf]?ITwTCa_T\#"b=l&1daO}(S 16 MB Ds< 124 k= 8 MB D
#m;=f,g{ 16 MB 1DT\^(S\,vSZf2^(9T\a_\`,
202 k,s<vSK 63%)
r*Z 16 MB Zfs!D1r,3fwx";PwTDr}LrKPYH#

16 MB 6L1>D(f
TB>}T>K;v(}KP rmss |nzzD(f(ZM'zO),G(} NFS S6Lz(~qw)O=
4;v 16 MB D~D|n#
Hostname: aixhost2.austin.ibm.com
Real memory size: 48.00 Mb
Time of day: Mon Mar 22 18:16:42 2004
Command: cp /mnt/a16Mfile /dev/null

Simulated memory size initialized to 48.00 Mb.

ZfT\ 125
Number of iterations per memory size = 1 warm-up + 4 measured = 5.

Memory size Avg. Pageins Avg. Response Time Avg. Pagein Rate
(megabytes) (sec.) (pageins / sec.)
-----------------------------------------------------------------
48.00 0.0 2.7 0.0
40.00 0.0 2.7 0.0
32.00 0.0 2.7 0.0
24.00 1520.8 26.9 56.6
16.00 4104.2 67.5 60.8
8.00 4106.8 66.9 61.4

K(fPl&1dM3fwxYJ*<`TOM,ZZfs!* 24 MB 1lYv$,;sZ 16 M 8 MB 1
NI=(#C(fT>K!q;v6'Zfs!DX*T,Zz9C rmss |nD1r#g{CC';l4K
S 24 MB = 8 MB DZf,G4{r}I\m}KhCc;s=]I&CLrx;h*3fwxD53Xz
a#

9C -s"-f"-d"-n M -o j>Da>
rmss |nTK==9CD;nPC&\G:I9CPO|(1!* Ctrl + C)U9C|n,+;aF5Q4
kdvD~D(f#}K+(f4kdvD~b,b9+9 rmss |n+Zfs!4;*zwDomZfs!#

zITs(KP rmss |n,49ZzKvG<s,;*9C nohup |n#*v=by,Z rmss |nK


P.0KP ohup |n"zE{vD|nsf;v & {E,gB:
# nohup rmss -s 48 -f 8 -o foo.out foo &

9C rmss |n1<GD<r
;\z9CD;V rmss |nN=,!I\+\DX(nUC'GG#X*D#

}g,zGqZ9C,yDMED CPU,,yMEDEL,,yDxg?G;GC'PS6LZcr_d{D
V<=D~534D(} NFS 20D&CLrD~?ns;cXpX*,r* VMM T6LD~M>XD~
;,D#

,yD,nC{}NNkZ{D53dCr*b?D&CLr;`XD53n/#}g,z;a#{ rmss |
nKP1PKZ,;(zwO$w}G{GZKPz*b?D$w:XD;?V#

":z;\,1wC`v rmss |n#

1zjIKyPD rmss |n,nCXUMXB}<53#ba}%yP rmss T53yvDD/,"+


VMM Zf0kXFN}#f*|GDdM#

9C schedo |nxP VMM Zf0kXFw{


(}9C schedo |n,root C'IT0lC47(53_$Dj<,Cj<C47(D)xL*]R"53
_$axs=XB$nxL.0DH}1dMbZ]RDn!xL},r_+b)54;I1!5#

VMM Zf0kXF$_(ZZ 40 3D:VMM Zf0kXF$_;Phv)#$}X53bZ_$#

ZgZf>DYw53P,g{s?xL,1IEYw53rZfa;}?9C"zz53_$,<BT\1
Y5M#;VZf0kXFzFD"99C53_$IT;lb=#3)N}0lK:XXFzFD&\#

*K7( schedo |nGqQ20"IC,kKPTB|n:


# lslpp -lI bos.perf.tune

126 T\\m8O
Zf0kXFw{
Zf0kXFG*K{}\Y"zD+I\}p53_$D:Xe5#

Zf0kXF(}Ez`@LrhF4qCLB?,;rc,x4P;vr* RAM }Yx;\&m}#$w


:XDdC#bG*z&mw5xhFD,;GG#Pfp&#AIX $w:X\mw*#$X|Nqa)K|
CDbv=8#

T;vy>D@CD RAM f"bv.@GvS RAM,x;GTCZf0kXF4~|Zfl&1d#f}


h*E/DZf0kXFh8GG)P`v RAM D,x;GG)H1!5YD#;v>}MGdCPD1!
5}Z#X#

z;&CDdZf:XX~N}hC,}GzD$w:X\H("Rz`E1!}5GZ\;OJzD$:
X#

}G|D},qr1!N};1IT'D0X53#b)N}D1!5D!qGs6'$w:XB“T/E}
JO”D#DdDN}hC;1P'1=53}<#yPDZf0kXFn/XkIyC'xP#53\m1
IT9C schedo |n|DN}TTX($w:Xw{c(rj+{C|#

TB>}(} schedo |nT>K10DN}5:


# schedo -a
v_repage_hi = 0
v_repage_proc = 4
v_sec_wait = 1
v_min_process = 2
v_exempt_secs = 2
pacefork = 10
sched_D = 16
sched_R = 16
timeslice = 1
maxspin = 1
%usDelta = 100
affinity_lim = n/a
idle_migration_barrier = n/a
fixed_pri_global = n/a
big_tick_size = 1
force_grq = n/a

0evN}8(KZf0kXFc(DP5#b)N}hCKCc(DYHMP5#g{Cc(T> RAM ;
}?9C,r+9C v_repage_proc"v_min_process"v_sec_wait M v_exempt_secs 5#qr,b)5<;vT#
g{Zf0kXF{C,b)sfD5+;;9C#

xPKw{Tis,(}4P schedo -D |n,I+Zf0kXF4;Id1!Xw#

v_repage_hi N}
v_repage_hi N}XFE(eZf}?9CDP5#1NN;kSD1do,}CP51,Zf0kXFa"T
]R3)xL#

bvP5G=v1SN?.dDX5:O;k4kw3UdD3}(po)MO;k"zDT!X3}(fr)#
b=v5z<ITZ vmstat |nDdvP4=#4kD3}(#6!ZT!D3}#"zBPiv1,m>
}?9CKZf:
po/fr > 1/v_repage_hi or po*v_repage_hi > fr

schedo -o v_repage_hi=0 |n5J{CZf0kXF#g{;v53AYP 128 MB Zf,G1!5* 0,


qr* 6#PKsZ 128 MB Zf,U( VMM c((#ITHZf0kXF|P'Dbv53_$#

ZfT\ 127
Z;)XbivB,I\;*<M{CZf0kXFaHOC#}g,g{z9C;vxP,1&\?~DB
fwUK4#b`C'$w:X,Zf0kXFIEI\<Bl&;#iTAxL;,1&\?~U9#m;
v}SG,g{z9C rmss 4i4uYDZfs!,*K\*Tzb?DIE,&C{CZf0kXF#

g{{CZf0kXF<B|`(x;G|Y)D53_$4v(`&|cDl&),GMGZf:XFZz
D53Pp=K;v\}+DM'.TDwC#w{Zf0kXFN}IT9CT\a_,qrzI\h*v
SZf#

g{ v_repage_hi 5\MD0Mh*a_53_$lbP5;4Z]RxL.0Jm53S|_$4,#;\
53uydC,1Ov po/fr V}5\M1,;+I\vV53_$#

*+P5Dd* 4,dkgB:
# schedo -o v_repage_hi=4

by,Zc(t/]RxLT0kmI53|S|Z53_$#

v_repage_proc N}
v_repage_proc N}7(3vxLGq{O]Ru~,T0GqCZ*?vxL,$DTB=vb?5.HhC
P5:XBw3}(r)MxLO;k[}D13JO}(f) #

XBw3}k13JO}.H\_m>%vxL+zz53_$#1TBmo=I"1,xL;O*\xP]
RD(|Z53_$rY9+fD53_$):
r/f > 1/v_repage_proc or r*v_repage_proc > f

v_repage_proc D1!5* 4,b6E1O;kZXBw3}T13JO}DV}H5sZ 25% 1,MO*x


LZ53_$("PI\*]R) #v_repage_procv D5=MM<BZ;vxLIT;]R.0JmD@"xL
53_$LH=_#

*{CZf0kXFxLbZ]R,*vDBgBy>:
# schedo -o v_repage_proc=0

&1"b=L(EH6DxLMZKxL\b;]R#

v_min_process N}
v_min_process N}T`@LrhFLH7(OMD^H,4(e*n/xL}#n/xLG8ITKP"ZH
}3fdkdvDxL#ZH}B~M;]RDxL;tZn/xL,H}xL2;tZ#

hC`@LrhFDn!6p,v_min_process P'h9 v_min_process xL;;]R#Yh53\m1*@*


qC<CT\AYP.vxLXk$tZZfP"RGn/D,M3IZf0kXFG}Zn>D]RxL#
g{"vK schedo -o v_min_process=10 |n,r53v;a]RG4`xLTBZYZ 10 vDxLy
CZf#v_min_process N}";F}:
v ZKxL
v C plock() 53wC+xLL(ZZf#
v EH6D5YZ 60 DL(EH6D5
v H}B~DxL

v_min_process=2 D531!57(ZK"yPL(xLM=vC'xL+;1&ZyC RAM DxLiP#

d; v_min_process=2 T(=z,%C'dCGOJD,+T_Ps?ZfDsM`C'r~qwdC45
4+!K#

128 T\\m8O
g{z20D53ZfsZ 32 MB,+!Z 128 MB "Z{,1'Vevn/C',IT<Ga_ VMM D
Zf0kXFDn!`@LrH6#

Y}45,g{zD#X@FGDvnDZfD&CLrIT,1KP,tB 16 MB )Yw539C,M 25%


D5ZfxD~3,zITn!`@LrH6S1!5 2 vS= 4,9C|ngB:
# schedo -o v_min_process=4

Zb)53O,+ v_min_process N}hC* 4 r 6 I\zznQT\#OMD v_min_process 5ZJm6


'Zb6EP1rAYI\;P;vC'xLGn/D#

153_$D&CLrDZfhsQ*1,cITJ1!q v_min_process 5#Y(53_$GI;vs!*


M D&CLrDs?5}}pD#x(53Zfs! N,v_min_process N}&hC*S|Z N/M D5#+
v_min_process 5hCC}Ma;X*X^FI,1&Zn/4,DxL}?#

v_sec_wait N}
v_sec_wait N}XF$H*;kD1ddt},Zb)1ddtZ,po/fr V}Z]RxLXB$n.0Xk
#VMZ 1/v_repage_hi#

;kD1!5S|Zn!Jm?,C5* 0#5*;kb6E;*;k2+1d}KM"TXB$nxL#
v_sec_wait D5Osb6E+*]RxL0^=Dl&1d;cDgU,,1&mwr1&n/DxLZKPx
UPE#

*DdH}1d,Z=ksXB$nxL,d|ngB:
# schedo -o v_sec_wait=2

v_exempt_secs N}
?NXB$n;v]RDxL1,|Z v_exempt_secs -}Dk}1dNZbZ;]R#byI7#wk]R
xLD3fDEL I/O _(QC=OmDDxza#

v_exempt_secs D1!5* 2 k#

*DdbvN},dkgB:
# schedo -o v_exempt_secs=1

Yh53_$GI;v9Cs?Zf"+KP< T kD&CLr<;}pD#v_exempt_secs N}D 2 k1!


53hC\I\<BK&CLrZ1&53O;k;v T/2 N#ZbVivB,+ v_exempt_secs N}XBh
C*O$1d5IozK&CLry04P#1bv;CD&CLrlYjI1,53T\aPya_#

VMM 3ff;w{
Zf\mc("T+UPPmDs!M@CN3f<CD5ZfYVH#VZ8(g^Z#

I9C vmo |nDdb)g^(ZZ 37 3D:5Zf\m;PV[),C|n;\I root C'KP#K$


_xPD|Da;1P'1=53XB}<#*K7( vmo |nGqQ20"RIC,kKPTB|n:
# lslpp -lI bos.perf.tune

4Px -a !nD vmo |n+T>10DN}hC#Hg:


# vmo -a
cpu_scale_memp = 8
data_stagger_interval = 161
defps = 1

ZfT\ 129
force_relalias_lite = 0
framesets = 2
htabscale = -1
kernel_heap_psize = 4096
large_page_heap_size = 0
lgpg_regions = 0
lgpg_size = 0
low_ps_handling = 1
lru_file_repage = 1
lru_poll_interval = 0
lrubucket = 131072
maxclient% = 80
maxfree = 1088
maxperm = 3118677
maxperm% = 80
maxpin = 3355444
maxpin% = 80
mbuf_heap_psize = 4096
memory_affinity = 1
memory_frames = 4194304
memplace_data = 2
memplace_mapped_file = 2
memplace_shm_anonymous = 2
memplace_shm_named = 2
memplace_stack = 2
memplace_text = 2
memplace_unmapped_file = 2
mempools = 1
minfree = 960
minperm = 779669
minperm% = 20
nokilluid = 0
npskill = 1536
npsrpgmax = 12288
npsrpgmin = 9216
npsscrubmax = 12288
npsscrubmin = 9216
npswarn = 6144
num_spec_dataseg = 0
numpsblks = 196608
page_steal_method = 1
pagecoloring = n/a
pinnable_frames = 3868256
pta_balance_threshold = n/a
relalias_percentage = 0
rpgclean = 0
rpgcontrol = 2
scrub = 0
scrubclean = 0
soft_min_lgpgs_vmpool = 0
spec_dataseg_int = 512
strict_maxclient = 1
strict_maxperm = 0
v_pinshm = 0
vm_modlist_threshold = -1
vmm_fork_policy = 1

minfree M maxfree N}D5


9CUPPmD?DG#VzYxLU9MED5ZfD3!,r*s_"4a)3!,x;GH}T!Mk
.`,DdkdvDax#

minfree ^FKUPPmD]?,MZC}51Xk*<T!3dkUPPm#1sZ maxfree N}13T!a


#9#ZtCOqDD~_Y:f^F1(}g strict_maxperm r strict_maxclient N}),+9C minfree 5

130 T\\m8O
*<3fT!#1@C3f}HZr!Z maxfree M minfree N}5.dDn5"tCK strict_maxperm N}
1,r1M'z3f}HZr!Z maxclient M minfree N}5.dDn5"tCK strict_maxclient N}1,
+*<3fT!#

w{b)^FD?DG*K7#:
v NNPt1l&1dD?j\G\SUPPmPC=|yh*D3!#
v 53;*-z;X*D_H6Ddkdv,r*gM"zD3T!)sDUPPm#

minfree M maxfree N}D1!5!vZzwDZfs!#g{z}Z9C JFS,r maxfree M minfree N}


.dDn5&C\GHZrsZ maxpgahead N}D5#TZv?M JFS,maxfree M minfree N}.dDn
5&C\GHZrsZ j2_maxPageReadAhead N}D5#g{z}Z9C JFS Mv?M JFS,r&C+ minfree
N}D5hCI;vsZrHZ=vD~53POs pageahead 5D}V#

g{fZ`vZfX,r minfree M maxfree N}5aPy;,#Z AIX 4.3.3 P}kZfXDEnG*KP


s? RAM D MP 53#?vZfX<PT:D minfree M maxfree 5,+G vmo |nT>D minfree M
maxfree 5+GyPZfXD minfree M maxfree 5D\M#

;v;;+7+|*+fDlbJ1D minfree s!D$_G vmstat |n#BfGQo= minfree 5D53


O vmstat |nD?Vdv:
# vmstat 1
kthr memory page faults cpu
----- ----------- ------------------------ ------------ -----------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
2 0 70668 414 0 0 0 0 0 0 178 7364 257 35 14 0 51
1 0 70669 755 0 0 0 0 0 0 196 19119 272 40 20 0 41
1 0 70704 707 0 0 0 0 0 0 190 8506 272 37 8 0 55
1 0 70670 725 0 0 0 0 0 0 205 8821 313 41 10 0 49
6 4 73362 123 0 5 36 313 1646 0 361 16256 863 47 53 0 0
5 3 73547 126 0 6 26 152 614 0 324 18243 1248 39 61 0 0
4 4 73591 124 0 3 11 90 372 0 307 19741 1287 39 61 0 0
6 4 73540 127 0 4 30 122 358 0 340 20097 970 44 56 0 0
8 3 73825 116 0 18 22 220 781 0 324 16012 934 51 49 0 0
8 4 74309 26 0 45 62 291 1079 0 352 14674 972 44 56 0 0
2 9 75322 0 0 41 87 283 943 0 403 16950 1071 44 56 0 0
5 7 75020 74 0 23 119 410 1611 0 353 15908 854 49 51 0 0

ZOv>}dvPIT4=-#<ao= 120 D minfree 5#rK,3ff;Ma"z,"RZbVXbiv


B,UPPmZ3v1LuA+o= 0#;)"zbViv,h*UP!D_LMah{x^(KP,1=3
ff;ME;)3f*9#*h9bViv"z,IT<GvS minfree M maxfree D5#

g{O(&C;1P 1000 3(nY)GUPD,kKPTB|n:


# vmo -o minfree=1000 -o maxfree=1008

*9dI*@C|D,k|( -p j>:
# vmo -o minfree=1000 -o maxfree=1008 -p

S AIX 5.3 *<,minfree N}D1!5vS=?vZfX 960 3,maxfree N}D1!5vS=?vZfX


1088 3#

ZfX
vmo -o mempools=number_of_memory_pools |nJm|D53}<1dCDZfX}#

rK mempools !n;Ya/,d/#t;PdVmb53P*T0 VMM c(,(i;*|Dbv5#;


\|D UP ZKM MP ZKOD mempools 5,K|Da4=ZKD~P#

ZfT\ 131
yZPmD LRU
Z AIX 5.3 P,LRU c(IT9CPmr3!m#Z AIX 5.3 .0,3!m=(G(;ICD=(#yZP
mDc(a)3fDPm4T?V`MDNxP(h#

TBGwV`MDNDPm:
v $w
v @C
v M'z
v 9u

g{tCK WLM,2fZ`DPm#

I9C vmo |nD page_steal_method N}{CyZPmD LRU &\"tC-4DyZomX7D(h#


page_steal_method N}D1!5* 1,bb6EtCKyZPmD LRU &\"RPmCZ(h3f#g{
page_steal_method N}hC* 0,rm>9CKyZomX7D(h#page_steal_method N}D5Z bosboot
M reboot .sz'#

":g{TyZPmD==xP(h,rT;9CT lrubucket N}8(Df"x,+Gf"xITZ`vPm


OX~"|(Q(hD3fD}?#

9C lrubucket N}uYZf(h*z
T lrubucket N}w{IuYsZf53OD(h*z#

3ff;c((hZf!,0RUP!#Zbv(hP,3N<;;XC,g{;P"VUP!,M*<Z~
N(h#Z~N(h}LP,g{N<;TXU,D!+;CZ;vBD3(3ff;)#

sZf53P,I\aP+`!,TA(h;}4,yT+ZfV*;)!f"N#3ff;c(+(h;v
!f"x;sZFyB;x.0Y;N(hCx#;vf"xD1!]?* 131072 !r_ 512 MB D RAM#
I9C vmo -o lrubucket=new value |nw{!},"R5G 4 KB !D6}#

minperm M maxperm N}D5


Yw53(}+Zx-A4DZf3tZ5Zf;zc;,*s#

g{D~3fZ|GD3!;XBVd0;ks,GMZ!KdkdvYw#CD~3fIT4T>XDr6
LD(g NFS)53#

3!9CDD~`TCZFcD($wrLrD>)NDD~DH}GI"X\XZ minperm M maxperm D


5D:
v g{ RAM PD~3fy<DYVH_Z maxperm,3ff;DT!;CZD~3#
v g{ RAM PD~3fy<DYVHMZ minperm,3ff;DT!,1CZD~3MFc3#
v g{ RAM PD~3fy<DYVHiZ minperm M maxperm .d,3ff;;T!D~3,}GD~3
DXwk}?sZFc3}#

TZ;vX(D$w:X,"b\*D~3DdkdvGG#P[5D#I\Zm;v$w:XP,ZZfP
#VFcN3|*X*#*Kb4w{4,BDH},I9Cx -v !nD vmstat |n#
# vmstat -v
1048576 memory pages
1002054 lruable pages
478136 free pages

132 T\\m8O
1 memory pools
95342 pinned pages
80.1 maxpin percentage
20.0 minperm percentage
80.0 maxperm percentage
36.1 numperm percentage
362570 file pages
0.0 compressed percentage
0 compressed pages
35.0 numclient percentage
80.0 maxclient percentage
350782 client pages
0 remote pageouts scheduled
80 pending disk I/Os blocked with no pbuf
0 paging space I/Os blocked with no psbuf
3312 filesystem I/Os blocked with no fsbuf
0 client filesystem I/Os blocked with no fsbuf
474178 external pager filesystem I/Os blocked with no fsbuf

numperm 5xvKZfPDD~3}* 362570#bG5ZfD 36.1%#

g{z"b=53Zrw3Udwv3f,I\Gr*ZfPDD~3}MZ maxperm 5x9D~XBwHY


J_ZFcC=DXBwHYJ#rKZbVivB,(}+ maxperm 55=MZ numperm D3v5Ih9
FcD3f;wv#r* numperm 5|F* 36%,IT+ maxperm 5u=MZ 30%#rK,3ff;c(
;G!CKD~3f#g{ lru_file_repage N}hC* 0,rZZfPDD~3f}sZ minperm N}5D
ivB;T!D~3f#

9C strict_maxperm !nD@CD~_Y:f^F
1 vmo |nD strict_maxperm !nhC* 1 1,(}C maxperm 5I*@CD~_Y:fDO^,I
TCZCD~_Y:fDZf?wv2T^F#

=oO^1,T@C3f9Cn|nY9Cc((LRU)
#

/f: strict_maxperm !n&C;Zh*T@CD~_Y:fw2T^FDivBtC#;J1X9C


strict_maxperm !na<Bbk;=D53P*,r*|DdK VMM 3ff;D=(#

9C maxclient N}Dv?M JFS D~53_Y:f^F


g{ strict_maxclient N}hC* 1(1!5),r maxclient N}m>ICZ:ex_Y:fDM'z3fD
ns5#

v? JFS D~53+M'z3fCZ|D:ex_Y:f#9C maxclient N}(CN}GIwD)1T5Z


fPM'z3fD^FG?F4PD#g{ strict_maxclient N}5hC* 0,r maxclient N}d1m^F#
bb6EM'z3fD}?IT,} maxclient N}D5,g{"zbViv,r1M'z LRU X$LrK
P1;T!M'zD~3f(x;GFc3f) #

1M'z3fD}?Z maxclient N}P5D minfree 3f}TZ1,*<KP LRU X$Lr#LRU X$L


r"TT!n|P4}C}DM'z3f#g{M'z3fD}?!Z maxclient N}D5+sZ minperm N
}D5,"R lru_file_repage N}D5hC* 1,r LRU X$Lr+}CXBw3F}w#

g{D~XBw3F}wD5sZFcXBw3F}wD5,r!qFc3f(|GG}Z$wDf"w)C
Zf;#g{FcXBw3F}wD5,}KD~XBw3F}wD5,r!qD~3fCZf;#

g{ lru_file_repage N}D5hC* 0,"RD~3fD}?,}K minperm N}D5,r!qD~3fC


Zf;#g{D~3fD}?!Z minperm N}D5,rIT!qNN9;P}CD3fCZf;#

ZfT\ 133
g{M'z3fD}?,}K maxclient N}D5( strict_maxclient N}D5HZ 0 GI\"zbVivD),
r!qD~3fCZf;#

maxclient N}20l NFS M'zM9uD3f#mk"b maxclient N}(#&ChC*;v!ZrHZ


maxperm N}D5,XpGtCK strict_maxperm N}r strict_maxperm D5hC* 1 DivB#

3fUdVd
AIX Pa)`V3fUdVd_T#
v SY3fUdVd(DPSA)
v s3fUdVd(LPSA)
v H3fUdVd(EPSA)

SY3fUdVd
SY3fUdVd_TG AIX PD1!_T#

g{9CSY3fUdVd,w3UdDELiVdaSY=Xkwv3f*9,byM;alIP``Dw
3UdVd#;x,bD72<Bw3UdnbD}?9C#Z;vPc?If!DibZfx3fwHVG
XkD53P,w3UdhsD?I\MT0yh*D?;y`#

Z;3;wv=w3Uds,g{C3;4X=ZfP,G4G3DELi;#t#rKw3Ud9CYVH
D5I\";;(;43Kw3UdD3},r*2P;?V;4X RAM#g{wXDG;3G;v_LD$
wf"w,"Rg{_LMEKG3`XDZfr_C_LfZ,G4G;3ELia;ME#S AIX 5.3 *
<,I9Cw3Ud,xXU&\4MEQAXwZfD3fD"&Zw3UdPDELi#PXj8E",
kNDZ 136 3D:w3Ud,xXU;#

g{;PtCw3Ud,xXU,r}7dCw3Ud?G#X*#Kb,g{;PdCc;Dw3Ud,r
Xkw{53T@9}Z$wDf"3fIZD~3fn/x;v#g{$w:XD$wf"hsYZ5Zf
?,"Rw{K53T9D~3fn/;a<B$wf"3fD;v,rIT;h*nYDw3Ud?#9&
CP;) PTA N(b)N;GSYVdN) #ZbVivB,(i9Cn!5 512 MB,}G539Cs?D
PTA Ud,Ud?IT(} svmon -S |n47(#

g{$wf"hs_Z5Zf?,rXkAYdCk$wf"ibZfDs!`,Dw3Ud#qr,53n
U+D!w3Ud#

s3fUdVd
AIX Yw53a)K;V=(4tCs3fUdVd_T,|b6Ew3Ud3fDELi;PZ%0T&D
ZfPD3f1EVd#

y=%08T3V==^D3f#}g,9C bzero() S}L"3fI calloc() S}Lksr_3fQu<


/3v5#

Zs3fUdVd_TB,g{%0= RAM 3MaVdw3Ud[,+GZX(DxL#{wv3f.0,


3f;aVdxCxL#rK,;\my1;DO*g{;vxL*wvM;(aPc;Dw3Ud,r*m
;)xLITm*<+{DKyPDw3Ud#

134 T\\m8O
H3fUdVd
g{zk*7#;vxL;ar*w3Ud;cx;1@,rKxLIT9CH3fUdVd_T4$Vdw
3Ud#

bIT(}+F* PSALLOC D73d?hC* early 54jI#bITIxLjIrI|nPjI,


(PSALLOC=early |n)
#1xL9C malloc() S}L4VdZf1,Cf"wa"4*KxL#tw3U
di,MG5,|GG*CxL#tD,yT1xLh*wv1,Mmy1;XPICUd[#g{9CHV
d_T,"Rg{Z< CPU G#X|,zIT9Cm;v73d?/} NODISCLAIM=true,byIT?N
wC free() S}Lx^hwC disclaim() 53/}#

C vmo |n!q LPSA r DPSA


9C vmo -o defps |n\;r*rXUSY3fUdVd(DPSA),Tc#ts3fUdVd_T
(LPSA)
#

5* 1 m> DPSA Gr*D,5* 0 m> DPSA GXUD#

w3UdMibZf
vmstat |n(avm P)"ps |n(SIZE"SZ)Md{5CLr(fK5JCJDibZf?,r*Z9C
DPSA DivB,w3UdI\4%0#

9C lsps -s |n(x;G lsps -a |n)4i4ICw3Uda|2+,r* lsps -a |n;T>K5J


9CDw3Ud#+G lsps -s |n|,K}Z9CDw3Ud,T09C EPSA _TDivB#tDw3
Ud#

w3UdP5w{
g{ICDw3UduY=;v\MD5,Yw53a"TMEJ4,WH/fxLMEw3Ud,g{T;
;Pc;Dw3UdVdx10xL,MP9xL#

npswarn M npskill N}D5


npswarn M npskill DP5CZ VMM v(241r/fxLM241rnUU9xL#

b=vN}I(} vmo |nhC:


npswarn
8(UPw3Ud}5,=oC}5sYw53*<M SIGDANGER EExxL#g{o=K npswarn
P5,"RxL}Z&mKEE,xLIT!qvTCEEr_I!d{Yw,gKvr9C
disclaim() SLrMEZf#
npswarn D}5;(*sZ 0,x!Z53\w3UdD3}#bI9C vmo -o npswarn=value |
nxP|D#
npskill
8(UPw3Ud}5,=oC}5sYw53*<U9xL#g{=oK npskill DP5,;v
SIGKILL ;M=njaDxL#}Z&m SIGDANGER DxLr_9COgVdDw3UdDxL
(;)Zfks,w3Ud"4Vd)ITbZ;P9#v( npskill ,O5D+=gB:
npskill = maximum (64, number_of_paging_space_pages/128)

npskill D}5;(*sZ 0,x!Z53\w3UdD3}#bI9C vmo -o npskill=value |n


xP|D#

ZfT\ 135
nokillroot M nokilluid
(}9C vmo -o nokillroot=1 |n+ nokillroot !nhC* 1,r1o= npskill P51,root C
'5PDxL+bZ;1@#
(}9C vmo -o nokilluid |n+ nokilluid !nhC*Gc5,rMZbv5DC'j6+bZI
Z3fUd\Mx;1@#

fork() XT1ddtN}
g{;vxLr*1Yw3Ud3fx;\Iz,wHLraXTCIzeN#?=NXT.d,wHLr,
OSY 10 v1S\Z#

schedo |nD pacefork N}8(ZXT'\D fork() wC.0H}D1SEE}#}g,g{ fork() S/


}wCr*;Pc;DICUd4(;vBxLx'\,ZH};v8(D1d\Z}s,53aXBwCC
/}#,O5G 10,r*?v$w\ZG 10 ms,53a? 100 ms XT fork() /}DwC#

g{w3Ud\Y;Gr*2d;7(D$w:Xe5,rvsXT1ddtIJmxLSYc;$D1ds
ME(gTB>}Py>):
# schedo -o pacefork=15

by,153XT fork() D/}wCD1r,r*;)xLaxKKPxMEKw3UdD3f,yTP|_


DI&8J#

w3Ud,xXU
S AIX 5.3 *<,zITZ3)ivB9Cw3Ud,xXU&\4MEw3UdELi,byM;XdCk
CZX($w:XDibZf?,y`Dw3Ud#,xXU&\;JCZSY3fUdVd_T#

XBwx3fsTw3UdixP,xXU
1!ivB,a9CbVZ3fSw3UdAXZf.sMEw3UdELiD=(#

;PZ?NXBwx3f1MEiD-rG:+itZw3UdPIZ LRU X$LrT!4^DD$wf"


3fDivBa)|CDT\#g{T!K3f,r;X4PXBwv&\#

zIT9C vmo |n4w{TBN}:

npsrpgmin
C>: 8(XBwx3f,xXU*<1UPw3Udi}DP5#
5: 1!5:MAX (768, npswarn+ (npswarn/2))
6': 0 =53Pw3UdiD\}#

npsrpgax
C>: 8(XBwx3f,xXU#91UPw3Udi}DP5#
5: 1!5:MAX (1024, npswarn*2)

rpgclean
C>: tCr{C9CSY3fUdVd_TME3fDw3Udi(T3fxPACJ1)
#
5: 1!5:0,m>;Zwx}Z^DD3f1MEw3UdELi#5* 1 m>wx}Z^DrCJ(r
A!)D3f1MEw3UdELi#

136 T\\m8O
6': 0 | 1

rpgcontrol
C>: tCr{C9CSY3fUdVd_TZwx3f1MEw3Udi#
5: 1!5:2,m>^[P5G`Y,\GtCZwx3f1MEw3UdELi#
":g{ rpgcontrol N}D5* 1,r;&mACJ#1!ivB,;P4CJ\GS\&m#5*
0 m>{Cwx3f1MEw3UdELi#
6': 0 | 1 | 2

(}emZf4xP,xXU
xPw3Ud,xXUDm;V=(GemZf,CYwG9C psgc ZK}L45VD#

psgc ZKxLMEP4YNwvDQ^DZf3fDw3UdELi,rMEw3UdELiyZD4^D3
fDw3UdELi#

psgc ZKxL9CTBIwN},I9C vmo |nTb)N}xPw{:

npsscrubmin
C>: 8(UPw3Udi(Zf3fem*<,T9CSY3fUdVd_TME3fDELi)D}
?#
5: 1!5:MAX (768, npsrpgmin N}D5)
6': 0 =53Pw3UdiD\}#

npsscrubmax
C>: 8(UPw3Udi(Zf3fem#9,T9CSY3fUdVd_TME3fDELi)D}
?#
5: 1!5:MAX (1024, npsrpgmax N}D5)
6': 0 =53Pw3UdiD\}#

scrub
C>: tCr{C9CSY3fUdVd_TMEZfP3fDw3UdELi#
5: 1!5:0,j+{CZfem#g{C5hC* 1,rZ53UPw3Udi}!Z npsscrubmin N
}D5T0_Z npsscrubmax N}D51,+tCw3UdELiDZfem#
6': 0 | 1

scrubclean
C>: tCr{C9CSY3fUdVd_TMEZfPP4^DD3fDw3UdELi#
5: 1!5:0,m>;*ZfPQ^DD3fMEw3UdELi#g{C5hC* 1,rTZQ^Dr4
^DD3<MEw3UdELi#
6': 0 | 1

2mZf
(}9C shmat() r_ mmap() S}L,D~ITw7X3d=Zf#b\bK:e2\bK53wC*z#

ZfT\ 137
Zfxr;S*2mNrxr#S AIX 4.2.1 *<"R;T 32 ;&CLrP',TxL(3-12 M 14 N),
45Ht 11 2mZfN(;|(2mb}]r2mbD>N),14 NM;MEK#b)NPD?;vDs!
<GT 256 MB FD#&CLrIT(}A/4N4A/4D~#&CLrITr%X(}zIb)3dND
8k4\bwCA/453/}D*z#

D~M}]2IT;`vxLr_Ly2m#;x,bh*xLr_LD,=,"R|D&mITzCO&C
Lr#dMD9CG(}}]b&CLr+dCwsM}]b:e_Y:f#

w3Ud*2mZfxDVdMq*=PxLKDVd(g{ DPSA _T;XU,;);v3f;9Crw3


Ud"4Vd)#

)92mZf
)92mZfJm 32 ;xLVd!A 1 vVZD2mZfN(!{*nS|D3)
#KXTI)ZxL73
P+d? EXTSHM hC* ON"1SEG r MSEG DG)xL9C#

)92mZfSy>O{}K;P 11 v2mZfxrD^F#64 ;xL;\ EXTSHM d?D0l#

+ EXTSHM hC* ON k+Cd?hC* 1SEG '{`,#^[NVhC,!Z 256 MB DNN2mZ


fZZ?w* mmap N4(,rKk mmap PE`,DT\0l#sZHZ 256 MB DNN2mZfw*$
wNZZ?4(#

g{ EXTSHM hC* MSEG,ryP2mZfZZ?<w* mmap N4(,SxqC|CDZf{CJ#

;vxLITC=D2mZfxrD}?G;P^FD#D~3dkT0;y\'V,+{DDX7Uds!
G 256 MB D6}(Ns!)
#ZC#=B;'VX(e2mZfxrD]?#ZKxLPE`,P*#

)92mZfPTB^F:
v dkdvD==;^F*MZf3dxrD;y#
v ;'V uphysio() `MD I/O(G-< I/O)
#
v b)2mZfxr;\Cwdkdv:ex,1GL(D:eZ;vPO&mLrP"z#}g,b)x
r;\Cw async I/O :ex#
v b)N;\9C plock() S}L4L(,r*Zf3qN;\C plock() 4L(#

AIX ZfW5T'V
AIX IS#i(|,<B13JOD&mw)*xLVdZf#g{(}hC MEMORY_AFFINITY 73d?
Z53OtCKZfW5T'V,rIT9CK&\#1!ivB,Z AIX 5.2 PtCZf`FT,+zIT
{C|#S AIX 5.3 *<,cM;\{CZf`FTK#

IBM yZ POWER D=( SMP 2~53|,\;'V%v"=vr`v&mw>,(!vZX(D53)


D#i#b)#iPD?;v<|,`v&mw"RC53Zfkb)#i`,S#ZNN&mwITCJ5
3PDyPZf1,1Z53P07,S=T:yPD#iDZf(xG,S=d{#iDZf)1,&mw
MP|lDCJM|_Dxm#

1tCZf`FT1,?v#i<PT:D vmpool(|,K;vr`vZfX)#?vZfX<PT:D3f
f;X$Lr lrud#?vXPDZf?GI#iPICDZf?r53\mcVdx VMM DZf?v(D#

g{z}Z9C AIX 5.2 "R{CKZf`FT,rZfXD}?!vZ53PDZf?M CPU }#

*{C AIX 5.2 ODZf`FT'V,zIT9CTB vmo |n:

138 T\\m8O
vmo -o memory_affinity=0

":*C|n'VP',bosboot M reboot GXkD#


1!5* 1,bm>tCKZf`FT'V#

tCZf`FT'VDYwf_Yw53XE#i_gi/|D}]a9#1!ZfVd_TZ MCM Vwi


R#*KC=>X MCM ZfVdDEH(,&CLrXk<v MEMORY_AFFINITY 73d?gB:
MEMORY_AFFINITY=MCM

CP*(} fork(Iz)+%#+G,*K(}T exec /}DwC4#VKP*,Cd?Xk|,Z+]=


exec /}wCD73V{.P#

`XE"

vmo |nMZ 129 3D:VMM 3ff;w{;#

bindprocessor |nrS}L#

WLM `MJ4/tT#

>X MCM ZfVdDT\0l


>X MCM ZfVdTX(&CLrD0l\Q$b#;)&CLr;\0l,m;)T\a_,9P;)a
B5#

s`}&CLr;(*xLSZf`X4q!T\Uf#bh*@9&CLr4P1,AIX VIwF/&CL
r=;, MCM DxLP#

nPI\DSZf`XPqfD=(G^F&CLr;+xLKPZ%v MCM O#bI(} bindprocessor


|nM bindprocessor() /}jI#2ITI resource set `X|nM~qjI#

1&CLr*s`ZZ%v MCM O^FDxL1,(}ZfX*C=DT\Uf!vZZfVdM&CrP


;,_LDCJ#=#P%@VdZfM}C(;}]D_LD&CLrI\mVvT\Da_#yP_L2
mZfD&CLr\PI\mVvT\DB5#

9C vmo |nxPZf<V
S AIX 5.3 *<,zIT9C vmo |nDN}4VdC'Zf#2ITv(G*9C;%4"DwH_T9
G-7wH_T#

g{9C;%4"DwH_T,rZfGZZ;NS%ZfN1S}ZKP_LD>,#iVdD,bGZ;
N13JO#g{9C-7wH_T(C_TGyPZf`MD1!_T),rZfVdGg?v vmpool V
nD#

vmo |nDTBN}XFC'ZfD<V,d5IT* 1,m>9C;%4"wH_T,2IT* 2,m>-


7wH_T#
memplace_data
KN}*TB`MD}]8(Zf<V:
v Qu</r4u</Dw*I4PD~D}]
v QN}]
v 2mb}]

ZfT\ 139
v ZKP10kDTs#iD}]
KN}D1!5* 2#
memplace_mapped_file
KN}*3d(}g9C shmat() /}M mmap() /})=xLDX7UdDD~8(Zf<V#
KN}D1!5* 2#
memplace_shm_anonymous
KN}*d1$wf"ZfDd{2mZf((}wC shmget() /}r mmap() /}4()8(Z
f<V#CZf;\I4(xLrdSxLCJ,"R;k{FrX|V`X*#KN}D1!5*
2#
memplace_shm_named
KN}*d1$wf"ZfDQ|{2mZf((}wC shmget() /}r shm_open() /}4()
8(Zf<V#|kJm`vxL,1CJ|D{FrX|V`X*#KN}D1!5* 2#
memplace_stack
KN}*LrQ;8(Zf<V#KN}D1!5* 2#
memplace_text
KN}*w*I4PD~D&CLrD>(+GdStn}b)8(Zf<V#KN}D1!5* 2#
memplace_unmapped_file
KN}*43dDD~CJ8(Zf<V(}g9C read() r write() /})
#KN}D1!5* 2#

9C MEMORY_AFFINITY 73d?xPZf<V
ZxL6p,IT9C MEMORY_AFFINITY 73d?dCC'ZfD<V,+bya2G9C vmo |nD
N}dCDZf<V#

BmPvK MEMORY_AFFINITY 73d?DI\5:

m 2.
5 P*
MCM (CZfG>XD,2mZfG>XD#
SHM=RR 53 V M Posix 512mZf<G(} MCM VnD#JCZ 4 KB M'Vs3fD2mZf
Ts#C5;Z,1(eK MCM 5DivBT 64 ;ZKP'#
LRU=EARLY ;)o=MP5(}g minfree N}),LRU X$Lr+Z>XZfOt/#|;aH}yPD
53X<o=MP5#C5;Z,1(eK MCM 5DivBP'#

IT* MEMORY_AFFINITY 73d?hC`v5,b)5.dC @ {Et*#

s3f
9Cs3fDw*?DG*_T\Fc(HPC)&CLr,r9Cs?ibZfDNNZfCJ\/M&CL
ra_53T\#53T\Da}Gr**;bv:ex(TLB)\3d|sDibZf6',Sxu!K4
|PJ#

s3f2\a_Zf$!DT\,r*|;XZ=o 4 KB D_g1XB*<$!Yw#

AIX 'V 32 ;M 64 ;&CLrDs3f9C#Kb,AIX ZKD 32 ;M 64 ;f>2'Vs3f#

140 T\\m8O
POWER4 s3fe5a9*s 256 MB NPDyPib3s!`,#AIX (}9ClO==xL#M4'V
Ce5a9,byxLP;)NI 4 KB 3f'V,xm;)NrI 16 MB 3f'V#&CLrITksC
s3f'VdQNrZfN#XZj8E",kND:s3fD&CLrdC;#

AIX ,V%@D 4 KB M 16 MB omZfX#zIT(}9C vmo |n48( 16 MB ZfXPDom


Zf?#S AIX 5.3 *<,s3XG/,D,rKz8(DomZf?+"4z',"R;h*53XB}<#
#`DomZf'V 4 KB ib3f#

AIX +s3f1wL(ZfT}#AIX ;*s3fa)3fwH'V#Is3f'VD&CLrD}]+#t


ZomZfP,1=&CLrjI*9#2+CJXFzF+h94Z(D&CLr9Cs3fr_s3fo
mZf#2+CJXFzF9+h94Z(DC'*d&CLr9Cs3f#TZG root C'j6,*K9C
s3f,Xk9C chuser |n4tC CAP_BYPASS_RAC_VMM \&#TB>}5wKgNw*,6C'
Zh CAP_BYPASS_RAC_VMM \&:
# chuser capabilities=CAP_BYPASS_RAC_VMM,CAP_PROPAGATE <user id>

s3fD&CLrdC
P`V=(I+&CLrdC*9Cs3f#

9Cs3f4'V}]MQN
1z4P&CLr1,zXk7(&CLrDs3f}]rQ9Civ,r*&CLrZ*<4P.sM^(
P;==K#s3fD9CivI fork() /}DSxLLP#

zIT9CTB=(dC&CLr,4ksu</Lr}]"4u</Lr}](BSS)T0QNDs3f'
V#
v :jGI4PD~4kss3f;
v :hC73d?4kss3f;

zIT(}TB==.;8(zGq#{&CLr*d}]rQN9Cs3f:
v Z 142 3D:(i==;
v Z 142 3D:?F==;

IZs3fD3f#$#H,*}]MQN9Cs3fD 32 ;&CLr+9Cs3f 32 ;xL<u#M#


d{xL<u#M9C 4 KB 3fT0`,NPD;,#$tT,1#$#H* 16 MB 1;pwC#

jGI4PD~4kss3f:

I4PD~PD XCOFF 7|, blpdata j>48>&CLrk*9Cs3f4'V}]MQN#

*jGI4PD~4kss3f,k9CTB|n:
# ldedit -blpdata <filename>

g{zv(;Y9Cs3f4'V}]MQN,k9CTB|n4e}s3fj>:
# ldedit -bnolpdata <filename>

2IZ9C cc |nxP4SMs(1hC blpdata !n#

hC73d?4kss3f:

zIT9C LDR_CNTRL 73d?4dC&CLr*d}]MQN9Cs3f#73d?EHZI4PD~P


D blpdata j>#

ZfT\ 141
TB!nTZ LDR_CNTRL 73d?IC:
v LDR_CNTRL=LARGE_PAGE_DATA=Y !n8(4PD&CLr&C*d}]MQN9Cs3f,bkj
GI4PD~49Cs3f`,#
v LDR_CNTRL=LARGE_PAGE_DATA=N !n8(4PD&CLr;&C*d}]MQN9Cs3f,b+
2GI4PD~PjG9Cs3fDhC#
v LDR_CNTRL=LARGE_PAGE_DATA=M !n8(4PD&CLr&C?F*d}]MQN9Cs3f#

":kvv*I\S9Cs3fqfDX(&CLrhCs3f73d?#qr,zD53T\I\B5#

(i==:

Z(i==P,I\vV&CLrD;)QN\s3f'V,m;)r\ 4 KB 3f'V#1;Pc;Ds3
fICZ'VN1,4 KB 3f+'V}]rQN#

Z(i==P,y]TBu~,&CLrZI\DivB9Cs3f:
v C'j6;Z(9Cs3f#
v 532~_Ps3fa9&\#
v zQ-(eKs3fZfX#
v Zs3fZfXPPc;D3f4(}s3f'V{vN#

g{TOu~PDNb;u;Pzc,G4&CLrD}]MQN+I 4 KB 3f'V#

jG*9Cs3fDI4PD~GT(i==KPD#

?F==:

Z?F==P,g{&CLrks;vQN,x;Pc;Ds3f4zcCks,G4Vdks'\,ba}
ps`}&CLrvmU9#

g{z9C?F==,G4zXk`Ss3XDs!,"7#XPDs3f;Cj#qr,zD?F==s3
f&CLr+'\#

9Cs3f4'V2mZfN
*9Cs3f4'V&CLrD2mZfN,zXkZ shmget() /}P8( SHM_LGPAGE M SHM_PIN
j>#g{s3f;IC,G4 4 KB 3f+'V2mZfN#

'Vs3f2mZfMs3f}]MQNDomZf4Ts3fomZfX#zXk7#s3fomZfX|
,c;Ds3f,)2mZfM}]T0Qs3f9C#

s3fD53dC
zXkdCzD5349Cs3f,"Rz9Xk8(z#{VdDomZf?4'Vs3f#

1!ivB,;VdNNZf=s3fomZfX#zIT9C vmo |ndCs3fomZfXDs!#T


B>}+ 4 GB ZfVd=s3fomZfX:
# vmo -r -o lgpg_regions=64 -o lgpg_size=16777216

**2mZf9Cs3f,zXk9CTB|ntC SHM_PIN shmget() 53wC,b+Z53Xts#V:


# vmo -p -o v_pinshm=1

*i4Z53OP`Ys3f}Z9C,k4UTB>}9C vmstat -l |n:

142 T\\m8O
# vmstat -l

kthr memory page faults cpu large-page

----- ----------- ------------------------ ------------ ----------- ------------


r b avm fre re pi po fr sr cy in sy cs us sy id wa alp flp
2 1 52238 124523 0 0 0 0 0 0 142 41 73 0 3 97 0 16 16

SO}P,zIT4=P 16 vn/Ds3f alp M 16 vUPDs3f flp#

9Cs3fD"bBn
s3f'VG;VPXb?D,Ia}T\DXT,;(iCw#fC>#k"b"GyP&CLr<\S9
Cs3fPqf#B5O,P)&CLr,Hg4Ps? fork() /}D&CLr,Z9Cs3f1|]WT\
5M#

k9C LDR_CNTRL 73d?`H,k<GjGX(DI4PD~49Cs3f,r*b\;^F;P\;S


9Cs3fqfDX(&CLrE\9Cs3f#

g{z}Z<G9Cs3f,k<Gs3fTZzD53D{eT\0l#!\3)X(&CLrI\S9C
s3fqf,+GIZuYK53OICD 4 KB 3ff",zD{e53T\I\B5#g{zD53_P
c;DomZf,"RuY 4 KB 3f};aOXA-53T\,G4zIT<G9Cs3f#

`V3s!'V
POWER5+™ &mw'VDVibZf3s!:4 KB"64 KB"16 MB M 16 GB#

IZ2~'JkOs3s!PX,rK+OsibZf3s!(g 64 KB)CZ&CLrZfITxa_&C
LrT\MLB?#9COs3s!I5M+ib3X7*;*om3X7D2~H}1d#bVH}1dD
5MGIZa_K2~*;_Y:f(g&mw*;s8:ex(TLB))D'J#IZ2~*;_Y:f;
PP^}?Du?,rK9COsD3s!vSK_Y:fP?vu?I*;DibZfD}?#bvSK&
CLrICJDZf?,xV;aPB2~*;SY#

16 MB M 16 GB 3vCZ+_T\73,x 64 KB 3r;S*c:JC,"Rs?V$w:XI\S9C
64 KB 3qf,xG 4 KB 3#

&mw`M'VD3s!
9Cx -a !nD pagesize |n,I7(X(53O AIX y'VDyP3s!#

xP 5300-04 Technology Level AIX V5.3 'Vn`DV;,D3s!,+GX(53y'VD5J3s!+


r&mw`Mxl#

m 3. xP 5300-04 Technology Level AIX V5.3 M;, System p 2~'VD3s!


3s! XhD2~ Gqh*C'dC Gq\^ ZK
4 KB yP ;'V ;'V 64 ;M 32 ;
64 KB POWER5+ r|_ ;'V ;'V v 64 ;
16 MB POWER4 r|_ 'V 'V 64 ;M 32 ;
16 GB POWER5+ r|_ 'V 'V v 64 ;

k AIX yPH0Df>;y,4 KB G xP 5300-04 Technology Level AIX V5.3 D1!3s!#}GC'


(Eks9Cd{3s!,qrxL+Lx9C 4 KB 3#

ZfT\ 143
64 KB 3s!'V
IZ 64 KB 3s!WZ9C,"RIZ9C 64 KB 3s!(x;G 4 KB 3s!)&9\`&CLrqC
T\Uf,rK AIX T 64 KB 3s!PEa;D'V#

tC539C 64 KB 3s!^hNN53dC|D#Z'V 64 KB 3s!D53O,AIX ZKT/dC5


3T9C 64 KB 3s!#64 KB s!D3Gj+Iw3D,"R53O 64 KB 3!XDs!G/,D,"
Rj+I AIX xP\m#AIX +Dd53O 4 KB M 64 KB 3!D}?,TzcT;,3s!Dh*#
svmon M vmstat |n<IC4`S53O 4 KB M 64 KB 3!D}?#

+_T\73D3s!
}K 4 KB M 64 KB 3s!b,AIX 9'V 16 MB 3(2F*sM3)M 16 GB 3(2F*^M3)
#
b)3s!<ZvCZ_T\73P,"R AIX ;aT/dC53T9Cb)3s!#

AIX XkxPdCE\9Cb)3s!#?V3s!D3}2XkxPdC#AIX ;ay]h*T/|DdC


D 16 MB r 16 GB 3D}?#

Vdx 16 MB sM3DZf;\CZ 16 MB sM3,"RVdx 16 GB ^M3DZf;\CZ 16 GB ^


M3#rK,b)s!D3&CvZ_T\73PdC#Kb,16 MB M 16 GB 3D9CGP^FD:*K
Vdb)s!D3,C'XkP CAP_BYPASS_RAC_VMM M CAP_PROPAGATE \&,r_P root (
^#

dCsM3D}?
I9C vmo |ndC53O 16 MB sM3D}?#

BfD>}Vd 1 GB D 16 MB sM3:
# vmo -r -o lgpg_regions=64 -o lgpg_size=16777216

ZO}P,sM3dC|D+ZKP bosboot |n"XB}<53.sEaz'#Z'V/,_-Vx


(DLPAR)D53O,*/,dC 16 MB sM3,ISOfD|nP!T -r !n,"R^hXB}<53#

PX 16 MB sM3D|`E",kNDZ 140 3D:s3f;#

dC^M3D}?
Xk(}53D2~\mXF((HMC)dC^M3#
1. Z\\53O,*A Properties → Memory → Advanced Options → Show Details T|D 16 GB 3
D}?#
2. (}|DVxDE*D~+ 16 GB ^M3Vd=Vx#

`V3s!&CLr'V
IT* 32 ;r 64 ;xLDX7UdD}vxr8(*9CD3s!#

b)3s!ITC73d?r&CLrD XCOFF ~xFD~PDhCM ldedit r ld |nxPdC,gB


y>:

xr ld r ldedit !n LDR_CNTRL 73d? hv


}] -bdatapsize DATAPSIZE u</D}]"bss"Q
Q; -bstackpsize STACKPSIZE u<_LQ;
D> -btextpsize TEXTPSIZE wI4PD~D>

144 T\\m8O
I*xLX7Ud}vxrD?;v8(*9CD;,3s!#TZ=VSZ,&TVZ*%;8(3s!#
8(D3s!I(}s:xP^(,T8ws!D%;#\'VDs:P:
v K('VZ)
v M(WVZ)
v G('WVZ)

ITCs4r!48(#

;P 4 KB M 64 KB 3s!G+?}VZfxr<'VD#16 MB 3s!;\xL}]MxLD>xr'
V#}Vxr<;'V 16 GB 3s!#

g{8(K;\'VD3s!,rZK+9CB;vn!D\'V3s!#g{;P3s!!Z8(D3s
!,rZK+9C 4 KB 3s!#

9C ldedit r ld |nhC&CLrDW!3s!
9C ldedit r ld |nIZ&CLrD XCOFF/XCOFF64 ~xFD~PhCC&CLrDW!3s!#

ld r cc |nICZZ4S=I4PD~1hCb)3s!!n:
ld –o mpsize.out –btextpsize:4K –bstackpsize:64K sub1.o sub2.o
cc –o mpsize.out –btextpsize:4K –bstackpsize:64K sub1.o sub2.o

ldedit |nICZhCVPI4PD~PDb)3s!!n:
ldedit -btextpsize=4K -bdatapsize=64K -bstackpsize=64K mpsize.out

":ldedit |n*sCHE(=)8(3s!!nD5,x ld M cc |n*sC0E(:)8(3s!!nD


5#

(}73d?hC&CLrDW!3s!
I9C LDR_CNTRL 73d?hCxLDW!3s!#

}g,BfD|n+9 mpsize.out xLZ\'VD2~O+ 4 KB 3CZd}],64 KB 3CZdD>,


64 KB 3CZdQ;:
$ LDR_CNTRL=DATAPSIZE=4K@TEXTPSIZE=64K@STACKPSIZE=64K mpsize.out

3s!73d?2GI4PD~D XCOFF 7PDNN3s!hC#Kb,DATAPSIZE 73d?2GNN


LARGE_PAGE_DATA 73d?hC#

`V3s!&CLr'V"bBn
f0 32 ;xL"_LQ;"2mbrsM3}]DJbI\0l AIX 'V`V3s!D\&#

32 ;xL

Z1! AIX 32 ;xLX7Ud#MB,xLDu<_LQ;M}];Z,;v PowerPC® 256 MB NP#?


0,;vNP;\9C;V3s!#rK,g{*j< 32 ;xLDQ;M}]8(K;,D3s!,+T=
_9CO!D3s!#

9CIqCsMLrM+sMLr'VD3V8!X7Ud#M,32 ;xLI+;,D3s!VpCZdu<
_LQ;M}],r*b`#MI+xLD}]Q0dQ;ECZ;,DNP#

ZfT\ 145
_LQ;

1!ivB,`_LxLD_LQ;vTxLD}]Q#rK,TZ`_LxL,Q;3s!hC+vJCZ
xLDu<_LDQ;#sx_LDQ;+SxLD}]QVd,"Rb)Q;+9CI}]3s!hC8(
Ds!D3#

Kb,+ 64 KB 3(x;G 4 KB 3)CZ`_LxLD}]ITuYxLIZQ;/d3DEP*sxI


T4(Dns_L}#v=K^FD&CLrI(}+ AIXTHREAD_GUARDPAGES 73d?hC* 0 4{
CQ;/d3,SxJm4(|`_L#

2mb

Z'V 64 KB 3D53O,AIX +Q 64 KB 3CZ+V2mbD>xrTa_T\#

sM3}]

DATAPSIZE 73d?+2G LARGE_PAGE_DATA 73d?#Kb,&CLrD XCOFF ~xFD~PD


DATAPSIZE hC+2G,;v~xFD~PDNN lpdata hC#

3s!M2mZf
IT shmctl() 53wC9C SHM_PAGESIZE |nT!q*CZ System V 2mZfD3s!#

PX9C shmctl() !q2mZfxr3s!D|`E",kND AIX 5L Version 5.3 Technical Reference: Base


Operating System and Extensions Volume 2 PD shmctl() wb#

9C ps |n7(xLD3s!
ps |nICZ`S*CZxLD}]"Q;MD>D3s!#

BfD>}T>K ps -Z |nDdv#DPGSZ PT>KxLD}]3s!;SPGSZ PT>KxLDQ;3s


!;x TPGSZ PT>KxLDD>3s!#
# ps -Z
PID TTY TIME DPGSZ SPGSZ TPGSZ CMD
311342 pts/4 0:00 4K 4K 4K ksh
397526 pts/4 0:00 4K 4K 4K ps
487558 pts/4 0:00 64K 64K 4K sleep

9C vmstat |nxP3s!`S
vmstat |nP=v!nICZT>X(3s!DZf3FE"#
vmstat -p
T>+V vmstat E"T0?V3s!D3FE"w8#
vmstat -P
T>?v3s!D3FE"#

b=v!n<S\X(3s!D:EVtPm,rGX|V all(all m>&CT>,;vr`v3!DyP\


'V3s!DE")#BfD>}T>53O,P3!DyP3s!DE":
# vmstat -P all
System configuration: mem=4096MB
pgsz memory page
----- -------------------------- ------------------------------------

146 T\\m8O
siz avm fre re pi po fr sr cy
4K 542846 202832 329649 0 0 0 0 0 0
64K 31379 961 30484 0 0 0 0 0 0

9C svmon |nxP536'3s!`S
svmon |nICZT>{v53D3s!9Civ#

svmon |nQC=v?Ta)?v3s!D3FE"w8#}g,*T>PX?v3s!D+V3FE",I
+ -G !nk svmon |n;p9C:
# svmon -G
size inuse free pin virtual
memory 8208384 5714226 2494158 453170 5674818
pg space 262144 20653

work pers clnt


pin 453170 0 0
in use 5674818 110 39298

PageSize PoolSize inuse pgsp pin virtual


s 4 KB - 5379122 20653 380338 5339714
m 64 KB - 20944 0 4552 20944

Os3s!DZf9C"bBn
Z@@T&CLr9COs3s!D1ZT\0l1,Xk<G$w:XDZf9C#

9COs3s!I\IZZfi,x<B$w:XDZf<C?vS#svmon M vmstat |nICZ`S$


w:XDZf9C,T7(Z9COs3s!1$w:XDZf<C?GqvS#

ZfT\ 147
148 T\\m8O
_-mMEL I/O T\
>wb/PV[_-mM>X,SDEL}/wDT\#

g{z;l$mi"_-Mommr_-MomVxDYw53En,kDA:L(ELf"\mDT\E
v;#

IZfZT\D~,rX,7(2LD}?M`MT0b)2LODw3UdM_-mDs!M<VG;vX
|D$20}L#PX200ELdCf."bBnDj!V[,kNDEL200<r#

`SEL I/O
`SEL I/O 1,&C<G`vJbT7(Yw}L#
v iRnn>DD~"D~53M_-m:
– “H”D~53(;Z;vom}/wOC9GV"Z`vom}/wOC?(lslv"iostat"filemon)
– “H”D~G>XD9G6LD?(filemon)
– w3UdGq'dEL&C?(vmstat"filemon)
– GqPc;DZf4_Y:fG)I}ZKPxL9CDD~3f?(vmstat"svmon)
– &CLrGq4Pm`,=(G_Y:f)DD~ I/O?
v 7(D~i,:
– “H”D~GqOXiQ?(fileplace)
v iR9CJn_Domm:
– }/wr I/O Jdw`MGqzz?1?(iostat"filemon)

$wy_D9l

ZzTELdCrw{N}vvX*D/.0,9(;u@@y_4G<10DdCMT\G;v;mDw
b#

H} I/O 1d(f
AIX 4.3.3 0sxf>|,KC4Fc CPU ZH}EL I/O(wio time)1(Q1dy<YVHbv=(Dv
?#

bv=(Z AIX 4.3.2 0Ogf>DYw53P9C,Yw53ITZ3)73BZ SMP Oxv;v)sD


wio 1dS<#C wio 1dGI|n sar(%wio)"vmstat(wa)M iostat(% iowait)(fD#

m;v|DG:wa P;vj8PvKT]R>XEL I/O D CPU UP1dYVH,9PvKT]R NFS 2


0EL I/O D CPU UP1dYVH#

AIX 4.3.2 0Ogf>P9CD=(

Z?v&mwOD?v1SPO(?&mw?k 100 N)1,53+v(Dv`p(usr/sys/wio/idle)PDD;


vIT9CnsD 10ms 1d#g{1SPO"z1 CPU 1&KPZ usr ==,G4 usr q!1SNp"m
S=|D`pP#g{1SPO"z1 CPU 1&KPZZK==,G4 sys `pq!1SNp#g{ CPU ;
1&,53+liGqPNNEL I/O }Z&m#g{PNNEL I/O }Z&m,wio `p+a]v#g{;
PEL I/O }Z&mP"R CPU ;1&,G4 idle `pq!Np#

© Copyright IBM Corp. 1997, 2006 149


bv)sD wio 1dS<GIyPUP CPU ;V`* wio 1dx;\H} I/O D_LxzzD#}g,;
P;v_LKP I/O D53a(f,} 90% D wio 1dx;\|5PD CPU }?#

AIX 4.3.3 0|_f>P9CD=(

Z AIX 4.3.3 PDDd;GZP;vP4jID I/O QZ CPU Ot/DivB+KUP CPU jG* wio#


1;P8v_LZ&m I/O "R53}K.b&ZUP4,1,K=(IT(f|YDN}#}g,;v_P
Dv&mwD53M;v}Z&m I/O 1+an`(f 25% D wio 1d#;v_P 12 v&mwD53M
;v}Z&m I/O D_L+an`(f 8.3% D wio 1d#

,y,S AIX 4.3.3 *<,53a+H} I/O = NFS 20D~53D1d(f*H} I/O 1d#

9C iostat |n@@ELT\
ZzD53&Z$w:X_e1Zr_KP;vX|&CLrC4n!/ I/O SY1,KPx;vdt1dN
}D iostat |n4*<@@#

TB shell E>Zs(KP iostat |n1,0(P;vsD~D1>ZKPTcITb?;) I/O:


# iostat 5 3 >io.out &
# cp big1 /dev/null

K>}Z io.out D~PtBBP}v(f:tty: tin tout avg-cpu: % user % sys % idle % iowait 0.0 1.3 0.2
0.6 98.9 0.3 Disks: % tm_act Kbps tps Kb_read Kb_wrtn hdisk0 0.0 0.3 0.0 29753 48076 hdisk1 0.1 0.1 0.0
11971 26460 hdisk2 0.2 0.8 0.1 91200 108355 cd0 0.0 0.0 0.0 0 0 tty: tin tout avg-cpu: % user % sys % idle
% iowait 0.8 0.8 0.6 9.7 50.2 39.5 Disks: % tm_act Kbps tps Kb_read Kb_wrtn hdisk0 47.0 674.6 21.8 3376
24 hdisk1 1.2 2.4 0.6 0 12 hdisk2 4.0 7.9 1.8 8 32 cd0 0.0 0.0 0.0 0 0 tty: tin tout avg-cpu: % user % sys
% idle % iowait 2.0 2.0 0.2 1.8 93.4 4.6 Disks: % tm_act Kbps tps Kb_read Kb_wrtn hdisk0 0.0 0.0 0.0 0 0
hdisk1 0.0 0.0 0.0 0 0 hdisk2 4.8 12.8 3.2 64 0 cd0 0.0 0.0 0.0 0 0

Z;](fGTn|;NXB}<T4D**"RT>K?v2L I/O D\e=b(r_ZbVivBP;=


b)#hdisk1 8uUP,hdisk2 S\s<+? I/O D 63%(S Kb_read M Kb_wrtn )#

":53,$ELn/Dz7G<#g{z7G<Q{C(smitty chgsys → Continuously maintain DISK


I/O history [false]),rZKP iostat |n1+T>TB{":
T}<T4DELz7G<;IC#

dt1dEL I/O 3FE";a\K0l#

Z~v(fT>K cp KPD 5 kdt1d#P8lib;E"#K cp DDC1d<* 2.6 k#rK,2.5


kD_ I/O `XT*M 2.5 kDUP1d`=yTcdv 39.5% D % iowait#;vOLD1ddt\a)
;vPX|n>m|Sj8DXw/E",+Gbv>}]>K1zZi4PXT>Z1ddtPD=yn/
E"D(f1,zXk<GDBi#

TTY (f
iostat dvPD TTY E"D=P(tin M tout)T>KyP TTY h8A4DV{}#

b|,Kf5DM1D TTY h8#f5D TTY h8GG)Ml=KZ,SDh8#;)1 TTY h8G


shell,telnet a0M aixterm 0Z#

IZ&mdkdvDV{*{D CPU DJ4,kRvvSD TTY n/M CPU {C.dD`XT#g{P


bVX5fZ,@@|G"Dx TTY S53DT\#ITICD=h|(|D&CLr,ZD~+M1^D
TTY KZN},r_I\D0}6A;v|l"|P'Dl=(EJdw#

150 T\\m8O
"&mw(f
"&mw3FE"P(% user"% sys"% idle M % iowait)a)K"&mw9CivDw8#

vmstat |ndvPj* us"sy"id M wa DP2(fKb)E"#PXb)5Dj8bM,kNDZ 87 3


D:vmstat |n;#mk"bZ 149 3D:H} I/O 1d(f;PhvDT % iowait ywD|D#

ZKP;v&CLrD53O,I/O H}1dD_YVHI\k$w:XPX#Z_P\`xLD53O,;)
I\ZKP,xm;)ZH} I/O#ZbVivB,% iowait I\\!r_*c,r*}ZKPDxL“~X”
K;)H}1d#d; % iowait OM,+G?1Ta^F&CLrT\#

g{ iostat |nmw;fZ"&mws(Div,"R % iowait 1dsZ 20%,rI\fZ I/O s(rE


Ls(Div#b;ivI\Z1Y5ZfDivBI}`w3zz#2PI\GIZ;=bDEL:X"i
,}]r&C#=xzz#T;v;=bDEL:X45,,yD iostat (fa)KX*DE"#+GPXD
~53r_-m,4_-J445,zXk9Cng filemon r_ fileplace |n.`D$_4q!E"#

}/w(f
}/w(f|,om}/wDT\`XE"#

1z3IPEL I/O T\Jb1,9C iostat |n#*K\b TTY E"M CPU 3FE",9C -d !n#
Kb,EL3FE"IT(}8(EL{F4^(C3)X*DEL#

kG!Z;v}]/OzmT53t/T4yPDn/#
Disks: T>KommD{F#{GrG hdisk rG cd,"Rb){F<zP;v}V#g{ommD{FI
iostat |n8(,G4;P8(G){F1ET>#
% tm_act
8>omELn/y<\1dDYVH(ELDxm{CJ),r_;d05,ELksD\1d4
o=#}/wZ}]+MM&m|n1Gn/D,}g0@ABD;C#“ELn/1d”YVH}H
ZJ4yC,4HZT\#1EL9CJvS1,T\MB5"Rl&1dMvS#;c45,1{
CJ,} 70% 1,xL+H}D1daHjI I/O yXhD1d|$,r*s`} UNIX xLZH
}|GD I/O ksjI1ah{(r]_)
#iR`TUP}/w451&D}/w#+}]S1&D
}/wPF=UP}/woITozuaELD?1#ZELPwkwv3fa9 I/O :XvS#
Kbps 8>K?kS`Y KB D}];+M(Ar4)
#bG Kb_read k Kb_wrtn .M}T(f1ddtD
k}C=D#
tps 8>K?kSomEL+MDN}#;N+MGh8}/Lr6p=omELD;N I/O &mks#
`X_-ksITiOI%;DEL I/O ks#+MDs!G;7(D#
Kb_read
(fKZb?dtP\DSommPA!D}]?(T KB *%;)#
Kb_wrtn
T>KZb?dtP\D4kommPD}]?(T KB *%;)
#

%@45,OvVN;P;ITS\D5,r*3FE"k&CLrDXw"53dCT0omEL}/wM
JdwPE\PDX5#rK,1zZ@@}]1,kiR`X#=MX5#n+2DX5GZEL{Civ
(%tm_act)M}]+MJ(tps).dDX5#

*KS}]PCvNNP'Da[,zXk;vmb53omEL}/wkJdwD`MxR*mb&CLr
DEL}]f!#=ng3rD"fzDriOD#=#}g,g{&CLr3rXA/4,1z5P;v_
DEL1&J(%tm_act)1,zITqC;v_DEL+MYJ(Kbps)
#Kb_read M Kb_wrtn PIT$5T
&CLrA/4P*Dmb#;x,b)P;Pa)PX}]f!#=DE"#

_-mMEL I/O T\ 151


;c45,;*EL+MJ(Kbps)\_,M^h#D_EL1&J(%tm_act)
#;x,g{zC=;v_D
531&JM;vMDEL+MJ,G4zI\P;viQD_-m"D~53r%vD~#

PXEL"_-mMD~53T\DV[,P1rITCvby;va[:zD535PD}/w=`,zD
EL I/O T\M=C#+b";\G}7,r*%vELJdw\&mD}]?GP^FD#ELJdw2I
\I*;v?1#g{zyPDEL}/w<Z;vELJdwO,"RzDG)-#&mD“Hc”D~V"
ZwvommO,zI\(}9C`XELJdw4qC'f#T\Da_!vZ}]f!D`M#

*KbX(JdwGq%M,9C iostat |n,"+,S=CX(ELJdwODyPELD Kbps }?`S#


*KqCnsD[/T\,\D+MJ(Kbps)XkZELJdwDLB?.B#Zs`}ivB,9C 70%
DLB?#Z 4.3.3 TsDYw53f>P -a r -A !naT>b)E"#

9C vmstat |n@@ELT\
*K$553G I/O s(,znC9C iostat |n#

+G,g Z 87 3D:vmstat |n;PyV[DGy,(}i4 wa P,2I9C vmstat |n8>K=fE


"#d{XZ I/O s(D8>{G:
v vmstat dvD disk xfer ?V

*KT>PX_-ELD3FE"(nsJm 4 vEL),k9CBP|n:
# vmstat hdisk0 hdisk1 1 8
kthr memory page faults cpu disk xfer
---- ---------- ----------------------- ------------ ----------- ------
r b avm fre re pi po fr sr cy in sy cs us sy id wa 1 2 3 4
0 0 3456 27743 0 0 0 0 0 0 131 149 28 0 1 99 0 0 0
0 0 3456 27743 0 0 0 0 0 0 131 77 30 0 1 99 0 0 0
1 0 3498 27152 0 0 0 0 0 0 153 1088 35 1 10 87 2 0 11
0 1 3499 26543 0 0 0 0 0 0 199 1530 38 1 19 0 80 0 59
0 1 3499 25406 0 0 0 0 0 0 187 2472 38 2 26 0 72 0 53
0 0 3456 24329 0 0 0 0 0 0 178 1301 37 2 12 20 66 0 42
0 0 3456 24329 0 0 0 0 0 0 124 58 19 0 0 99 0 0 0
0 0 3456 24329 0 0 0 0 0 0 123 58 23 0 0 99 0 0 0

bvEL xfer ?Va)K"zZy>1ddtZ?krX(Domm+MDN}#zIT8(;ADvom


mD{F#?;v8(DELD+M3FE"+4U8(D3r@Nxv#b;3F}]zmKTomh
8DksN}#+";b6A!r4kD}]?#m`_-ksITiOI;Nomks#
v vmstat dvD in P

bPT>KZ@@dtP(?k)"zD2~rh8PODN}#POD>}*ELksjIM 10 AkD
1SPO#H;s_?k"z 100 N,G4 in bvVNM\GsZ 100#+G vmstat |n,ya)Kj
8DPX53PODE"#
v vmstat -i dv

bv -i N}T>KT53t/T4;?vh8PODN}#+Gg{vSdt(I!)MF}N},Tt/
T4D3FE";GZZ;ZPT>;?vs:ZGPX;(hdtD3FE"#
# vmstat -i 1 2
priority level type count module(handler)
0 0 hardware 0 i_misc_pwr(a868c)
0 1 hardware 0 i_scu(a8680)
0 2 hardware 0 i_epow(954e0)
0 2 hardware 0 /etc/drivers/ascsiddpin(189acd4)
1 2 hardware 194 /etc/drivers/rsdd(1941354)
3 10 hardware 10589024 /etc/drivers/mpsdd(1977a88)
3 14 hardware 101947 /etc/drivers/ascsiddpin(189ab8c)

152 T\\m8O
5 62 hardware 61336129 clock(952c4)
10 63 hardware 13769 i_softoff(9527c)
priority level type count module(handler)
0 0 hardware 0 i_misc_pwr(a868c)
0 1 hardware 0 i_scu(a8680)
0 2 hardware 0 i_epow(954e0)
0 2 hardware 0 /etc/drivers/ascsiddpin(189acd4)
1 2 hardware 0 /etc/drivers/rsdd(1941354)
3 10 hardware 25 /etc/drivers/mpsdd(1977a88)
3 14 hardware 0 /etc/drivers/ascsiddpin(189ab8c)
5 62 hardware 105 clock(952c4)
10 63 hardware 0 i_softoff(9527c)

":Cdv+r53xl,b!vZ2~Mm~dC(}g,!\#f vmstat dvD in PFkK1SP


O,+Z vmstat -i dvPI\;aT>1SPO)
#li count PP}?sDu?,wib)#iz
zgK.`DPOD-r#

9C sar |n@@ELT\
sar |nGC4U/PX53D3F}]Dj< UNIX |n#

(}|Dm`!n,sar |na)KES"3fwH"TTY Mm`d{D3FE"#TZ AIX 4.3.3,sar -d


!n+zI51EL I/O 3FE"#
# sar -d 3 3

AIX konark 3 4 0002506F4C00 08/26/99

12:09:50 device %busy avque r+w/s blks/s avwait avserv

12:09:53 hdisk0 1 0.0 0 5 0.0 0.0


hdisk1 0 0.0 0 1 0.0 0.0
cd0 0 0.0 0 0 0.0 0.0

12:09:56 hdisk0 0 0.0 0 0 0.0 0.0


hdisk1 0 0.0 0 1 0.0 0.0
cd0 0 0.0 0 0 0.0 0.0

12:09:59 hdisk0 1 0.0 1 4 0.0 0.0


hdisk1 0 0.0 0 1 0.0 0.0
cd0 0 0.0 0 0 0.0 0.0

Average hdisk0 0 0.0 0 3 0.0 0.0


hdisk1 0 0.0 0 1 0.0 0.0
cd0 0 0.0 0 0 0.0 0.0

sar -d |nyPvDVNgB:
%busy
~qZ+Mks1,1dh81&DG?V#bk iostat |n(fPD %tm_act P`,#
avque GN1dZyPSJdw=h8D4jIksD=y}#Zh8}/LrSPP,I\9Pd{ I/O Y
w#g{fZ;v?1,bv}V+G;v\CD8>{#
r+w/s xvh8DA/4+MN}#bk iostat |n(fPD tps `,#
blks/s T 512 VZ*%*+MDVZ}
avwait
BoHr~qD=yN}(SP$H)#+MksZSPPUHh8D=y1d(TAk*%;)#b
v}V?0;P;(f,|D1!5T>* 0.0#

_-mMEL I/O T\ 153


avserv
=y?NQwDAk}#h8~q?N+MksD=y1d(|(Qw1d"*/H}1dM}]+
M1d)(TAk*%;)
#bv}V?0;P;(f,|D1!5T>* 0.0#

9C lslv |n@@_-mi,iv
lslv |nZd{E"PT>K_-mDi,iv#

*li_-mi,iv,k9C lslv -l lvname |n,gBy>:


# lslv -l hd2
hd2:/usr
PV COPIES IN BAND DISTRIBUTION
hdisk0 114:000:000 22% 000:042:026:000:046

COPIES DdvT>K_-m hd2 ;4FK;]#IN BAND T>KZ_T(;v_-mDtT)GgNq-D#


bvYVH=_,Vd'JM=C#?v_-m<PT:DZ_T#g{Yw53;\zc*s,G4|!q
nQ76!!?zc*s#ZRGD>}P,P\2 144 v_-Vx(LP);42 LP ;ZP?,26 LP ;Z
PD,9P 46 LP ZZ5#_T;ZPD,in-band +< 22%(26 /(42+26+46))
#DISTRIBUTION T>Ko
mVxGgNy]Z_T?pD,|GG:
edge : middle : center : inner-middle : inner-edge

PXomVx<VD|`E",kNDZ 167 3D:ommOD;C;#

9C lslv |n@@}]Dom<V
g{:XT>k I/O P\?D`XT,zITZELPwiD~Dom<Viv,T7(XiZ;(D6pO
Gqah-Dx#

*NDommP_-m hd11 DVx<Viv,k9CBP|n:


# lslv -p hdisk0 hd11
hdisk0:hd11:/home/op
USED USED USED USED USED USED USED USED USED USED 1-10
USED USED USED USED USED USED USED 11-17

USED USED USED USED USED USED USED USED USED USED 18-27
USED USED USED USED USED USED USED 28-34

USED USED USED USED USED USED USED USED USED USED 35-44
USED USED USED USED USED USED 45-50

USED USED USED USED USED USED USED USED USED USED 51-60
0052 0053 0054 0055 0056 0057 0058 61-67

0059 0060 0061 0062 0063 0064 0065 0066 0067 0068 68-77
0069 0070 0071 0072 0073 0074 0075 78-84

CTB|niRZ hdisk1 ELO hd11 DU`?V:


# lslv -p hdisk1 hd11
hdisk1:hd11:/home/op
0035 0036 0037 0038 0039 0040 0041 0042 0043 0044 1-10
0045 0046 0047 0048 0049 0050 0051 11-17

USED USED USED USED USED USED USED USED USED USED 18-27
USED USED USED USED USED USED USED 28-34

USED USED USED USED USED USED USED USED USED USED 35-44
USED USED USED USED USED USED 45-50

154 T\\m8O
0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 51-60
0011 0012 0013 0014 0015 0016 0017 61-67

0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 68-77
0028 0029 0030 0031 0032 0033 0034 78-84

SO=B,eiwTzmK_5"Pd"PD"ZPdMZ_5#
v ;v USED j>8>KK;CODomVx}K8(D_-mb,}Z;m;v_-m9C#P;v}V8
>KC lslv -p |n8(D_-m_-VxE#
v ;v FREE j>8>KK;CODomVx;P;NN_-m9C#g{_-VxZELO;,x,+zz
_-mi,#
v ;v STALE omVxoD}]z;\9C#9I9C lspv -m |ni4 STALE omVx#+omVxj
* STALE Xk|,MP'omVx`,DE"#bvxLIT; syncvg |nZ vary-on 1LrG53K
PDNN1LY,=wC#1=bv STALE Vx;P'}]X4,|GH;l&Aks2;l&4ks#

Z0fD>}P,_-m hd11 Zomm hdisk1 PGi,,|DZ;v_-VxZ inner-middle M hdisk1 D


Z?xr,x_-Vx 35-51 Zb?xr#g{;v:XfzCJ hd11,+azz;X*D I/O H}1d,
r*_-m hd11 I\h*|$DQw1d#b)(f,y8>Z hdisk0 r hdisk1 P;PUPDomVx#

9C fileplace |n@@D~<V
*KbH04FDD~ big1 GgNf"ZELOD,I9C fileplace |n#fileplace |nT>D~D`v
iZ;v_-mZrZ;vr`vommZD<Viv#

*7O fileplace |nGqQ20"RIC,zITKPgB|n:


# lslpp -lI perfagent.tools

9CgB|n:
# fileplace -pv big1

File: big1 Size: 3554273 bytes Vol: /dev/hd10


Blk Size: 4096 Frag Size: 4096 Nfrags: 868 Compress: no
Inode: 19 Mode: -rwxr-xr-x Owner: hoetzel Group: system

Physical Addresses (mirror copy 1) Logical Fragment


---------------------------------- ----------------
0001584-0001591 hdisk0 8 frags 32768 Bytes, 0.9% 0001040-0001047
0001624-0001671 hdisk0 48 frags 196608 Bytes, 5.5% 0001080-0001127
0001728-0002539 hdisk0 812 frags 3325952 Bytes, 93.5% 0001184-0001995

868 frags over space of 956 frags: space efficiency = 90.8%


3 fragments out of 868 possible: sequentiality = 99.8%

bv>}T>KZCD~PP\!Di,,<G;B!Dd6#rKRGITFO big1 DELEP;PZ\


sLHO0l3rA!D1d#Kb,g{;v(U4()D]?* 3.5 MB DD~;Rbvbv!i,,+
D~53\eO4p4";PzzOXDi,#

<;ivB,?VD~+;a3d=NNmDiP#b)xr+~=X;D~53nd*c#b)xrT>*
unallocated _-i#,Pb)xrDD~+T>H5Jy<VZ}|sDD~s!(4 ls -l |nT>Ds
!Os,x du |nT>Ds!O!,r_T>D~5JZELO<CDi}) #

fileplace |nS_-mPA!KD~DiPm#g{D~GB(D,G4E"I\9;PZELO#k9C
sync |neUb)E"#,y,fileplace |n+;aT> NFS 6LD~(}GC|nKPZ~qwO)
#

_-mMEL I/O T\ 155


":g{D~G(}Qw;,D;Cs4(D,"R4kK`1V"D}],G4ELPD3;P75|,K
}]ET>Z fileplace |n(fP#D~53";T/ZD~4(1ndek3#;x,g{byDD
~G3rA!D(}g,9C cp r tar |n),rG<.dDdt+w*~xFc#by;4,cp |
nDdvITzzHdkD~|sDa{,!\=_|,D}]G;yD#

Ud'JM3rT
O_DELP'TG8D~iQivOa"RITa)OCD3rD~CJ#O_D3rTG8D~;VdD
|S_P,xT,.VPI\a)OCD3rD~CJ#
UdP'T =
CZD~f"D,N\} / (ns,NomX7 - n!,NomX7 + 1)
3rT =
(\D,N} - Vi,N} +1) / \,N}

g{"V3rTrUd'J5dM,rI9C reorgvg |na__-m{CJM'J(kNDZ 172 3D:X


i_-m;)#*a_D~53{CJM'J,kNDZ 202 3D:D~53Xi;#

Zbv>}P,nsDf"iomX7 - n!Df"iomX7 + 1 G:0002539 - 0001584 + 1 = 956 f


"i;\D;9Cf"iG:8 + 48 + 812 = 868;UdP'TG 868 / 956(90.8%);3rTG(868 - 3
+ 1)/ 868 = 99.8%#

IZ\DC4f"D~Df"i}?";|,dSiD;C,+omX7|(,yTTsZ 32 KB DD~4
5,UdP'TI\@6o;= 100%,49CD~;Z,xDf"iP#

9C vmstat |n@@w3Ud I/O


vmstat |nD(f8>}ZxPw3Ud I/O YwD}?#

w3UdD I/O xvGfzD,s`}ivB;N;3#TB=v>}T>K"zZzwxP C `k1Dw


3n/;K$X9C rmss |nsu!Div#pi M po(w3Ud3fwkMw3Ud3fwv)PT>K
? 5 kD1ddtZDw3Ud I/O Yw}(4U;3 4096 VZ)
#Z;](f(XB}<sD\a)Q;
>}#k"bG)ZVNPzzDw3n/#
# vmstat 5 8
kthr memory page faults cpu
----- ----------- ------------------------ ------------ -----------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
0 1 72379 434 0 0 0 0 2 0 376 192 478 9 3 87 1
0 1 72379 391 0 8 0 0 0 0 631 2967 775 10 1 83 6
0 1 72379 391 0 0 0 0 0 0 625 2672 790 5 3 92 0
0 1 72379 175 0 7 0 0 0 0 721 3215 868 8 4 72 16
2 1 71384 877 0 12 13 44 150 0 662 3049 853 7 12 40 41
0 2 71929 127 0 35 30 182 666 0 709 2838 977 15 13 0 71
0 1 71938 122 0 0 8 32 122 0 608 3332 787 10 4 75 11
0 1 71938 122 0 0 0 3 12 0 611 2834 733 5 3 75 17

BfD“before”M“after”vmstat -s (fT>Kw3n/D[Fiv#kG!G paging space page ins M paging


space page outs zmKf5Dw3Ud I/O#bv(4^()D page ins M page outs (fK\DIw3z
F4PD I/O,4w3Ud I/O MU(D~ I/O#C(fQ--}`-"R>}KM>V[^XDE"#

# vmstat -s # before # vmstat -s # after


6602 N3fwk 3948 N3fwv 544 Nw3Ud3fwk 7022 N3fwk 4146 N3fwv 689 Nw3Ud3f
1923 Nw3Ud3fwv 0 N\XUN} wk 2032 Nw3Ud3fwv 0 N\XUN}

156 T\\m8O
B5OZ`k1zzHw3Ud page-outs |`D page-ins b6E53T\Q;5A_$D_5#P)3f}
ZXBVdUd,r*Z|GjIwH0d!Q;d{yC#

9C vmstat |n@@\eEL I/O


UUV[}D<u2IT;CZCJILrzIDEL I/O :X#

g{}K.b53UP,TBrP:
# vmstat -s >statout
# testpgm
# sync
# vmstat -s >> statout
# egrep "ins|outs" statout

dv;yPXNELn/[F}D0sS<#}g:
5698 page ins
5012 page outs
0 paging space page ins
32 paging space page outs
6671 page ins
5268 page outs
8 paging space page ins
225 paging space page outs

ZC|n(;vsM C `k)KPDbN1ZZ,53\2A!K 981 v3f(dP 8 v4Tw3Ud)"


4kK 449 v3f(dP 193 v4kw3Ud)
#

(} filemon |nxPj8 I/O Vv


filemon |nzYh84q!;N1ddtZD I/O n/Dj8<q,C1ddtzzZD~53&CD;,
cf,|(>XD~53"ibZfN"LVM MomELc#

filemon |nICZU/yPcOD}],r_I(} -O c!n8(c#1!5GZ VM"LVM Momc


fOU/#\aMj8(f;pzI#H;|9CKzYh8,G4 filemon |nMIT;; root C'r;
;53iDI1KP#

*K7O filemon |nGqQ20"RIC,zITKPgB|n:


# lslpp -lI perfagent.tools

zYITI filemon |nt/,z2IT(} trcoff S|nfbX]R,"I(} trcon S|n4V44P


T09C trcstop S|n4U9KP# (H; filemon |n}ZTEH6 40 DivBKP,zI\k4Pg
B|n nice -n -20 trcstop 4#9 filemon |n#;)zY;U9,filemon |nc+(f4kj<dv#

":+;U/Z filemon |nt/.sr*DG)D~D}](}G8( -u j>)


#

filemon |nITS;v8(DD~PA! I/O zYD}],x;GS51zYxLPA!#ZbVivB,


filemon (f\aK53D I/O n/ivMIzYD~m>D\Z#1h*T6LzwODzYD~xPs&
m,r_;N1d4PzY}]U/m;N1dC4T|xPs&m,b1bVQz&mD=(M\PC&#

trcrpt -r |nXkTzYU>D~4P,"RX(r=m;vD~,gBy>:
# gennames > gennames.out
# trcrpt -r trace.out > trace.rpt

ZbcO,w{}DzYU>D~E~Z filemon |nTc(f;H0zYa06==D I/O n/,gBy


>:

_-mMEL I/O T\ 157


# filemon -i trace.rpt -n gennames.out | pg

>}P,filemon |nSdkD~ trace.rpt A!D~53zYB~#r*zY}]Q-6==D~P,filemon


|n";+|E=s(TcC&CLrKP#{vD~;A!.s,PXibZf"_-mMomm6pD I/O
n/(f+aZj<dvPT># (Zbv>}P,(f;dM= pg |nP) #

g{ trace |nGx -C all j>KPD,rKP trcrpt |n12*x -C all j>(kNDZ 337 3D:q
=/4T trace -C dvD(f;) #

BP|nDrPxvK;vPX filemon |n9CD>}:


# filemon -o fm.out -O all; cp /smit.log /dev/null ; trcstop

b](fG4KrPzID(Zm;`UP53),gBy>:
Thu Aug 19 11:30:49 1999
System: AIX texmex Node: 4 Machine: 000691854C00

0.369 secs in measured interval


Cpu utilization: 9.0%

Most Active Files


------------------------------------------------------------------------
#MBs #opns #rds #wrs file volume:inode
------------------------------------------------------------------------
0.1 1 14 0 smit.log /dev/hd4:858
0.0 1 0 13 null
0.0 2 4 0 ksh.cat /dev/hd2:16872
0.0 1 2 0 cmdtrace.cat /dev/hd2:16739

Most Active Segments


------------------------------------------------------------------------
#MBs #rpgs #wpgs segid segtype volume:inode
------------------------------------------------------------------------
0.1 13 0 5e93 ???
0.0 2 0 22ed ???
0.0 1 0 5c77 persistent

Most Active Logical Volumes


------------------------------------------------------------------------
util #rblk #wblk KB/s volume description
------------------------------------------------------------------------
0.06 112 0 151.9 /dev/hd4 /
0.04 16 0 21.7 /dev/hd2 /usr

Most Active Physical Volumes


------------------------------------------------------------------------
util #rblk #wblk KB/s volume description
------------------------------------------------------------------------
0.10 128 0 173.6 /dev/hdisk0 N/A

------------------------------------------------------------------------
Detailed File Stats
------------------------------------------------------------------------

FILE: /smit.log volume: /dev/hd4 (/) inode: 858


opens: 1
total bytes xfrd: 57344
reads: 14 (0 errs)
read sizes (bytes): avg 4096.0 min 4096 max 4096 sdev 0.0
read times (msec): avg 1.709 min 0.002 max 19.996 sdev 5.092

158 T\\m8O
FILE: /dev/null
opens: 1
total bytes xfrd: 50600
writes: 13 (0 errs)
write sizes (bytes): avg 3892.3 min 1448 max 4096 sdev 705.6
write times (msec): avg 0.007 min 0.003 max 0.022 sdev 0.006

FILE: /usr/lib/nls/msg/en_US/ksh.cat volume: /dev/hd2 (/usr) inode: 16872


opens: 2
total bytes xfrd: 16384
reads: 4 (0 errs)
read sizes (bytes): avg 4096.0 min 4096 max 4096 sdev 0.0
read times (msec): avg 0.042 min 0.015 max 0.070 sdev 0.025
lseeks: 10

FILE: /usr/lib/nls/msg/en_US/cmdtrace.cat volume: /dev/hd2 (/usr) inode: 16739


opens: 1
total bytes xfrd: 8192
reads: 2 (0 errs)
read sizes (bytes): avg 4096.0 min 4096 max 4096 sdev 0.0
read times (msec): avg 0.062 min 0.049 max 0.075 sdev 0.013
lseeks: 8

------------------------------------------------------------------------
Detailed VM Segment Stats (4096 byte pages)
------------------------------------------------------------------------

SEGMENT: 5e93 segtype: ???


segment flags:
reads: 13 (0 errs)
read times (msec): avg 1.979 min 0.957 max 5.970 sdev 1.310
read sequences: 1
read seq. lengths: avg 13.0 min 13 max 13 sdev 0.0

SEGMENT: 22ed segtype: ???


segment flags: inode
reads: 2 (0 errs)
read times (msec): avg 8.102 min 7.786 max 8.418 sdev 0.316
read sequences: 2
read seq. lengths: avg 1.0 min 1 max 1 sdev 0.0

SEGMENT: 5c77 segtype: persistent


segment flags: pers defer
reads: 1 (0 errs)
read times (msec): avg 13.810 min 13.810 max 13.810 sdev 0.000
read sequences: 1
read seq. lengths: avg 1.0 min 1 max 1 sdev 0.0

------------------------------------------------------------------------
Detailed Logical Volume Stats (512 byte blocks)
------------------------------------------------------------------------

VOLUME: /dev/hd4 description: /


reads: 5 (0 errs)
read sizes (blks): avg 22.4 min 8 max 40 sdev 12.8
read times (msec): avg 4.847 min 0.938 max 13.792 sdev 4.819
read sequences: 3
read seq. lengths: avg 37.3 min 8 max 64 sdev 22.9
seeks: 3 (60.0%)
seek dist (blks): init 6344,
avg 40.0 min 8 max 72 sdev 32.0
time to next req(msec): avg 70.473 min 0.224 max 331.020 sdev 130.364
throughput: 151.9 KB/sec
utilization: 0.06

VOLUME: /dev/hd2 description: /usr


reads: 2 (0 errs)

_-mMEL I/O T\ 159


read sizes (blks): avg 8.0 min 8 max 8 sdev 0.0
read times (msec): avg 8.078 min 7.769 max 8.387 sdev 0.309
read sequences: 2
read seq. lengths: avg 8.0 min 8 max 8 sdev 0.0
seeks: 2 (100.0%)
seek dist (blks): init 608672,
avg 16.0 min 16 max 16 sdev 0.0
time to next req(msec): avg 162.160 min 8.497 max 315.823 sdev 153.663
throughput: 21.7 KB/sec
utilization: 0.04

------------------------------------------------------------------------
Detailed Physical Volume Stats (512 byte blocks)
------------------------------------------------------------------------

VOLUME: /dev/hdisk0 description: N/A


reads: 7 (0 errs)
read sizes (blks): avg 18.3 min 8 max 40 sdev 12.6
read times (msec): avg 5.723 min 0.905 max 20.448 sdev 6.567
read sequences: 5
read seq. lengths: avg 25.6 min 8 max 64 sdev 22.9
seeks: 5 (71.4%)
seek dist (blks): init 4233888,
avg 171086.0 min 8 max 684248 sdev 296274.2
seek dist (%tot blks):init 48.03665,
avg 1.94110 min 0.00009 max 7.76331 sdev 3.36145
time to next req(msec): avg 50.340 min 0.226 max 315.865 sdev 108.483
throughput: 173.6 KB/sec
utilization: 0.10

Z53iPf5:XDivB9C filemon |n+zz|$D(f"I\h*|`DzY:fUd#filemon


|nDUdM CPU 1d{DI\Z;(6'Z5M53T\#Zzz73B*<9C.0,HC filemon |
nZGzz53PTi#Kb,9CQz&m,"RZ` CPU 53O+ -C all j>k trace |n;p9C#

":!\ filemon |nTj8D3FE"(fK=y}"n!5"ns5Mj<+n,+GCa{";\C4


NIIEdt}rd{}=D3FFm#\D45,}]cDV<H;fz2;TF#

filemon |nD+V(f
+V(fPvKZb?dtPnn>DD~"N"_-mMomm#

|GZ filemon (fD*<?VT>#1!ivB,_-D~MibZf(fwT;^FZn` 20 vnn>


DD~MN,b?j<*\D}]+M?#g{8(K -v j>,r(fyPD~MNDn/#(fPDyPE
"4USnn>=n;n>D3rSO=B@NPv#

nn>DD~:

filemon |nICZ4(PvD~53wc(|(_-D~53"ibZfN"LVM MomELc)9Civ


Pnn>D~D(f#>Zhv(fPT>DPjb#
#MBs KD~Zb?dt1dZD+M?(T MBs *%;)
#wP4UKVN5rEP#
#opns Zb?\ZZDD~Dr*N}#
#rds D~A!wCDN}
#wrs D~4kwCDN}
D~ D~{F(D~76+FZj8(fP)
#

160 T\\m8O
volume:inode
D~$tD_-mMZ`,D~53\D i-node }?#KVNIT;C4+D~MZj8D VM N(
fPT>Dd`&D@CNX*p4#KVNTZ4P}LP4(M>}DY1D~IT*U#

nn>D~*_-m hd4 PD smit.log MD~ null#C&CLr{C terminfo }]bxPA;\m;rK


ksh.cat M cmdtrace.cat ,y1&#NNivB,shell h*rA;+M;uE"1,|M9C}]4?<#

*K6p4*D~,I+_-m{F /dev/hd1 *;*D~5320c /home,"9C find r ncheck |


n:
# find / -inum 858 -print
/smit.log

r
# ncheck -i 858 //:858 /smit.log/:
# ncheck -i 858 //:858 /smit.log

nn>N:

filemon |nICZ4(PvD~53wc(|(_-D~53"ibZfN"LVM MomELc)9Civ


Pnn>ND(f#>Zhv(fPT>DPjb#
#MBs KNZb?dt1dZD+M?(T MBs *%;)
#wP4UKVN5rEP#
#rpgs SELAkNPs!* 4-KB D3f}
#wpgs
SNP4kELs!* 4-KB D3f}(page out)
#segid
ZfND VMM j6
segtype
ND`M:$wN"@CN(>XD~)"M'zN(6LD~)"3mN"53Nr_|,D~5
3}]D8(@CN(U>"y?<".inode".inodemap".inodex".inodexmap".indirect" .diskmap)
#
volume:inode
T@CN45,|,`XD~D_-m{FMD~D i-node }?#KVNIT;C4+NMZj8D
D~4,(fPT>Dd`&DD~X*p4#TG@CN45,KVN*U#

g{C|nT;n/,ribZfVv$_ svmon ICZT>PXN(x(CNDNj6 segid)D|`E


",gBy>:svmon -D segid#ND:svmon |n;Tcq!|j!DV[#

ZRGD>}P,bv segtype ??? b6E53;\6pCN`M,"RzXk9C svmon |n4q!|`


DE"#

nn>_-m:

filemon |nICZ4(PvD~53wc(|(_-D~53"ibZfN"LVM MomELc)9Civ


Pnn>_-mD(f#>Zhv(fPT>DPjb#
util _-m9CJ#
#rblk S_-mA!Ds!* 512 VZDi}#
#wblk 4k_-ms!* 512 VZDi}#
KB/s ?kS=y+MYJ,%; KB#

_-mMEL I/O T\ 161


volume
_-m{F#
description
D~5320crG_-m`M(paging, jfslog, boot, or sysdump)#}g,_-m /dev/hd2 G /usr
`M;/dev/hd6 G paging `MT0 /dev/hd8 G jfslog `M#P12I\vV;9uDbvV[#
bb6EyPD}]Z4kEL0<aT Lempel-Zev(LZ)9u<uT/9u,ZSELA!1rT
/b9u(kNDZ 202 3D:JFS 9u;Kbj8E") #

9CJCYVHm>,0.06 G8 6% D_-mZb?1ddtZ1&#

nn>Domm:

filemon |nICZ4(PvD~53wc(|(_-D~53"ibZfN"LVM MomELc)9Civ


Pnn>D_-mD(f#>Zhv(fPT>DPjb#
util omm9CJ#

":_-m I/O ksZomm I/O ks0st/#\D_-m9CJ+a4p4H\Domm9CJ


_#
#rblk SommA!Ds!* 512 VZDi}#
#wblk 4komms!* 512 VZDi}#
KB/s ?kS=y+MYJ,%; KB#
volume
omm{F#
description
PXomm`MDr%hv,}g, SCSI `=e CD-ROM }/wr 16 ; SCSI EL}/w#

9CJCYVHm>,0.10 G8 10% DommZb?1ddtZ1&#

filemon |nDj8(f
j8D(fxvK`T+V(fD;)=SE"#

T?v(fD~"Nrm45,Zj8(fP<P;vu?#?vu?PVNZBfDDvj8(fPhv#
P)VN(fK;v%5;d`D(fK;F*#}g,l&1dD3FE"#fKyP;`SDA4ks#
}K(fl&N}Dj<+nb,=y"n!MnsDl&N}2;(f#j<nGC4T>%vl&N}`
T=yl&N}xT+nK`Y#s< 2/3 Dy>l&1dZ=y5u%j<+n(avg - sdev)M=y5S
Oj<+n(avg + sdev).d#g{l&N}DV<Z\sD6'Z"d,G4j<n`T=yl&1dx
TMads#

j8D~3FE":

Znn>DD~(fPPvK*?vD~Da)Dj8D~3FE"#

nn>DD~ (fPDZICZ7(TD~xPKNVCJ#}K7(\D+MVZ}"opens"writes M
lseeks,C'2IT7(A!/4kDs!MN}#
FILE D~D{F#gPI\,76+F+;xv#
volume
_-m/D~53|(D~D{F#

162 T\\m8O
inode ZD~53PD~D I-node }?#
opens `SZZD~r*DN}#
total bytes xfrd
\DA/4"x/vD~DVZ}#
reads TD~xPA!wCDN}
read sizes (bytes)
A!+Ms!3FE"(avg/min/max/sdev),TVZ*%;#
read times (msec)
A!l&1d3FE"(avg/min/max/sdev),%;*Ak#
writes TD~xP4kwCDN}
write sizes (bytes)
4k+Ms!3FE"#
write times (msec)
4k`&1dD3FE"#
lseeks
lseek() S}LDwCD}?#

read sizes M write sizes +axz;vPXzD&CLrZA!M4kE"DT\DPTO6#9C 4 KB s


!D`XD~*nQa{#

j8D VM N3FE":

nn>N(fPvKyP VM NDj83FE"#

?vPZnn>ND(fPD*XP`XD;ZT>KPXf5D I/O xvZfDj8E"#


SEGMENT
Z?Yw53DNj6#
segtype
NZ]D`M
segment flags
;,DNtT#
volume
T@CN45,|,`XD~D_-m{F#
inode T@CN45,`&D~D i-node }?#
reads A!=NPs!* 4096 VZD3f}(MG,paged in)
#
read times (msec)
A!l&1d3FE"(avg/min/max/sdev),%;*Ak#
read sequences
A!DrP}#;vrPG;,.,xA!DV{.3f#read sequences D}?G3rf!?D8>
{#
read seq. lengths
hvK read sequences D$HD3FE",T3;%;#

_-mMEL I/O T\ 163


writes SN4kELD3f}(MG,paged out)
#
write times (msec)
4k`&1dD3FE"#
write sequences
4kDrP}#;vrPG;,.,x4k(paged out)D3f#
write seq. lengths
hvK4rPD$HD3FE",T3;%;#

(}li reads M read-sequence F}iv,zIT7(CJG3rD9GfzD#}g,g{ read-sequence


F}S| reads F},CD~CJ|wZfz/#m;=f,g{ read-sequence F}Z\sLHOH read F
}!\`"R read-sequence $HG;v_5,CD~ywZ3r/#bv_-,yJCZ writes M write
sequence#

_-mrommDj83FE":

Most Active Logical Volumes / Most Active Physical Volumes (fPPvD?v*X+P;vT&DZT


>PX_-mrommDj8E"#

}KA4N}b,C'9I7(A41dMs!,T0_-mrommDu<M=yQw`k#
VOLUME
m{#
description
PXmDhv# )
(g{TsG_-mrhvZ],ommrhv`M#
reads TmxPA!ksDN}
read sizes (blks)
A!+Ms!3FE"(avg/min/max/sdev),T 512 VZs!Di*%;#
read times (msec)
A!l&1d3FE"(avg/min/max/sdev),%;*Ak#
read sequences
A!DrP}#;vrPG;,.,xA!Ds!* 512 VZDi#|mwK3rf!D}?#
read seq. lengths
3FE"hvKA!rPD$H,Ti*%;#
writes TmxP4kksDN}#
write sizes (blks)
4k+Ms!3FE"#
write times (msec)
4kl&1d3FE"#
write sequences
4kDrP}#;vrPG;,.,x4kDs!* 512 VZDi#
write seq. lengths
PXhv4krP$HD3FE",Ti*%;#
seeks Z;NA!r4kks0D0@};2ITmo*\Dh*0@DAks}M4ks}y<DYV
H#

164 T\\m8O
seek dist (blks)
0@`k3FE",T 512 VZ;i*%;#}K;)=#D3FE"(avg/min/max/sdev),u</
0@Yw(Yh 0 Ei**<;C)D`kGV*(fD#P1r,0@`ka\$;V*(fG*
K\bGd{3FE"+F#
seek dist (cyls)
(;Pomm)0=`k3FE"TELyf*%;#
time to next req
PX(avg/min/max/sdev)hvTm4PAr4ks.dD1d$HD3FE",%;*Ak#b;P
mwKCmDf!YJ#
throughput
?k\DmLB?,%;* KB#
utilization
m1&D1dHX#ZK(fPDwu?4UKVN5rEP#

;v$D0@1dITvS I/O l&1d,a{5MK&CLrDT\#(}liA!ks}M4kks}D


F}iv,zIT7(CJG3rD9GfzD#bv_-,yJCZ4ks}M4rP#

9C filemon |nD<r
9C filemon |nP`u<r#
v /etc/inittab D~\G\n>#8(Z /etc/inittab PDX$Lr-#;liT7(|GGq*;XBzI#
v /etc/passwd D~2\n>#r*m`D~M?<Df!mIT*;K5#
v ;v$D0@1dvSK I/O Dl&1d"R5MK53DT\#
v g{s?VA4ks*s0@,zI\Z,;vomELO5Pi,D~M}Vn>DD~53#;x,
T*zBq&mrG}]b5345,bVP*I\G}#D#
v g{A4ksD}?S|rP},omELf!==O3rxT|Sfz/#;vrPG;,.,xA!
(paged in)r,x4k(paged out)D3f#seq.lengths GrP$H,T3*%;#lengths GrPT3
*%;D$H#;vfzD~f!2PI\f0m`0@}#ZbVivB,z;\xV filemon |nDd
va{GmwD~Df!==*fz9GD~GiQD#9C fileplace |n4x;=wif`#
v 6LD~PZ volume:inode PP,"xP653D{F#

IZ filemon |nI\1ZX{D;)53\4,yT9C1*!Dww,"R;_<GZKPK$_1f0
DZqYw,;_Vv53DT\#Z CPU %MKPD73B,bTQmw:
v ifY?D I/O, filemon |nT>Ks?D`k<Cs<YV.;#
v if_ELdvJ,filemon |nT>K`4Lr<Cs<YV.e#

`SEL I/O **
;c45,_D % iowait mw53fZ;v&CLrJb"1YZfJbrM'D I/O S53dC#}g,
&CLrDJbI\GIZm` I/O ks,x;G&mm`}]#mb I/O ?1"R*e~bv?1JbDX
|ZZa_ I/O S53D'J#

ELDitHITT8V==vV,"_P;,Dbv=(#;)dMDbv=8I\|(:
v ^FZX(DomELOn/_-mMD~53D}?#C=(G*KZyPDomEL}/wP=bD
~ I/O#
v Z`vomELd9*_-m#C=(Z1P;);,DD~;f!1XpPC#

_-mMEL I/O T\ 165


v *;vmi4(`v Journaled D~53(JFS)U>"R+|GVd=X(DD~53P(nCZlY4_
Y:f}/wP)#bT&CLr4(">}r_^Ds?D~XpGY1D~45.VPf#
v g{ iostat |nDdva{mwzD:XD I/O n/;P;ybXVd=53EL}/wP,"R;vr
`vEL}/wD9CJ-#Z 70-80 .dr|_,zMC<GXiD~53,}g8]MV4D~53T
cuYi,#i,+}p}/w}`XQw"RI\zzs?Vl&1d}$#
v g{\s,I/O v?Ds(w5+f0M`&1d;%,zI\#{$n I/O w=#
v g{P#smw;!?VD~;;NV;NXA!,zIT<G=SD5fGqJmG)D~|SP'X
:f#
v g{:XDf!#=Gfz<w<X;,zI\*<GvSEL"+4G)fzf!DD~V<=|`D
ELP#
v g{:XDf!#=G3r<w<X;"Rf0`vEL}/w,zI\*<GvS;vr`vELJd
w#z2ITJ1X<G9(;vux4_-m4J&sM"RT\X|D3rD~#
v 9ClY4_Y:fh8#
v 9Cl= I/O#

9C lvmstat |n`S LVM T\


zIT9C lvmstat |nlbT3)xrr_-mDVxDCJGqHd{xr|S51#

*KC lvmstat |nT>b);51CJDxrD3FE",zXk9C3FE"\;Z?v_-mrmiy


!OKP#

*tCX(_-mD lvmstat |nD3FE",k9CTB|n:


# lvmstat -l lvname -e

*{CX(_-mD lvmstat |nD3FE",k9CTB|n:


# lvmstat -l lvname -d

*tCZ;vmiPDyP_-mD lvmstat |nD3FE",k9CTB|n:


# lvmstat -v vgname -e

*{CZ;vmiPDyP_-mD lvmstat |nD3FE",k9CTB|n:


# lvmstat -v vgname -d

19C lvmstat |n1,g{z;8(;v1ddt5,rdvMaT>_-mPD?;vVxD3FE"#


1z8(K1ddt5(Tk*%;),lvmstat |nDdv;T>Q-ZX(D1ddt;CJDX(Vx
D3FE"#TBG lvmstat |nD;v>}:
# lvmstat -l lv00 1

Log_part mirror# iocnt Kb_read Kb_wrtn Kbps


1 1 65536 32768 0 0.02
2 1 53718 26859 0 0.01

Log_part mirror# iocnt Kb_read Kb_wrtn Kbps


2 1 5420 2710 0 14263.16

Log_part mirror# iocnt Kb_read Kb_wrtn Kbps


2 1 5419 2709 0 15052.78

Log_part mirror# iocnt Kb_read Kb_wrtn Kbps


3 1 4449 2224 0 13903.12

166 T\\m8O
2 1 979 489 0 3059.38

Log_part mirror# iocnt Kb_read Kb_wrtn Kbps


3 1 5424 2712 0 12914

IT9C -c j>^F lvmstat |nT>D3FE"D}?#-c j>CznkT>Dn51D I/O n/8(


VxD}?#BfG lvmstat |nM -c j>;p9CD>}:
# lvmstat -l lv00 -c 5

TO|nT>n51D I/O n/DevVxD3FE"#

g{z;8(|zN},lvmstat |nMaLxzzdv,1=zPOC|n#qr,lvmstat |nT>|z


N}8(D}?D3FE"#

9C lvmstat |n1,g{"V;P\YVx9C51,rI\*9C lvmstat |n+b)VxV"Z;,


D2LO#lvmstat |nJm+%@DVxS;v2L(F=m;v2L#PX9C lvmstat |nDj8E",
kND6AIX 5L V5.3 |nN<s+,m 37PD migratelp |n#

PX lvmstat |nD|`!nME",kND6AIX 5L V5.3 |nN<s+,m 37PD lvmstat |n#

0lT\D_-mtT
PwVrXTT\_P0l,ITZ4(_-m1XFb)0l#b)!nw**sdk5Da>vVZ smitty
mklv A;O#

ommOD;C
ommZVd_T 8(KZommO!qomVx19CNV_T#eV#fD_TG_5"Zc_5"P?"
ZcP?MPD#

< 17. ommZVd_T. bEe<5wKommrELODf";C#ELSb?_5*<=ELPD;q=/IOY


uDE@#xZELDA!==(}*DE@OfGIF/DA/4E7),}]4kELPD?VD0@1dH4kb
?_5DL#b*?VirZA/4E7D/wzFT0E@D?vHx<aSE7B-}b;B5#fEE7rPDF
/,}]=4=\/,domF/2=L#<A|sD\LB?#

omVxI}V;*<SELDnbc_5=nZc_5,x`E#

_5MZc_5_T8(53SommD_5VdVx#b)Vx5Pn}D=y0@1d,9C9C|GD
&CLr(#h*O$Dl&1d#90jzPZTszzDELD_5?vE@ITP`vHx,b9C_5
Z3r I/O 1dCOl#

P?MZcP?_T8(53ZPDTbR;tZomm_5D?VVdVx#b;_T*VxVdOOm;
C,"5POOmD=y0@1d#ommODs?VVxI4Ub;_TVd#

PD_T8(53S_-mDPD?VVdVx#b)Vx5PnlD=y0@1d,9C9C|GD&CL
r(#aC=nCDl&#`TZd{_T,ommOP|YDVxzcb;_T#

_-mMEL I/O T\ 167


g{53PPm`3fwH,w3Ud_-mGnJO;VdZ_-mPD?VD#w*m;v+K,CZ*
"M}<D_-m";#C,rKb)m&C;VdZommD*<ra2#

rK,|;cDfrG:I/O =`,^[Gj+D9GZKP;vX*&CLr}LPD,_-mDomVxM
&C;VdDkommPD=|#

ommD6'
ommdVd_T8(KZ!qCZVd_-momVxDomh819CNV_T#Pn!5Mns5=v
!nI)!q#

< 18. ommdVd_T. bEe<T>K=vomm#;v|,Vx 1 M;vVx 2 D1>#m;v|,Vx 2 0;


vVx 1 D1>#

n!5_T8>CZVdyhomVxDomm}?#bGCZ*_-ma)nsI?TMICTD#f_T
(;xP1>)
#Z9CC_T1P=v!q:x1>M;x1>,gByv:
v ;x1>:n!5_T8>omm&|,yPCmDomVx#g{VdLrXk9C=vr|`Dom
m,9CD}?r!I\Y,"hkd{N}#V;B#
v x1>:n!5_T8>yPDx1>Domm<*;9C#g{VdLrXk9C=vr|`Dom
m,rk9C!I\YDomm]IyPDomVx#ZNN1r,XkqXd{N}SkD<x,g strict
!n#

b)(eZ)9r4F;vfZD_-m12JC#}g,53aFcQVdD\?4v(CZx1>n!5
_TDomm}#

ns5_T28>CZVdyhomVxDomm}?#+ns5_TZ<GKd{<xDivBa+C_-
mDomVxV<=!I\`Domm#bG;vfrT\D_T,&CaO1>9CTa_ICT#g{;
v4-4FD_-m;V<=`vommP,rNN;v|,KC_-mDomVxDommp5McT9C
_-m;j{#

CZVdDnsomm}
*BDVdhCnsomm}?#

d5&iZ;kCmiDomm\?.d#K!nk:ommD6';`X#

5q4;BT
LVM Z&m}# I/O 1\a7#_-m5q1>.dD}];BT#

kT_-mD?;N4kYw,LVM <a*d?v5q1>zI;v4ks#+g{Z&m5q4D}LP
(ZyPD1><;4k.0)53@#,JbMzzK#g{**_-m4P5q4;BV4, LVM Xk
#fnbDE"TV4G);;BD5q#s`}5P5qD_-m<&C4P5q4;BV4#1;,q3
UdbyZmiZdP`N*;1;9CVf}]D_-m;h*bV#$k)#

168 T\\m8O
5q4;B(MWC)DG<I;vHx9I#CZ6fZ53;P}7XUsI\dC;;BD_-Vx#
1mi*z;X1,b;E"YN;CZ7#_-VxD;B#

":TZ5q4;BD_-m,IZ MWC XFHx;ZELD_5,g{5q_-m2;Z_5dT\aP


yDx#

S AIX 5 *<,a)K;VF*“;/5q4;B”D5q4;BT!n#CZ7#5q4;BTD1!zF*
“w/ MWC”#"z@#sxPXB}<1,“w/ MWC”Ia)lYV4#+G,bVC&GT4T\B5*
z[D,HdGZfz4DivB#{C“w/ MWC”IT\bb;4T\p',+@#sXB}<1Xk9C
syncvg -f |n4V/,={vmi,.sC'E\CJCmi#byvXk{CT/mi*;#

tC“;/ MWC”;+I\b“w/ MWC”x4D4T\p',xRZCJVx1_-m+T/XB,=#bb


6E\m1;Yh*V$,=_-mr{CT/*;#;/ MWC D1cG;)O}DAYwI\*=yPV
x<;XB,=sE4P#

Z4(r|D_-m1,IZ SMIT P!qN;5q4;BT!n#!qD!nvZ5q_-m1(1>} >


1)Eaz'#

Z%@D PV OVd?v_-Vx1>
8(GqqSOqVd_T#

OqVd_TVd%vommOD?v_-Vx1>#K!nkZ 168 3D:ommD6';`X#

XiZdGqXB(;_-m?
8(GqJmZXBi/}LPX(;_-m#

TZux4_-m,relocate N}Xk;h*;Jm(ux4_-mD1!5)
#SzD20iv,zI\h*
X(;_-m#

CZA4_-Vx1>DwH_T
IT*_-mh(;,DwH_T#

x`v1>D_-mk9C;,`MDwH_T,gBy>:
v "P_T=bELdDA!ks#TZ?vA!ks,53liwh8Gq&#g{;&,MSwh8P
A!#g{wh8&,53Mali(zh8#g{;&,MS(hz8PA!#g{(zh82&,5
3MaSPnY4jI I/O D1>PA!#4kG"PD#
v "P/3r_T\GSwh8PA!#4kG"PD#
v "P/V*_T`F"P_T,+|;G?N<WHliwh8,xGaZw1>.d!qli#b<A
TA!Dyb{C,49?N;aP,};vD4jI I/O#4kG"PD#
v 3r_T<B?N<Swh8PA!#4k.P4P,WHGwEL;;P14kjIs,Er(zEL
4k#

TZ;P;vom1>D}]45,_-mh8}/LrWH+_-A/4ksX7kIomX7,;swC
J1Domh8}/Lrl&ks#b;%;4F_TCZ&m4kksD5iX(;"RarwC|DxL
5XyPDA!ms#

q"PM"P/V*_TbyD5qwH_T9C&CK;5qD/PA!dCD53ITqCk^5q53
`1DT\#(#,&CK;5qD/P4kdCD53T\H;O^5q53,}G9C|`DEL#

_-mMEL I/O T\ 169


tC4i$
8(GqTyPtzA!YwD4k_-mYwxPi$#

+bv5hC* On aTT\zz0l#

us!
us!KTsPPDEL}?HZuxs!#uxs!I*iZ 4 KB = 128 MB .dD 2 DNbN=#

h*AY=vom}/wT(e;vux/_-m#VxPD_-ms!XkG}Z9CDEL}D{}6#
PXj8V[,kNDZ 173 3D:w{_-muxVn;#

(} lvmo |nwZ LVM T\


zIT9C lvmo |nZ?vmiy!O\mD LVM pbufs D}?#

TBG lvmo |nDIwN}:


pv_pbuf_count
1+ommmS=mi1,MamS pbufs D}?#
max_vg_pbuf_count
\;*miVd pbufs Dns}?#*K9K5z',XkYNO*M$nmi#
global_pbuf_count
1+ommmS=NNmi1,MamS pbufs Dn!}?#*|DK5,k9C ioo |n#

lvmo -a |nT> rootvg miPDIwN}D105#BfG;v}S:


# lvmo -a

vgname = rootvg
pv_pbuf_count = 256
total_vg_pbufs = 768
max_vg_pbuf_count = 8192
pervg_blocked_io_count = 0
global_pbuf_count = 256
global_blocked_io_count = 20

g{zk*T>m;vmiD105,k9CTB|n:
lvmo -v <vg_name> -a

*C lvmo |n*IwN}hCC5,k9CHE,g,TB>}y>:
# lvmo -v redvg -o pv_pbuf_count=257

vgname = redvg
pv_pbuf_count = 257
total_vg_pbufs = 257
max_vg_pbuf_count = 263168
pervg_blocked_io_count = 0
global_pbuf_count = 256
global_blocked_io_count = 20

OfD>}P,pv_pbuf_count IwN}Z redvg miPhC* 257#

":g{+ pbuf 5vS+`,zI\i4=T\OD5MrbbD53$wiv#

PX lvmo |nD|`!nME",kND6AIX 5L V5.3 |nN<s+,m 37PD lvmo |n#

170 T\\m8O
omm"bBn
PXommP\`Bnh*<G#

ELDw*T\k&CLrDCJ==PX,4&CLrGxPs?D!MCJ(fz)9GOYDsMCJ
(3r)#TZfzCJ,9C|`D!]?}/w;caqC|CDT\#3rCJDiNUC`4(k9
C|lD}/wrZ|`D}/wOxPVn)#

mi(i
g{I\,*K|WZ53\mMqC|CDT\,1!mi(rootvg)&C;|(;*<120Yw53D
Gvomm#

Z rootvg P;,$Yw53G;vCwb,r*ITZ;P#UDC'}]DivBjIYw53D|B"X
B20M@#V4#|BMXB202aIZ;PYw53f0Ddx|ljI#

&C*d{fEC'}]Domm(e;vr|`Dmi#+C'}]fEZ8CmiP9Crd{53<v
}]|r%#

g{;v_Hn>DD~53Dn/zIKs?U>Bq,k+CD~530dU>VpfEZ;,DELP
(kNDZ 209 3D:D~53U>MU>_-mXi;)#x_Y:fDh8(gL/EL,xlY4k_
Y:fD SSA rx4k_Y:fDELsP)\;a)HU>_-m (JFS U>r}]bU>)|CDT\#

5q rootvg DT\0l
Z5q1,g{zz;v4kYw,MXk,14kyPD_-m1>#;c45,b;4k}LaH4k;
P5qDm};)#

!\5qM'}](XpGZ}]b73B)\Ui,+KY4\YCZ53m#

IZjI=vEL I/O h*H;v|`D8n,5qYw2a* CPU x4nbD*z#mb rootvg _-m


D<V\X*,byMITBvZ5q rootvg _-m1afZ24JbK#

4;B;cITZ rootvg PRCD_-m,RG"Vs`}Z/BDD~,|(G)ZfEm`I4PLrD


/usr/bin BDD~<G;51A!D}]#w3Ud;PZ53PomZf;cT]I10Dn/1E;CZ
4kYw#53;NNw3\Ui,+#V1X3fwH4,a<BO$Dl&1d#vSomZf(#ab
vb;Jb#

\``MD&CLr<ITZ /tmp M /var D~53PxP4D~Yw#q`kwbyD&CLr-#aZ


/tmp ?<B4(M4kY1D~#x /var ?<rSU4TJ~Mr!zSPDD~#Z#fYw1 jfslog D
~5JG;4D#Z`BDD~53P,I\;P /home ?<Z#fYw1n/#*Kr/ rootvg D\m,
C'w?<##;Zd{D~53P#

IT9C mklvcopy |n5q rootvg PDyP_-m45q rootvg;r_Z AIX 4.2.1 rTsDf>P,


IT9C mirrorvg |n45q rootvg#

1!ivB,mirrorvg |nTyP_-m9C"PwH_T"R;xP4k#i#|;*w3UdtC5q4
;B#|*NNd{_-mtC5q4;B#k+_-m2CZkELb_5!I\|DX=T9C_-mk
5q4;B_Y:fdD0@`kn!#

T5q rootvg ;aTx0lT\DbMG:g{w3Ud;5q,T\DB5+1Skw3JPX#yTTd


C*'V+_Dw3J"Rw3UdZ rootvg OD5345,G;ak*5V rootvg 5qD#

_-mMEL I/O T\ 171


\D45,g{zD$w?;h*#V_Dw3J,5q rootvg M5C<G#

Xi_-m
g{zuC;vmQ-8i=Kh*XiDX=,zIT9C reorgvg |n(r smitty reorgvg)44;v
(rXi;v_-m#

bv|n+y]_-mDXwZmZ?XB.VomVxD<V#g{_-m{h*Z|nP8(,n_DE
H6+3h4PDZ;v_-m#9Cbv|n,miD{VXk;,xRXk5PUPVx#?v_-mD
IXBVdN}Xkh* yes TcXi\;!X,qrGv_-m+;vT#

KbK_-mD9C#=,z\|CXv(4XF?v_-mDhC_T#=kgB:
v +H LV Vdx;,D PV#
v (}` PV +H LV 9*#
v +nHD LV CZ PV DPD,}KG)r*K5qVx4tTD LV#
v +ndD LV CZ PV D_5(3rCJD}b)
#
v 9 LV ,x#
v + LV h=zh*Dns5#
v +n519CD_-mEZ;p#
v +3rD~EZ_5#

nQT\D(i
?1_-m*KE/T\xxPdCD1r,ICTMa\=0l#zh*v(T\rICTZ73BDv|
X|;c#

19C SMIT |nxPdCTq!_T\D1rkN<TB8O:


v g{53TAYw*w,G4IC"PwH_TD5qYw\a)|CDT\,r* I/O AYw\1S;(
r=G)nY9CD1>P#g{4Yw|51;),G45qa<BT\B5,r*+aP\`1>h
*4,MM5q4VxT;y#z9I\k+Vd_T1Sh*?v@"Domm5P;]1>#
v +4#i_Th* No,xRg{1>}sZ;,+5q4VxTh* Off#
v \D45,;CJn51D_-m&C;CZPDT+0@`k5=nM;;x,PTB8v}b:
– _5E@5P|`}]DEL#T3r==;CJD_-mIT;EZ_5Ts|QT\#
– mb;v}bMGr*K5q4VxTtT(MWCC)D_-m#MWCC Hx;ZEL_5,rKg{
_-m2;Z_51T\I\a|E#
v ELO;51CJrn|;CJD_-m&CE=;p#TZ_-mxT,}CD>XTH+|GEZE
LPD|X*#
v +JH;9CD_-mEZPd;C,+\Y;9CD_-mEZEL_5#
v +ommdVd_Th*ns5,,19h*7#A4YwG(} PV 2mJ4D#

n_ICT(i
{*53_ICTxPdC(9C SMIT |n),4gBYw:
v 9C}v LP 1>(=N5qYw)
v +4#ihC* Yes
v +`%_ThC*n!5(5q1>=Z # v PV)

172 T\\m8O
v +wH_ThC*3r
v +Vd_Th*1S(;T,;v PV xP5q)
v ;vmiPnY|(}vomm
v Tk@"D\_"JdwMg4`XDommxP5q4F#

1vVPomm;IC1,,}vTOommDmiT;IT,V;v(n#9C@"D\_,JdwMg4
IT91>D9CM''h8^X#

w{_-muxVn
uxVnG;VZ_-mP8vEL}/w.d+M}]D<u,ZbV<uP,ELD I/O ]?;CZ"P
DZ;v_-mPq!}]#uxVnDw*?DZZ_YDf!3r/D~,TZfzf!|2Pf&#

BfG;vr%D>}#

< 19. ux/D_-m /dev/lvs0. bv>}T>K}vommrom}/w#?vom}/w;V*=v_-m#Z 1 v


}/wDZ;vVxrGZ;v_-m|,Kux%* 1 M 4#Z 2 v}/wDZ 1 vVx|,ux%* 2 M 5,Z
3 v}/wDZ 1 vVx|,Kux%* 3 M 6#

Z;vU(D_-mP,}]X7DzzT&ZZy>omVxPELiD3r#Z;vux/D_-mP,
}]X7rT&Zux%*D3r#;vj{Dux|(;vux%*#"Rux/D_-mPyPDomh
8<|,;vux%*#I LVM 4v(D;vom}/wODD;vomi4T&AYwr4Yw#g{Y
wf0D}/w`Z;v,+,1*yPD}/w2EXhD I/O Yw#

Yv}S,;vibD lvs0 P;v 64 KB Dux%*,|,yv 2 MB DVxT0;vU>D~53


(JFS)
#g{;v&CLrA;vOsD3rD~R$AQo=H(4,,?vAYw+<BZ?vEL}/
wO=}v I/O AYw,A!\2*K3D}](YhD~;f"Z,;_-m,xDomiP) #ELh8}
/w+av(AYw4PD3r#;A!D}]+S;,DdkP/P";5Xx&CLr#

IZZYwpu}]DqC_D;C;,,?;vELh8<PT:;,Du<4PYH,+1xLo=H(
4,,yPD}vEL<+o=|GDnsYH#

hFux/_-m
Xka)3)E"T(eux/_-m#

1(e;vux/_-m1,c&C_e8(:
}/w AYh*=vom}/w#1ZxPTT\*s\_D3r/ I/O Yw,NkYwD}/w;&P#
d{D:X#;)ELJdwkEL}/wDiO+a*s+;vux/D_-mD:XVdx=v
r|`DJdw#

_-mMEL I/O T\ 173


ux%*D_g
_gs!ITGZ 4 KB = 128 KB P 2 D]},+2&<G=3r$A,r*GGzzs`}A
YwDzF#hC_gD?DG9?v$AYwZ?vEL}/wOAYzz;v I/O Yw(mkG
v=y})
#(k40fD}V)
s! Vdx_-mDomVx}XkGy9CDEL}/w}D{}6#
tT S AIX 4.3.3 *<,ux/_-mM\;5q,VZ_-m\;4F`NK#

ux/_-m I/O Dw{


SELDux/P3rkfzEL I/O \\f#

BPD<uzzK3r/ I/O dvDn_6p#


v Z!?`DommP+]_-m#
v Tomm9C!?`DJdw#
v +ux/D_-mEZ;v@"DmiP#
v hC;vux%*D_g* 64 KB#
v 9C ioo |n+ minpgahead hC* 2#kNDZ 204 3D:3rAT\w{;#
v 9C ioo |n+ maxpgahead hC*EL}/w}D 16 6#b+<Ba0V3Z_g*(64 KB,b2G
EL}/w}D6})ux%*D%*PjI#9CzzT?;v$AYwZ?;vELOP;vAux
%*DAYw#
v *s I/O D}?* 64 KB KOEL}/wD}?sDa{#bHZ maxpgahead 5#
v 9C ioo |n^D maxfree,TJ& maxpgahead PD|D(maxfree = minfree + maxpgahead)
#kNDZ
130 3D:minfree M maxfree N}D5;#
v 9C 64 VZ#< I/O :ex#g{_-m<],SZ=vr`vELJdwDEL}/wO,;9CD I/O
:exn`I;Vd 64 VZ#bIT\bC LVM rP/ I/Os =;,DELO#BfDzk+zz;v
4 64 ;w{D:ex8k:
char *buffer;
buffer = malloc(MAXBLKSIZE+64);
buffer = ((int)buffer + 64) & ~0x3f;

g{ux/_-mZ-<_-mO,"R}ZTb)ux/-<_-mxPsZ 1.125 MB D4Yw,G4C


ioo |nvs lvm_bufcnt N}ITvS4n/DLB?#kNDZ 207 3D:D~53:exw{;#

TOD}SGkT JFS ux/_-m#,yD<u2JCZv?M JFS,xpZZ9CD ioo N}+f;I


v?M JFS DH'N}#

m;=f,+ux/DkGux/D_-mlOZ;vommP;G;vCwb#Z;iux/D_-mPD
yPomm&*,;_g#

5qux/_-mT\be
AIX 4.3.3 Jmux.Vk5qZ,;_-mPxP#

b;XTT_T\D_`f"a)K;v=cDzF#bT}]T>:YhcP+6DEL,Zux.Vk5
qDD~53DAk4YwDT\kZG5q/DivGn;`D#

D~53D,_Yf"wJmZLru</4Yw1fZs?D4YwX~#c4kT\\=0l#IZ|G
,=D,=V4YwXkZXF(X=u<Lr0ax#4POsD4YwavSc4kDLB?#,y,5
q4DVxT(MWC)2a0lc4kDLB?#

174 T\\m8O
\.,ux.Vk5qJmT_`f"_T\}]q!#

9C-<EL I/O
;)&CLr,ng}]b";h*;vD~53,r*|G4PngU>G<"zY}]M_Y:f.`D
&\#Z9C-< I/O xG9CD~ I/O 1,b)&CLrDT\(#|C,r*|\bKZf4F"U>G
<Mw}Zcx(xzzD=S$w#

19Cc I/O 1,&CLr&C9C /dev/rlv* V{DXbD~#/dev/lv* XbiD~;&;9C,r*|G


+sD I/O VI`v 4K s!D I/O#/dev/rhdisk* M /dev/hdisk* cELSZ;&;9Cr*|G5MK
T\"Ra}p}],xTJb#

9C sync M fsync wC
g{D~GC O_SYNC r O_DSYNC r*D,G4?N4YwaZ4XEL.0zzCZ"BELD}]#
g{4YwzzKBDELVd(D~Z;)9x;G2GVfD3f),G4CN4Yw2azz;v`&
D JFS U>4k#

Z5fMELPD?F,=Z]zzZ`V>6:
v ;v&CLr*;vX(DD~wC fsync() /}#byM}pyP|,^D}D}]D3f<*;4kE
L#4YwZ fsync() wC5XLr1jI#
v ;v&CLrwC;N sync() /}#byM}pyP|,^D}D}]DD~3f*;wHTc4kEL#
4Yw;;(Z sync() wC5XLr1jI#
v C'Idk sync |n,C|nSE"v sync() wC#,y,P)4YwI\ZC';a>dk(r_B
uZ shell E>P&mD|n)19;PjI#
v /usr/sbin/syncd X$LrTL(1ddt"v sync() wC,(#*? 60 k;N#bM7#K53;P
}[s?;PZW'TZfPfZD}]#

sync Yw}K{DK\!D CPU,|9_Pm`'&:


v |}p4YwIQ/,x;GV"D#
v |}pAY 28 KB D53}]*;4k,49Z sync YwT0;P I/O n/#
v |SYKEL4k}]DYH,=$K write-behind c(#K'&w*Z?N4Yws"v fsync() wCD
LrPHOwT#
v 1 sync() r_ fsync() wC"z,U>G<;4k JFS U>G<h8Tcmw;^DKD}]Q;a;
=EL#

hC SCSI JdwMELh8SP^F
Yw53P\&^F4jIDS SCSI Jdw=x(D SCSI \_rEL}/wD I/O ksD}?#b)^F
PbZ)92~D\&Tc17EZh8}/wO4PnEQwc(\;_'Yw1&m`vks#

TG IBM h845,P1rJOZ^D;C4&mn5ivBD1!SP^F5#TB?VhvK&C^D1
!5DivT0FvDB5#

_-mMEL I/O T\ 175


G IBM EL}/w
TZ IBM EL}/w,NNx(1dITfZD4jIks}1!* 3(T SSA 45G 8)
#bv5GyZ
zw:T\D"bBn,"R;Pa)1SDgf4^D#G IBM EL}/wD1!SPnH* 1#g{;
vX(DG IBM EL}/w;P:f`vksD\&,53PXGvh8Dhv&C`&D|D#

w*;v>},PXG IBM EL}/wDXwE"I lsattr |nT>,gBy>:


# lsattr -D -c disk -s scsi -t osdisk
pvid none Physical volume identifier False
clr_q no Device CLEARS its Queue on error
q_err yes Use QERR bit
q_type none Queuing TYPE
queue_depth 1 Queue DEPTH
reassign_to 120 REASSIGN time out value
rw_timeout 30 READ/WRITE time out value
start_timeout 60 START unit time out value

I9C SMIT(lY76* smitty chgdsk)r chdev |n4|Db)N}#}g,g{zD53|,;v


G IBM SCSI EL}/w hdisk5,gBD|nIT9h8t/SP"RhC|DSPnH* 3:
# chdev -l hdisk5 -a q_type=simple -a queue_depth=3

G IBM ELsP
G IBM ELsP,kG IBM EL}/w;y,*EL`,SCSI S`,osdisk `M(d{ SCSI EL}/
w)#

;vELsP4p4Gw*Yw53D;v%;D"`1sDEL}/w#r*ELsP5JO|,K;)o
mEL}/w,|GPD?;vIT&m`vks,ELsPh8SPDnHXkhC*;vc;_D}5T
cdV9CyPDomh8#}g,g{ hdisk7 G;v_P 8 vELDG IBM ELsP,;vOJD|D
ITqgBy>:
# chdev -l hdisk7 -a q_type=simple -a queue_depth=24

g{ELsP=SK;v SCSI-2 l/m SCSI Jdw\_,c2I\PX**C\_|D4jIks}D^F


}#

)9dC
;RDB,?vT\w{,&nU*o=;vX(puDc#G4JbMvVK,“Rh*24yD2~,s
E`Y.T0RgN4nCD{C|?”GvJbT\EL^FD:X.V,V,r*Ps?Dd?#

I\aa_\EL^FD:XDT\DDd|,:
v vSEL}/wMZ|G.dV"VPD}]#byM+ I/O :XV"=|`Df!LrP%K#
v 0s|lDEL}/wTcv9r*K519CD}]xf;VfDEL}/w#
v vS;vr`vELJdw4,S10MBDEL}/w#
v *53vS RAM TcvS VMM D minperm M maxperm N}54Dx519C}]DxkZfD_Y
:f#

*kq!PXz53DdCk:XX5D|St\D8O,zIT9C;vELb?#bw,}g BEST/1#

176 T\\m8O
9C RAID
_`@"ELsP(RAID)G;CZhv;VIZ9CELsPMwV}]Vn=(1Dx}]ICTD<
uDuo#

ELsPG2,$wTqCH%vs}/wy\o=D|_D}]+dM I/O JD;iEL}/w#sPG`


vEL}/wM;v(EDCZzY}]Z}/wdV<DXFw(sPXFw)D/O#3X(D~D}]
a;4k;,}/wODNx;G;4k;v}/w#

sP9\a)}]_`,by49sPPD3v}/w(omEL)'',}]2;a*'#S RAID 6p,


}]+a;5qrVn#

SsP|,ZsPS53P#SzDhC,;vsPS53IT|,;vM`vSsP,r;F*_-%*
#?v LUN 5PT:DXw(}g:RAID 6p,_-is!M_-%*s!)
(LUN) #SYw53DGH
4,?vSsP<;S*;v5P@;^~{VD%v2L#

RAID c(ITw*Yw53DD~53m~rELh8}/LrD;?V5V((#G RAID 0 M RAID 1)


#
b;c(ITZ;2~ RAID JdwD>X6k=&mwP4P#2~ RAID Jdw(#Hm~ RAID T\
|C,r*6k=&mw(}4P4SDc(uaKw53&mwD:#,PDuA*}]+MMY]<CK
(EDg7#

LVM 'VD RAID !n


AIX LVM 'V}V RAID !n#

RAID 0 Vn
RAID 1 5q
RAID 10 r 0+1 5q"Vn

SSA D{C
.Pf"a9(SSA)G;V_T\D.P%*<u,CZ,SELh8MwzJdw#

SSA S53GIELMJdwiID779ID#SSA G;VXp*M{D"_T\XkEL}/w,Sxh


FD.P,S#|G;V+EE,S("MMSU),a)K++$(E#|9C;VT1S`k,bb6E
}]1SG;}]EE>mV4x;Gw*;v%@DEE"M#

a_ SSA T\D<r
y]cTmDivlib)-r:
v ^F?vJdw,SELD}?,TbJdw,X#Z9Cs]?iD_LB?ivB,5 = 6 vELMI
T9Jdw,X#
v g=;,JdwD5q#
v T\a\=ELO_-m;CD0l#Z_-mOD;v,x"4VNDVxITa_53T\#
v cIT*5q_-mXU5q4;B:f,+Gbyv2%}K$@@#D}];BT#$#ZbViv
B,c;C;XB8]yPD_-m,T7#|GG;BD#+Gb4v75a}KYV.~.DT\#
v TZ5q7345,7#c}Z9C"PwH_T#
v g{NN_-mfZZ;vTOEL,ZELdm*Vx#1_-mGZZ?_TB4(";h*ns5
1,ba;T/jI#

_-mMEL I/O T\ 177


v =b77PD I/O Yw;;*+yPD$w:#<;SZ77D3;kO#
v Z;v`t/LrD73B,+ELEZZ|9C|GDJdwDX=#

PXx;=E",kND Monitoring and Managing IBM SSA Disk Subsystems M A Practical Guide to Serial
Storage Architecture for AIX#

PX IBM f"bv=8D|`E",IZ IBM Storage Solutions for e-business M Introduction to Storage Area
Network PR=#

l4_Y:f9C
_Y4:f(FWC)*j<Jdw_Y:fa)KnbDI!L(:f#|azYG)P4;a;xELD
4Yw#

l4_Y:fITTxDF4YwDl&1d#+G,kqX"b;*94ks?k:fDYJ,}:f+}
]FvDYJ#FWC 2aTns I/O YJP;{0l,r*Jd(Ph*xP=S&m,T7(*+MD}
]GqZ_Y:fP#

_Y4:f;c45a*(ED$w?x4wTDC&,}g,r;vBDEL/4F}]b#g{_Y4:
fV<Z`vJdwO,aS6b;C&#

FWC 9IT:bIZ JFS U>DBPtTlID JFS U>?1:


1. JFS U>G/P4kD#FWC ;:f4-^DD}]#
2. 4kYwH!V51#IZ_Y:f]?;s,rK|TZZJdwP[/*|som I/O D_YJ! I/O
'{nC#s;)D I/O aP|CDT\,r*{GZ4}]1EL;caY*8\#
3. ;c45,U>k:fs!;P+sD*5#yTU>;a-#“4"”:f#rK,U>;aqCX4V
f:e}]DC&#!\d{x_Y:fDsPXFwQ;$5TU>P',>DvV[9C FWC 1DU
>T\#

1%vELDxmdI^FT\DrX1,;Vbv=8MGaO SSA JdwD FWC !n+`v RAID 5


h8uxVn*;v_-m#uxs!* 64 KB KT RAID 5 PD}]EL}#1JdwkT RAID 5 x
PdCs,4ks!sZHZuxs!D4Yw+x}_Y:f#bM5wK*24(} FWC + 128 KB 4
k 2+p sPH4k 127 KB },"RHZ;(} FWC + 128 KB 4k 2+p#byvG*K\bs?3r
I/O“4"”:f#

178 T\\m8O
#i/ I/O
#i/ I/O(MIO)bI9zZ&CLr6VvMw{&CLrD I/O,TqCnET\#

&CLrP(#\YPZ(_-4*C'a)E/&CLr I/O T\Dza#1Y&CLr6 I/O w{9nU


C';\@?Yw534a) I/O T\w{zF#(#,KPZx(53OD`v&CLrTZ_T\ I/O P
E`%e;Dhs,rK,nCDivG9C;iw{N}*lOZ;pD&CLra)[TDT\#MIO b
zcKTCZE/ I/O D&CLr6=(Dh*#

"bcMEc
9C MIO P\`Ec,;x,9CCb1T&!D#

Ec
v IZ MIO G#]W5V,rKC|4Vv&CLr I/O G#r%#
v MIO JmZ&CLr6T I/O xP_Y:f:yTITE/ I/O 53wC,;sE/53PO#
v I*?vD~r;iD~dC pf _Y:f,Sx9dHYw53_Y:f|ScZdC#
v MIO IZ,1KPD I/O &CLrO9C,+b)&CLrPD3;)k MIO `4S,"+|GdC*
9C pf _Y:fM1S DIRECT I/O Tx}#fD JFS M JFS2 _Y:f#b)4S= MIO D&CL
r+*44S= MIO D I/O &CLrME|`DYw53_Y:fUd#
v MIO _Y:fTZsM3rf!D~G#PC#

"bc
v h8 aio XkIC#g{ stats D~|,Z]* without Legacy aio available DP,rT root m]K
P mkdev -l aio0 |nTtC aio#qr,pf ^(xPl= I/O#
v ms9C MIO b_Y:fdCI\<BT\B5#*\bKiv,kWHVv&CLrD I/O _T,;s
R=f}JCZzDivD#i!nN},"hCb)N}D5,Toza_&CLrT\#ms9C MIO
D>}:
– TZCJ!ZYw53Zfs!DD~D&CLr,g{dC pf #iD direct !n,rI\5MT\#
– TZfzf!D~,_Y:fI\5MT\#
v MIO _Y:f(} malloc S53VdZ&CLrDX7UdP,rKkww!D,r*g{ MIO _Y:
f\s!sZICYw53Zf,r53+9Cw3Ud#bI\lIT\B5rYw53JO#

MIO e5a9
#i/ I/O bIev I/O #iiI,|GIZKP1Z%vD~Dy!OwC#

10ICD#i*:
v mio #i,bGTC'LrDSZ#
v pf #i,bG}]$!#i#
v trace #i,bG3FE"U/#i#
v recov #i,bGT'\D I/O CJxPVv"Z'\1xPXTD#i#
v aix #i,bGTYw53D MIO SZ#

1!#i* mio M aix;d{#i*I!#i#

© Copyright IBM Corp. 1997, 2006 179


I/O E/M pf #i
pf #iG+r% LRU(n|nY9C)zFCZ3$<DC'Ud_Y:f#(}"v aio_read |n+}
]$0k_Y:f,pf #i9I`S_Y:f3D9Civ,T$bTD~}]D44hs#

#C I/O #=*3rA!+s(}. GB)D~#eVK I/O #=D&CLrSYw53:ex_Y:fPq


CDUfcrZnM#IZ+YfZ}]XC(g{fZ),rKYw53s:eX^'#MIO bICZbv
KJb,dbv=(GwC pf #i,C#ilb3rCJ#=,"+yhD}]l=$0k!C`D_Y:f
Ud#pf _Y:f;*s=I|,,$c;D$A($!)yh*Dc;3f4I#pf #iI!q9C1S
I/O,b\bKnbDZf4F=53:eXD}L,"R(};NTCJ I/O w?ME53:ex,Sx95
3:ex|SP'XC={C#XZ AIX D JFS M JFS2 D~53DTy-i;1mw,9C pf #iPD
1S I/O TZsM3rCJD~D53LB?G#P{#

MIO 5V
P}V=(ICZ5V MIO:X(r4S libtkio"X(r|, libmio.h MT MIO }LDT=wC#

9C}V=(DNN;VxP5V<\r%;+G,Fv9CX(r4S libtkio#

k tkio bxPX(r4S
]eZK I/O(tkio)bGf libmio |a)D=Sb,|9Z&CLrP5V MIO E/dC]W#

*5V MIO,I9C TKIO_ALTLIB 73d?dCy>ZK I/O TJmwCd{}L:setenv TKIO_ALTLIB


"libmio.a(get_mio_ptrs.so)"

TK==hC TKIO_ALTLIB 73d?+T MIO 2mTs(get_mio_ptrs.so)f;1!2mTs,Sx5X;


vndK8ryP MIO I/O }LD8kDa9#C0kYw*Wv53wC4P;N,;s&CLrDyP I/O
53wC(libtkio DkZc)+X(rA MIO#

bG5V MIO DFv=(,r*,g{C0kYw'\rC/}wC'\,r libtkio +9-*d1!D#


f53wC8ka9#Kb,g{9C MIO D&CLrvVJb,r;*;hC TKIO_ALTLIB 4ISKP
P}% MIO#

(} libmio.h xPX(r
bV5V MIO D=(h*Z&CLr4zkPmS=P#

I(}$n C j USE_MIO_DEFINES 45V MIO,CjZ libmio.h 7D~P(eK;ij,|G+Q I/O


wC+VX(r= MIO b#libmio.h 7D~f libmio |a),"R|,BP #define od:
#define open64(a,b,c) MIO_open64(a,b,c,0)
#define close MIO_close
#define lseek64 MIO_lseek64
#define ftruncate64 MIO_ftruncate64
#define fstat64 MIO_fstat64
#define fcntl MIO_fcntl
#define ffinfo MIO_ffinfo
#define fsync MIO_fsync
#define read MIO_read
#define write MIO_write
#define aio_read64 MIO_aio_read64
#define aio_write64 MIO_aio_write64
#define aio_suspend64 MIO_aio_suspend64
#define lio_listio MIO_lio_listio
1. *9CK=(5V MIO,kZ4zkPmS=P:

180 T\\m8O
#define USE_MIO_DEFINES
#include "libmio.h"
2. XB`kC&CLr#

T=wC MIO }L
(}T=wC MIO }LI5V MIO#

;X9C libmio.h 7D~0d #define od+ I/O wCX(r= MIO b,I+ #define od1SmS=
&CLrD4zkP,;sXB`k4zk#

MIO 73d?
PDv73d?ICZdC MIO#

MIO_STATS
9C MIO_STATS 8rCZoO{"T0S MIO #iksDdvDU>D~#

Cd?bM*D~{1P=VXbiv#g{D~* stderr r stdout,rdv(r=`&DD~w#g{D~


{TSE(+)*7(g +filename.txt),rD~+r*TxP7S;g{D~{0f;PSE,r2GCD~#

MIO_FILES
ZwC MIO_open64 1,MIO_FILES a)CZ7(kTx(D~y*wCD#iD\?#

MIO_FILES Dq=*:
first_file_name_list [ module list ] second_file_name_list [ module list] ...

wC MIO_open64 1,MIO li MIO_FILES 73d?GqfZ#g{C73d?fZ,r MIO Td}]


xPo(VvT7(*D)D~wCD)#i#

MIO_FILES SsARxPo(Vv#s=(E([)0fDyPV{Sw file_name_list#file_name_list G0E


(:)VtD file_name_template #=DPm#File_name_template #=CZ%d MIO *r*DD~D{F,
"RI9CBP(d{:
v GE(*)%dcvr`v?<{rD~{V{#
v JE(?);%d;v?<{rD~{V{#
v =vGE(**)%dj{76{DyP#`V{#

g{ file_name_template #=;|,}1\(/),r+x MIO_open64 S}LDD~{PDyP76?<E"


+;vT,"R%dvJCZ*r*DD~D6{F#

g{ file_name_list PPvDD~{k file_name_list PD3v file_name_template #=%d,rawCtzZ


file_name_list sfD=(EPy>D#iPm#g{ file_name_list PPvDD~{;kZ;v file_name_list
PDNN file_name_template #=%d,rbvw+LxAB;v file_name_list,""T%ddPDD~{#
g{D~{%d=vr|` file_name_template #=,rICZ;v#=#g{*r*DD~{;kNN
file_name_list PDNN file_name_template #=%d,rCD~+(} aix #iD1!wCr*#g{fZ%
d,rS MIO_FILES PD`X#iPmPq!*wCD#i##i4USs=RD3rwC,ns`*nS
|C'LrD#i,nR`*nS|Yw53D#i#g{#iPm;T mio #i*7,raZ0fSO mio
#iD1!wC#g{48( aix #i,raZsf7S aix #iD1!wC#

BfGgN&m MIO_FILES Dr%>}:

#i/ I/O 181


MIO_FILES= *.dat:*.scr [ trace ] *.f01:*.f02:*.f03 [ trace | pf | trace ]

MIO_open64 S}Lr* test.dat D~,"+d{Fk *.dat file_name_template #=%d,da{GwC


mio"trace M aix #i#

MIO_open64 S}Lr* test.f02 D~,"+d{Fk *.f02(Z~v file_name_list PDZ~v


file_name_template #=)%d,da{GwC mio"trace"pf"trace M aix #i#

?v#iTZ1!wCPdTmD2`k1!!n#(}Z`XD MIO_FILES #iPmP8(!n,C'I


2G1!!n#BfD>}* trace #i*t stats,"Rks+dv(r=D~ my.stats P:
MIO_FILES= *.dat : *.scr [ trace/stats=my.stats ]

#iD!nC}1\(/)(g#3)!nh*X*D{}5,xd{!nh*V{.5#TZh*V{.5
DG)!n,g{V{.P|,}1\(/),k+V{.(Z((E {} P#TZG)h*{}5D!n,C
'IZ{}5sfSO k"m"g r t Tm>'VZ"WVZ"'WVZrYrWVZ#{}59ITC.x
F"KxFr.yxFdk#g{{}50f=S 0x,rC{}bM*.yxF#g{{}50f=S 0,r
C{}bM*KxF#g{b=VbT4(},r{}bM*.xF#

MIO_DEFAULTS
MIO_DEFAULTS 73d?DC>G-za_f"Z MIO_FILES 73d?PD}]DIAT#

g{C'*`v file_name_list M#iPmT8(K`v#i,r MIO_FILES 73d?I\dC\$#g{C


'T`,==X4X2G2`kD1!5,r|r%Dl(G9C MIO_DEFAULTS 73d?*#i8(BD
1!5#K73d?G#i0dB1!5D:EVtPm,gB}y>:
MIO_DEFAULTS = trace/events=prob.events , aix/debug

VZ,trace #iDNN1!wC+tC~xFB~zY,"+zY(r= prob.events D~P,x aix #i


DNN1!wC+tC debug !n#

MIO_DEBUG
MIO_DEBUG 73d?DC>G-zwT MIO#

MIO Qw MIO_DEFAULTS TiRX|V,"a)T&C!nDwTdv#ICX|V*:


ALL *tyP MIO_DEBUG 73d?X|V#
ENV dv73d?%dks#
OPEN dvT MIO_open64 S}LwvDr*ks#
MODULES
dv?NwC MIO_open64 S}LywCD#i#
TIMESTAMP
Z stats D~PD?vu?0SO1dAG#
DEF dv?v#iD(em#D~r*1,+TyP MIO b#i4PK*"#

#i!n(e
?v MIO #iPwV!nICZozVvME/&CLr6T\#

182 T\\m8O
MIO #i!n(e
mio #iGT MIO C'LrDSZ,"R1!ivBZKP1wC#
mode 2G open DD~CJ==#
K==w*N}a)x AIX open 53wC:u<==(Z4zkPa)x AIX open 53wC)+
f;*K==#
nomode
;2G==#bG1!!n#
direct hC open j>PD O_DIRECT ;#
nodirect
e} open j>PD O_DIRECT ;#
osync hC open j>PD O_SYNC ;#
noosync
e} open j>PD O_SYNC ;#

TRACE #i!n(e
trace #iGCZ MIO C'LrD3FE"U/#i,"RGI!D#
stats{=output_file}
XU1dv3FE":zYdvoODD~{#
g{48( output_file,r_* mioout(1!5),r trace #iQw MIO_STATS 73d?P(e
Ddv3FD~#
nostats
;dv3FE"#
events{=event_file}
zI~xFB~D~#1!5:trace.events#
noevents
;zI~xFB~D~#bG1!!n#
bytes TVZ*%;dv3FE"#bG1!%;s!#
kbytes
T'VZ*%;dv3FE"#
gbytes
T'WVZ*%;dv3FE"#
tbytes TYrWVZ*%;dv3FE"#
inter dvPd3FE"#
nointer
;dvPd3FE"#bG1!!n#

PF #i!n(e
pf #iGCZ MIO C'LrD}]$!#i(I!)
#
pffw $!3(49GZ4==B)
#

#i/ I/O 183


nopffw
4==B;$!3#bG1!!n#
pf _Y:fD1!P*G:g{%"$ADwCG4TC'T_Y:fD4Yw,r pf ;a+3f$
A=_Y:fP#bGr*:g{Ak3fvvG*K+d2G,r"^f&#+G,g{4k3f
DsxC'4Ywq=ms(;ZHx_g&*<Max),rCZjG`HxD_-+;YP',
rK`3h*,=4=EL,;s{3,=Ak_Y:f#ZKivB,nC;l=A!*2GD
3,x;GZ3f4|P1I!,=|P#
release
1+V_Y:fD~9CivF}o=c1,ME+V_Y:f3#bG1!!n#
norelease
1+V_Y:fD~9CivF}o=c1,;ME+V_Y:f3#
release M norelease !nXF1+V_Y:fD~9CivF}o=c1,+V_Y:f+vVNVi
v#1!P*GXU"ME+V_Y:f#g{+V_Y:f`Nr*XU,r3VLHOI\fZ
Zfi,Jb#9C norelease !n+9+V_Y:f#Vr*4,"RIC,49D~9CivF}
o=c2gK#
private
9C(C_Y:f#bb6E;Pr*_Y:fDD~E\9CC_Y:f#
global 9C+V_Y:f#bb6E`vD~I9C,;v_Y:fUd#bG1!!n#
RGD-imw,vZ`V-r,+V_Y:fZxs`}ivBGnQ!n#Zf?G7(I*
D,r*z+*@r*K`Y_Y:fT0|GP`s#g{9C(C_Y:f,rI\;*@P`
Y(C_Y:f,1&Zn/4,#n`Ir* 256 v+V_Y:f#1!ivB+ global !nhC
*c,bm>r*;v+V_Y:f#?vr*D+V_Y:fIIC'Vdx;iX(D~#
asynchronous
TS#i9Cl=wC#bG1!!n#
synchronous
TS#i9C,=wC#
noasynchronous
synchronous Dp{#
asynchronous"synchronous M noasynchronous !nXF_Y:fGq&9Cl= I/O wCTSD~5
30k_Y:f}]#P1CZwT,r_Z53O4tC aio 19C#
direct 9C1S I/O#
nodirect
;9C1S I/O#bG1!!n#
direct M nodirect !nXF O_DIRECT ;Gq(} OR YwI* file open OD oflags#pf _Y:
f\;4P1S I/O#_Y:f+yP_Y:f3EEZ 4K _gO,""T;"v7# I/O ks1
S4PyhD}7q=ks#
bytes TVZ*%;dv_Y:f3FE"#bG1!!n#
kbytes
T'VZ*%;dv_Y:f3FE"#
mbytes
TWVZ*%;dv_Y:f3FE"#

184 T\\m8O
gbytes
T'WVZ*%;dv_Y:f3FE"#
tbytes TYrWVZ*%;dv_Y:f3FE"#
cache_size
_Y:fD\s!(TVZ*%;)#2I6pT'VZ"WVZ"'WVZMYrWVZ*%;D
s!#1!5* 64k#
page_size
?v_Y:f3Ds!(TVZ*%;)#2I6pT'VZ"WVZ"'WVZMYrWVZ*%
;Ds!#1!5* 4k#
prefetch
$!D3}#1!5* 1#
stride hC=yrS(T3*%;)
#1!5* 1#
stats{=output_file}
dv$!9Civ3FE":CZ pf dvoODD~{#
g{48( output_file,r_* mioout(1!5),r pf #iQw MIO_STATS 73d?P(eD
dv3FD~#
nostats
;dv$!9Civ3FE"#
inter dvU= kill -SIGUSR1 |n1DPd$!9Civ3FE"#
nointer
;dvPd$!9Civ3FE"#bG1!!n#
inter !n8> pf _Y:fZ&CLrU= kill -30 |n1dv9Civ3FE"#
retain XUs#tD~}]T8fsYNr*#
notain XUs;a*KfsYNr*x#tD~}]#bG1!!n#
retain !n8>+V pf _Y:f:Z_Y:fP#fCD~D3,T)D~Z,;+V_Y:fPX
Br*14C#ZXUMr*Yw.d,WcD~v;I^D#_Y:fPCD~D3TG LRU <
H,MCqD~TZ_Y:fPr*#
listio 9C listio zF#
nolistio
;9C listio zF#bG1!!n#
_Y:f(#;9C listio,s_w*CZwT#
tag={tag string}
0:3FE"wV{.#
notag ;9C0:3FE"w#bG1!!n#
jGV{.Gr!= stats D~PDdvD0:#1 stats D~ds1,jGV{.+9C'QwPK
$DN|S]W#
scratch
CD~*]e,"RXU1+>}#
noscratch
D~ZXU1+xPeU#f#bG1!!n#

#i/ I/O 185


8>_Y:f+D~Sw]e,bb6ED~ZXU1;xPeU,"RZXUs!{4S#
passthru
*(}_Y:fDVZ6'#
C'I8(;xP_Y:fDD~D6'#}](}_Y:fA4#bZ}%TZ"P&CLrGX
*D,"P&CLr4k,;vD~,"R2mD~*<&D7E"#

RECOV #i!n(e
recov #iVv'\D I/O CJ,"Z'\1XT#bGI! MIO #i#
fullwrite
yP4Yw&*j{4Yw#g{IZUd;cxlI4Yw'\,rC#i+XT#bG1!!
n#
partialwrite
yP4Yw;X*j{4Yw#g{IZUd;cxlI4Yw'\,r;axPXT#
stats{=output_file}
recov {"Ddv#
g{48( output_file,r_* mioout(1!5),r recov #iQw MIO_STATS 73d?P(e
Ddv3FD~#
nostats
^ recov {"dvD~w#
command
"z4ms1*"vD|n#1!5* command={ls -l}#
open_command
IZ,Sb\x<Br*ms1*"vD|n#1!5* open_command={echo connection refused}#
retry XTN}#1!5* 1#

AIX #i!n(e
aix #iGTYw53D MIO SZ,"R1!ivBZKP1wC#
debug T>kTr*MXUDwTod#
nodebug
;T>kTr*MXUDwTod#bG1!5#
sector_size
X(Hxs!#g{4hC,rHxs!HZD~53s!#
notrunc
;"v trunc 53wC#bG\b JFS O_DIRECT msDJbyh*D#
trunc "v trunc 53wC#bG1!!n#

9C MIO D>}
P`Vk MIO b`XD!0#

186 T\\m8O
(}4S= libtkio 5V MIO D>}
(}4S= libtkio T+ I/O wCX(r= MIO b,I5V MIO#

BfDE>hC MIO 73d?"+&CLrk]eZK I/O(tkio)b`4S,;swC MIO#


#!/bin/csh
#
setenv TKIO_ALTLIB "libmio.a(get_mio_ptrs.so)"

setenv MIO_STATS example.stats


setenv MIO_FILES " *.dat [ trace/stats ] "
setenv MIO_DEFAULTS " trace/kbytes "
setenv MIO_DEBUG OPEN
#
cc -o example example.c -ltkio

#
./example file.dat

(}|, libmio.h 7D~5V MIO D>}


+ libmio.h 7D~mS=&CLr4D~T+ I/O wCX(r= MIO b,TKI5V MIO#

BfD=P+mS= example.c D~P:


#define USE_MIO_DEFINES
#include "libmio.h"

BfDE>hC MIO 73d?"`k&CLr"+dk MIO b`4S,;swCC&CLr#


#!/bin/csh
#
setenv MIO_STATS example.stats
setenv MIO_FILES " *.dat [ trace/stats ] "
setenv MIO_DEFAULTS " trace/kbytes "
setenv MIO_DEBUG OPEN
#
cc -o example example.c -lmio
#
./example file.dat

MIO oOdvD~
MIO boO}]Z MIO_close S}L\=wC14k stats D~#

g{ stats !nhC*1!5 mioout,r stats D~D{FZ MIO_STATS 73d?P(e#stats D~I|,


BPZ]:
v wTE"
v 4T trace #iDoO}](g{hCK trace #iD stats !n)
#

":*{9b)oO}],k9C trace #iD nostats !n;r_,*+ trace #ioO}]kd{}]


V*,r9C trace #iD stats{=output_file} !n#
v 4T pf #iDoO}](g{hCK pf #iD stats !n)#

":*{9b)oO}],k9C pf #iD nostats !n;r_,*+ pf #ioO}]kd{}]V*,


r9C pf #iD stats{=output_file} !n#
v V4zY}](g{hCK recov #iD stats !n)
#

":*+ recov #ioO}]kd{}]V*,k9C recov #iD stats{=output_file} !n#

#i/ I/O 187


trace #ioOD~>}
trace #iD stat D~|,wTMoO}]#

7*X
v UZ
v wz{
v GqtC aio
v Lr{
v MIO bf>
v 73d?

wT*X
v yPhCwT!nDPm
v yP#i(em(g{hCK DEF wT!n)
v r MIO_open64 "vDr*ks(g{hCK OPEN wT)
v wCD#i(g{hCK MODULES wT!n)

X(Zx<VD trace #iD*X


v 1d(g{hCK TIMESTAMP wT!n)
v XU1rPdPO1DzY
v module_list PmPD trace #i;C
v Q&mDD~{
v YJ:}]?}T\1d;CZ trace #iD[}1d?
v hsJ:}]?}TD~&Zr*4,D1d$H,|(D~r*MXU1D1d
v D~&mZd,KD~D10(zY1)D~s!MnsD~s!
v D~53E":D~`M,Hxs!
v D~r*==Mj>
v TZ?v/}:wCK/}DN},T0K/}D&m1d
v TZAr4/}:|`E",gks?(ksD*A!r4kDs!)"\F(A!r4kDf5s!:
I aix 53wC5X)"n!?Mns?
v TZ0@:=y0@v?(\D0@v?M0@F})
v TZAr4:]RE",g+d1dDF}"1dMYJ,|(]RT0A41d#
v fcntl page_info ks}:3
date
Trace on close or intermediate : previous module or calling program <-> next module : file name : (total transferred bytes/total time)=rate
demand rate=rate/s=total transferred bytes/(close time-open time)
current size=actual size of the file max_size=max size of the file
mode=file open mode FileSystemType=file system type given by fststat(stat_b.f_vfstype) sector size=Minimum direct i/o transfer size
oflags=file open flags
open open count open time
fcntl fcntl count fcntl time
read read count read time requested size total size minimum maximum
aread aread count aread time requested size total size minimum maximum
suspend count time rate
write write count write time requested size total size minimum maximum
seek seek count seek time average seek delta
s!page fcntl page_info count

188 T\\m8O
y>
MIO statistics file : Tue May 10 14:14:08 2005
hostname=host1 : with Legacy aio available
Program=/mio/example
MIO library libmio.a 3.0.0.60 AIX 5.1 32 bit addressing built Apr 19 2005 15:08:17
MIO_INSTALL_PATH=
MIO_STATS =example.stats
MIO_DEBUG =OPEN
MIO_FILES = *.dat [ trace/stats ]
MIO_DEFAULTS = trace/kbytes

MIO_DEBUG OPEN =T

Opening file file.dat


modules[11]=trace/stats
============================================================================

Trace close : program <-> aix : file.dat : (4800/0.04)=111538.02 kbytes/s


demand rate=42280.91 kbytes/s=4800/(0.12-0.01))
current size=0 max_size=1600
mode =0640 FileSystemType=JFS sector size=4096
oflags =0x302=RDWR CREAT TRUNC
open 1 0.00
write 100 0.02 1600 1600 16384 16384
read 200 0.02 3200 3200 16384 16384
seek 101 0.01 average seek delta=-48503
fcntl 1 0.00
trunc 1 0.01
close 1 0.00
size 100
============================================================================

pf #ioOD~>}
pf #iD stat D~|,wTMoO}]#

*XM<V
pf close for <name of the file in the cache>
pf close for global or private cache <global cache number>
<number of page compute by cache_size/page-size> page of <page-size> <sector_size> bytes per sector
<real number page not prefetch because of pffw option( suppress number of page prefetch because sector not valid)> /
<page not prefetch because of pffw option> pages not preread for write
<number of unused prefetch> unused prefetches out of <number of started prefetch> prefetch=<number of page to prefetch>
<number> of write behind
<number> of page syncs forced by ill formed writes
<number> of pages retained over close
<unit> transferred / Number of requests
program --> <bytes written into the cache by parent>/<number of write from parent> --> pf -->

<bytes written out of the cache from the child>/<number of partial page written>
program <-- <bytes read out of the cache by parent>/<number of read from parent> <-- pf <--
<bytes read in from child of the cache>/<number of page read from child>

y>
pf close for /home/user1/pthread/258/SM20182_0.SCR300
50 pages of 2097152 bytes 131072 bytes per sector
133/133 pages not preread for write
23 unused prefetches out of 242 : prefetch=2
95 write behinds
mbytes transferred / Number of requests
program --> 257/257 --> pf --> 257/131 --> aix
program <-- 269/269 <-- pf <-- 265/133 <-- aix

recov #ioOD~>}
recov #iD stat D~|,wTMoO}]#

g{r*r4k}L'\,r recov #i+ZdvD~PmS|,BP*XD"M:

#i/ I/O 189


v #iD*Z'\14PD open_command r command 5#PXb=v!nD|`E",kNDZ 186 3D
:RECOV #i!n(e;#
v msE#
v XTN}#
15:30:00
recov : command=ls -l file=file.dat errno=28 try=0
recov : failure : new_ret=-1

MIO dC>}
IZ&CLr6dC MIO#

Yw53dC

alot_buf &CLrjITBYw:
v 4k;v 14 GB DD~#
v T 100 KB D:exxP 140000 N,x4Yw#
v T 100 KB D:ex3rA!CD~#
v T 100 KB D:exsr3rA!CD~#
# vmstat
System Configuration: lcpu=2 mem=512MB
kthr memory page faults cpu
----- ----------- ------------------------ ------------ -----------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
1 1 35520 67055 0 0 0 0 0 0 241 64 80 0 0 99 0

# ulimit -a
time(seconds) unlimited
file(blocks) unlimited
data(kbytes) 131072
stack(kbytes) 32768
memory(kbytes) 32768
coredump(blocks) 2097151
nofiles(descriptors) 2000

# df -k /mio
Filesystem 1024-blocks Free %Used Iused %Iused Mounted on
/dev/fslv02 15728640 15715508 1% 231 1% /mio

# lslv fslv02
LOGICAL VOLUME: fslv02 VOLUME GROUP: mio_vg
LV IDENTIFIER: 000b998d00004c00000000f17e5f50dd.2 PERMISSION: read/write
VG STATE: active/complete LV STATE: opened/syncd
TYPE: jfs2 WRITE VERIFY: off
MAX LPs: 512 PP SIZE: 32 megabyte(s)
COPIES: 1 SCHED POLICY: parallel
LPs: 480 PPs: 480
STALE PPs: 0 BB POLICY: relocatable
INTER-POLICY: minimum RELOCATABLE: yes
INTRA-POLICY: middle UPPER BOUND: 32
MOUNT POINT: /mio LABEL: /mio
MIRROR WRITE CONSISTENCY: on/ACTIVE
EACH LP COPY ON A SEPARATE PV ?: yes
Serialize IO ?: NO

190 T\\m8O
C4Vv&CLr /mio/alot_buf D MIO dC
setenv MIO_DEBUG " OPEN MODULES TIMESTAMP"
setenv MIO_FILES "* [ trace/stats/kbytes ]"
setenv MIO_STATS mio_analyze.stats

time /mio/alot_buf

":TZ debug }]M trace #i}],dvoOD~* mio_analyze.stats#yP5<GT'VZ*%;#

":time |n8> MIO +<|nD4P1d#

Vva{
v 4P1d* 28:06#
v MIO VvoOdvD~* mio_analyse.stats#
MIO statistics file : Thu May 26 17:32:22 2005
hostname=miohost : with Legacy aio available
Program=/mio/alot_buf
MIO library libmio.a 3.0.0.60 AIX 5.1 64 bit addressing built Apr 19 2005 15:07:35
MIO_INSTALL_PATH=
MIO_STATS =mio_analyze.stats
MIO_DEBUG = MATCH OPEN MODULES TIMESTAMP
MIO_FILES =* [ trace/stats/kbytes ]
MIO_DEFAULTS =

MIO_DEBUG OPEN =T
MIO_DEBUG MODULES =T
MIO_DEBUG TIMESTAMP =T

17:32:22
Opening file test.dat
modules[18]=trace/stats/kbytes
trace/stats={mioout}/noevents/kbytes/nointer
aix/nodebug/trunc/sector_size=0/einprogress=60
============================================================================

18:00:28
Trace close : program <-> aix : test.dat : (42000000/1513.95)=27741.92 kbytes/s
demand rate=24912.42 kbytes/s=42000000/(1685.92-0.01))
current size=14000000 max_size=14000000
mode =0640 FileSystemType=JFS2 sector size=4096
oflags =0x302=RDWR CREAT TRUNC
open 1 0.01
write 140000 238.16 14000000 14000000 102400 102400
read 280000 1275.79 28000000 28000000 102400 102400
seek 140003 11.45 average seek delta=-307192
fcntl 2 0.00
close 1 0.00
size 140000
============================================================================

":
v 140000 N4Yw,?N 102400 VZ#
v 280000 NAYw,?N 102400 VZ#
v YJ*?k 27741.92 'VZ#

#i/ I/O 191


C4a_ I/O T\D MIO dC
setenv MIO_FILES "* [ trace/stats/kbytes | pf/cache=100m/page=2m/pref=4/stats/direct | trace/stats/kbytes ]"
setenv MIO_DEBUG "OPEN MODULES TIMESTAMP"
setenv MIO_STATS mio_pf.stats

time /mio/alot_buf
v Vv&CLr I/O DC=(G9C trace | pf | trace #iPm#(}C=(,zITqC&CLrS pf
_Y:fC=DT\,9\qC pf _Y:fSYw53C=DT\#
v pf +V_Y:fDs!* 100 MB#?3 2 MB#$!D3}* 4#pf _Y:f4Pl=1S I/O 53w
C#
v TZ debug }]"trace #i}]M pf #i}],dvoOD~* mio_pf.stats#yP5<T'VZ*%
;#

T\bTa{
v 4P1d* 15:41#
v MIO VvoOdvD~* mio_pf.stats#
MIO statistics file : Thu May 26 17:10:12 2005
hostname=uriage : with Legacy aio available
Program=/mio/alot_buf
MIO library libmio.a 3.0.0.60 AIX 5.1 64 bit addressing built Apr 19 2005 15:07:35
MIO_INSTALL_PATH=
MIO_STATS =mio_fs.stats
MIO_DEBUG = MATCH OPEN MODULES TIMESTAMP
MIO_FILES =* [ trace/stats/kbytes | pf/cache=100m/page=2m/pref=4/stats/direct | trace/stats/kbytes ]
MIO_DEFAULTS =

MIO_DEBUG OPEN =T
MIO_DEBUG MODULES =T
MIO_DEBUG TIMESTAMP =T

17:10:12
Opening file test.dat
modules[79]=trace/stats/kbytes|pf/cache=100m/page=2m/pref=4/stats/direct|trace/stats/kbytes
trace/stats={mioout}/noevents/kbytes/nointer
pf/nopffw/release/global=0/asynchronous/direct/bytes/cache_size=100m/page_size=2m/prefetch=4/st
ride=1/stats={mioout}/nointer/noretain/nolistio/notag/noscratch/passthru={0:0}
trace/stats={mioout}/noevents/kbytes/nointer
aix/nodebug/trunc/sector_size=0/einprogress=60
============================================================================

17:25:53
Trace close : pf <-> aix : test.dat : (41897728/619.76)=67603.08 kbytes/s
demand rate=44527.71 kbytes/s=41897728/(940.95-0.01))
current size=14000000 max_size=14000000
mode =0640 FileSystemType=JFS2 sector size=4096
oflags =0x8000302=RDWR CREAT TRUNC DIRECT
open 1 0.01
ill form 0 mem misaligned 0
write 1 0.21 1920 1920 1966080 1966080
awrite 6835 0.20 13998080 13998080 2097152 2097152
suspend 6835 219.01 63855.82 kbytes/s
read 3 1.72 6144 6144 2097152 2097152
aread 13619 1.02 27891584 27891584 1966080 2097152
suspend 13619 397.59 69972.07 kbytes/s
seek 20458 0.00 average seek delta=-2097036
fcntl 5 0.00
fstat 2 0.00
close 1 0.00
size 6836

17:25:53
pf close for test.dat
50 pages of 2097152 bytes 4096 bytes per sector
6840/6840 pages not preread for write

192 T\\m8O
7 unused prefetches out of 20459 : prefetch=4
6835 write behinds
bytes transferred / Number of requests
program --> 14336000000/140000 --> pf --> 14336000000/6836 --> aix
program <-- 28672000000/280000 <-- pf <-- 28567273472/13622 <-- aix

17:25:53
pf close for global cache 0
50 pages of 2097152 bytes 4096 bytes per sector
6840/6840 pages not preread for write
7 unused prefetches out of 20459 : prefetch=0
6835 write behinds
bytes transferred / Number of requests
program --> 14336000000/140000 --> pf --> 14336000000/6836 --> aix
program <-- 28672000000/280000 <-- pf <-- 28567273472/13622 <-- aix

17:25:53
Trace close : program <-> pf : test.dat : (42000000/772.63)=54359.71 kbytes/s
demand rate=44636.36 kbytes/s=42000000/(940.95-0.01))
current size=14000000 max_size=14000000
mode =0640 FileSystemType=JFS2 sector size=4096
oflags =0x302=RDWR CREAT TRUNC
open 1 0.01
write 140000 288.88 14000000 14000000 102400 102400
read 280000 483.75 28000000 28000000 102400 102400
seek 140003 13.17 average seek delta=-307192
fcntl 2 0.00
close 1 0.00
size 140000
============================================================================

":CLr4PK 140000 N4YwM 280000 NAYw,?NAr4<* 102400 VZ,x pf #i4PK


6836 N4Yw(dP 6835 N*l=4Yw)M 13622 NAYw(dP 13619 N*l=AYw),?N
Ar4<* 2097152 VZ#YJ*?k 54359.71 'VZ#

#i/ I/O 193


194 T\\m8O
D~53T\
AIX 'VD`VD~53`MDdCTZ{e53T\PEOs0l,"RZ20.sxP|DG#D1#

*liPXD~53Dy>E",kND6Yw53kh8\m7#

D~53`M
AIX 'V=V`MDD~53:>XD~53M6LD~53#

TBD~53i`*>XD~53:
v U>D~53
v :v?MU>D~53;
v CD ROM D~53
v :RAM ELODD~53;

TBD~53i`*6LD~53:
v xgD~53
v :(C"PD~53;

U>D~53
U>D~53(r JFS)GZ 32 ;ZKOKPD AIX D1!D~53#

U>D~53(}TD~*}]xPU>G<,SxJmZD~53@#s8YxPV4#(}tCD~53
U>G<,53Ma+D~*}]PD?v|D<G<=D~53D#txrP#4Yw5JGZ+*}]4
kU>DYwjI.sxPD#

v?M JFS
v?M JFS(4 JFS2)G AIX 5.1 P}kDm;v>z AIX U>D~53#

v?M JFS G 64 ;ZK73BD,OD~53#IZ 32 ;ZKX7UdD^F,;(iZ 32 ;ZK73


BICv?M JFS#

JFS Mv?M JFS .dDxp


JFS Mv?M JFS .dP\`xp#

m 4. JFS Mv?M JFS D&\xp


&\ JFS v?M JFS
E/ 32 ;ZK 64 ;ZK
nsD~53s! 1 YrWVZ 4 AVZ
":bGe5a9^F#AIX 10;'Vn` 16 AV
Z#
nsD~s! 64 'WVZ 4 AVZ
":bGe5a9^F#AIX 10;'Vn` 16 AV
Z#
i-node `E ZD~534(1^} /,,\^ZELUd

© Copyright IBM Corp. 1997, 2006 195


m 4. JFS Mv?M JFS D&\xp (x)
&\ JFS v?M JFS
sMD~'V w*dC!n 1!
*z{m 'V 'V
namefs 'V 'V
DMAPI ;'V 'V
9u 'V ;'V
(n 'V 'V
SY|B 'V ;'V
1S I/O 'V 'V 'V

":
v 9C mksysb +538]S'V 64 ;D JFS2 53K!= 32 ;53DYwG;aI&D#
v ;,Z JFS D~53DG,JFS2 D~53;Jm link() &CLrSZZ|DwM?<O9C#bV^
FI\<B3)\Z JFS D~53O}#KPD&CLr^(Z JFS2 OKP#

ZKX7Ud
AIX a)K=V;,`MDZK,;v 32 ;DZKM;v 64 ;DZK#32 ;ZKM 64 ;ZK5P2,
Db"|n"5CLrM7D~#;x,64 ;DZKT 64 ;D2~a);(LHD'V,bG 32 ;ZK^
(v=D#

JFS kT 32 ;ZKxPKE/,\Z 32 ;M 64 ;2~OKP#v?M JFS kTZ 64 ;ZKOKPxE


/,Sx9dI{C 64 ;ZKD&\#

PXZKX7UdJbMxpDhv,kNDX(ZyZ POWER De5a9DF1wCJ#

U>G<
Z45J}].0,U>D~53+*}]4kU>,rx<BK}]4kYHD5M#

;Va_ JFS BT\D=(G{94*}]DU>,k9C|n nointegrity dC!n#k"b,v?DT\


GT*}]j{T*z[xqCD#rK,9Cbv!nD1rXk+d!D,r*53D@#+a9Zbv
!nBDD~53;IV4#

k JFS `H,v?M JFS ;Jm{9+*}]4kU>#;x,U>G<Zv?M JFS OD5V9||JO


Z?*}]&CLrD&m#rK,v?M JFS BT\Dp'";H JFS B_#

?<i/
;vw}Zc(r i-node)G;vf"KyPD~M?<tTD}]a9#1LriR;vD~D1r,|(
}Z;v?<PiRD~{4Q0OJD i-node#

IZb`Yw-#4P,yTQwzFM_PXbDX*T#

JFS T|D?<I!_Ti/,rKQwYw2G_TD#`H.B,v?M JFS I!KwM?<,rx+s


a_KD~CJYH#

luT
v?M JFS `TZ JFS nsDEFMGluT#

196 T\\m8O
v?M JFS H JFS a)Kf"sD`DD~D\&#Z JFS BD~s!nsI* 64 'WVZ#Zv?M JFS
P,!\D~53e5a9hCIInU&mn_ 4 AVZs!DD~,+ AIX 10;'Vn_ 16 YrW
VZs!DD~#

m;vluTJbMCJs?D~PX#TBe<]>Kv?M JFS gN\a_b;`CJDT\#

< 20.

ZOv>}P,RGC(;D 10 VZD~{4Vp4(">}MQw?<#a{T>4(M>}D~Zv?
M JFS BHZ JFS B*lC`#=VD~53DQwT\`n^8#

BfD>}T>K19CG(;DD~{4P4(">}MQwYw1,;c45Zv?M JFS BHZ JFS B


*lC`Da{GgNeVD#ZC>}P,!CDD~{GT*7`,D 64 VZSO 10 VZD(;{F
iID#TBe<T>KCbTDa{:

< 21.

mbh*"b,S AIX 5.2 *<,JFS Mv?M JFS <'V$D~{(sZ 32 V8)D_Y:f#ba_


KT|,s?$D~{nD?<xPD?<Yw(}g ls M find |n)DT\#

CD ROM D~53
CD ROM D~53Gf"Z CD ROM iJOD;AD~53#

AIX 'V6Yw53kh8\m7D:D~53`M;;ZPyvD`V`MD CD-ROM D~53#

RAM D~53
RAM LG$tZZfPD;v#bL#

RAM ELDhF9d_P,vom}/w`1_D I/O T\,(#C4K~G@CTD~D I/O ?1#RAM


D~53Dnss!\IC53Zfs!D^F#ITZ RAM ELh8O4(;vD~539dICZ}#
DD~539C#;*T@CT}]9C RAM L,r*;)53@#r_XtyP}]<a*'#

D~53T\ 197
xgD~53
xgD~53(r NFS)G;VV<=D~53,|JmC'CJ;Z6LFczODD~M?<,"+G)
D~M?<4wMq|GZ>X;y#}g,IT9CYw53|nT6LD~M?<4(">}"A"4T
0hCD~tT#

T\w{Md{PX NFS DJbIZ:NFS T\;wbPR=#

:(C"PD~53;
(C"PD~53(r GPFS)G;V_T\D2mELD~53,\a)T~qw/:PyPZcDlY}]
CJ#"P3rD&CLrI! UNIX D~53SZCJD~,gZ AIX PGy#

(C"PD~53(}`ELBDg`EL.V I/O Ywa)K_T\,(}U>G<,44T0~qwME


LDJO*Fa)K_ICT#

PX|`E",kND{* GPFS on AIX Clusters: High Performance File System Administration Simplified
D IBM l$i#

JFS Mv?M JFS D1ZT\VFw


P`VivI\VF JFS Mv?M JFS T\#

D~53U>G<TD~53LB?D0l
IZ4YwGZ+*}]GkU>.sYwD,yT4YwDLBJa\=0l#

PXgN\bkU>G<`XDT\p'Dhv,kNDZ 149 3D:_-mMEL I/O T\;#

9uMVNf"
U>D~53'V+VNf"M9uw*D~53;VZ!f"UdD=(#

=y44,}]9u\Z! 1/2 DELUd#;x,VNf"M9uI\a<BkVdn/DvS`XDT\


p'#PX9uMVNf"gN0lT\Dhv,kNDZ 149 3D:_-mMEL I/O T\;#

*Ka_T\,JFS Mv?M JFS <a)K*z{m#D~53GIdCDxR1{mxL&Zs(D1rG


ICJD#

D~53T\v?
Z AIX B,P`V_TMzFICZv?D~53T\#

3r3f$A
VMM (}[lLrCJD~D#=4$b44TD~3fDhs#

1LrCJD~D=v,x3f1,VMM MYhCLr+Lx3rCJCD~,"R VMM wHnbD3r


A!Yw4ACD~#fELrD&mb)A!YwaX~,g{Z*< I/O 0 VMM Q-ZH}LrCJ
B;v3fD0,b)AYw+9Lr\|lX9C}]#

TZ JFS,*$AD3f}ITB VMM P5v(:

198 T\\m8O
minpgahead
VMM nulb=3rf!#=1$AD3}#
g{LrLx3rCJD~,rB;N$A+"zZLrCJ 2 * minpgahead D3f}.s,YB;
N$A"zZ 4 * minpgahead D3f}.s,TK`F,1=3f}o= maxpgahead#
maxpgahead
VMM ZD~P$ADns3f}#

TZv?M JFS,*$AD3f}ITB VMM P5v(:


j2_minPageReadAhead
VMM nulb=3rf!#=1$AD3}#
g{LrLx3rCJD~,rB;N$A"zZLrCJ 2 * j2_minPageReadAhead D3f}.s,
YB;N$A"zZ 4 * j2_minPageReadAhead D3f}.s,TK`F,1=3f}o=
j2_maxPageReadAhead#
j2_maxPageReadAhead
VMM Z;v3rD~P+$ADns3f}#

3rMfzs4
P=V`MDs4:3rMfz#

AIX D~53zkS_-O+?vD~VI 16 KB D/:(TZ JFS)M 128 KB D/:(TZv?M


JFS),-rgB:
v a_4T\
v ^FZfPD`D~(dirty file)3}
v 5M53*z
v n!/ELVN

1=Lr4B;v 16 KB VxDZ;vVZ1,x(VxD3fEa4=ELO#ZGv1r,D~53z
k+Z;vVxDDv`3f?P4=ELO#}]3#tZZfP1=|GD!;XC,b1;h*nbD
I/O#g{ZXC3fD!.0LrXBCJ|GPDNN;3,r;h*xP I/O#

g{Ps?D`D~3f#tZZfPR;a;XC,r sync X$Lr+|G4=ELO,bI\<BEL9


CJ;}##*K9 I/O n/V<|yH,IT*ts4&\4f_53Z+3f4=ELP.0ZfP#t
K`Y3#s4P5yZ?vD~,|93fZ sync X$LrKP.0M4=ELO#

s4VxMs4P5Ds!IT(} ioo |n4|D#PX|`E",kNDZ 205 3D:3rMfzs4T


\w{;#

Zf3dDD~Ms4
#fD~T/3d=NTa)3dDD~#bb6E#fD~CJF}K+3DZK:exMi I/O }L,1
PnbDICZf1JmD~9C|`DZf#D~_Y:f;aV^ZQywDZK:ex#

9CS}L shmat() r mmap() IT=X3dD~,+b;a*|GD_Y:fa)nbDZfUd#&C


Lr9C shmat() r mmap() S}LT=X3dD~,CX7x;GCS}L read() M write() 4CJD
~,byI\b53wCZ76$HOD;)*z,+4'%K53$AMs4&\DC&#

D~53T\ 199
1&CLr;9C write() S}L1,^DD3fWZQ}ZZfP"R1|G; VMM 3ff;c(r sync
X$Lre}1fz4k#b<BTELxPm`!D4Yw,}p CPU MEL{CJDMB,,1ELi
,I\au}44DAD~YH#

sMEzF
sMEG;VkT JFS Mv?M JFS DzF,ZKzFP,;*3f(}4Ywa;xK@Cf"wr_(
}AYw+]x&CLr,M"4ME3f#bV=8bvKT|Z;aXBCJd3fD,sD~xP3r
I/O Yw1DluTJb#

14;vsD~x;I!sMEzFD1r,4Yw+aG#l],x^[ZUP4PGqPIC3fZ#1
3f}xA minfree N}51,VMM IC“n|nY9C”(LRU)c(40R;vDr!3#w*bv}L
D;?V,VMM h*qC}Z;4Yw9CD;vx#KxyCI\a<BT\1gB5#

Z"v mount |n1,(}8(sME3rA(rbr)j>"sME3r4(rbw)j>rsME3rA4


(rbrw)j>ItCsMEzF#

9CsMEzFD;v1wCGza"VTZ`,DAr4LBJ,9CsMEH;9CsMEZ CPU 9C
JOPyvS#b<*iLZME3fDYw,xbVYw(#GZY;)1dI LRU X$Lr4&mD#
,1*"byPD~3fDCJ+0l=ELD I/O Ywr* VMM Q-TD~D}];xP_Y:fYw
K#

SxP 5300-03 D AIX 5.3 *<,IT9C mount -o rbr |n4T NFS 9CsME#

1S I/O 'V
JFS Mv?M JFS <a)TD~D1S I/O CJD'V#

1S I/O CJ=(F*KD~_Y:f,"+}]1SSEL+d=C'Ud:exZ,x;G9C#fD_
Y:f_T+3fE=ZKZfP%#PXgNw{1S I/O Dhv,kNDZ 208 3D:1S I/O w{;

SY4Yw
JFS JmzSY+}]|B=@C"fwof%#SYD4Yw*-#h*X4DD~Z!KnbDELYw#

r*D~19CSY|Bj> O_DEFER ItCSY4Yw&\#bvXTT}]xP:f,"JmTd{x


LxP|lDA4Yw#

1Tr*1I!bVN}DD~xP4Yw1,}]";a;a;=@Cf"wP%1=;vxLICK fsync
|n,?HyP;|BD}]a;=ELP%#,y,g{;vxLZ;vD~OxP,=D4Yw,2MG
5,bvxLZr*D~D1rICK O_SYNC N},G4bvYwM;a;SY49bvD~Z4(D1
rGI! O_DEFER N}#

":bvXTZv?M JFS B^'#

"" I/O 'V


v?M JFS KPTD~D""D~CJ#

k1S I/O `F,bVCJ=(F*KD~_Y:fx+}]1SSEL+M=C'Ud:ex#|9F*K


Jm`v_LT,;vD~xP""A4YwD inode x#

":b;&\;JCZ JFS#

200 T\\m8O
0lT\DD~53tT
D~539C1d=$,y,i,=`#IZJ4D/,Vd,D~idC=4=c",_-`,DD~;t
Ii,,_-`,D_-m(LV)2;tIKi,#

1SVND_-mCJD~1,a"zBPBi:
v 3rCJ;YG43rD
v fzCJO}
v CJ1d!vZO$D0@1d

+G,D~;);ZZfP,b)0lMuuK#D~53DT\2\omrX0l,}g:
v ELD`MMJdwD}?
v CZD~:eDZf}?
v k6LD~CJ`TD>XD~CJ?
v &CLrDD~CJ#=MD~CJ?

(}8V* 4 KB Di,JFS 9zIT|DD~53DVNs!TC=|_DUd9CJ#?v i-node DV


Z}(NBPI)C4XF*D~534(`Y i-node#ITTVNs!!Z 4 KB DD~539C9u#VNs
!M9ua0lT\,bvJb+ZTB?VPV[#
v :JFS VNs!;
v Z 202 3D:JFS 9u;

JFS VNs!
JFS PDVNXwJmD~53PDUdT!Z 4 KB DixPVd#

Z4(D~531,IT8(D~53PDVNs!#JmDs!G 512"1024"2048 M 4096 VZ#1!5


* 4096 VZ#!Z;vVNDD~;pf"ZwvVNP,dw*?DG*KZ<!?`DELUd#

!Z 4096 VZDD~;f"ZnYXh}?D,xVNP#s!Z 4096 VZ= 32 KB(|( 32 KB)D


D~;fEZ;vr`vj{Di(4 KB)P,#`Dr;fEZyhs!D`vVNP#}g,53a*
5632 VZDD~Vd;v 4 KB Di,i-node DZ;v8k+8rbvi#g{VNDs!G 512,G4b
Z;v 4 KB Di+<C 8 vVN#nsD 1.5 KB +<CI i-node DZ~v8k8rD 3 vVN#TZ
sZ 32 KB DD~,53Vd;5P 4 KB Di, i-node D8k8rb) 4 KB Di#

^[VNDs!gN,;vj{iDs!<aG 4096 VZ#;x,ZVNs!!Z 4096 VZDD~53P,


NN\}* 4096 VZD;,.VN<ITzcVd;vj{iDh*#;XT 4096 VZD6}*g^*<
Vd#

D~53ZT<*D~VdUd1a(}+D~>mV"=_-mP4*D~Vd`,DVN,Tc9D~`
%.dDIEMVN5=nMLH#

!VNDD~53DT\DW*~24TZUdi,#!D~V"Zwv_-mDivI\9C*sD~Vd
`,r`|DidC;I\#b1CJsD~T\MI\ss5M#Z+KivB,Udi,a<B^(*D
~VdUd,49TPm`%@DUPVN#

m;v0lEL I/O n/D;{rXG I/O YwD}?#TZf"Z%v 4 KB VNOs!* 4 KB DD~


45,A4D~<;h*;vEL I/O Yw#g{y!VNDs!* 512 VZ,53a*D~Vd 8 vVN,
by,jI;vA4YwMh*;)nbDEL I/O Yw(EL0@"}]+M"Vdn/) #rK,VNs!
* 4 KB DD~53DEL I/O Yw}?+6!ZVNs!!ZKDD~53#
D~53T\ 201
4(!VND~531&C<G9C defragfs |n{mUdb;_T#C_T9Xk,1<GKP defragfs
|nDT\z[#kNDZ 204 3D:D~53i,{m;#

JFS 9u
g{9uKD~53,yPD}]Z;4kEL0<aT Lempel-Zev(LZ)9u<uT/9u,ZSELA!
1rT/b9u#LZ c(+X(V{.DsLvV;Cf;*8rCV{.Z;NvV;CD8k#=yIT
Z{Z< 50% DELUd#

D~53}]Zwv_-iD6pxP9u#Zs%*(}g:;vD~DyP_-i)O9u}]a<B|
`ICELUdDp'#x%@9u;vD~D_-ia9D~DfzA!M|B4P|l#

1r;v9uKDD~534kD~1,9uc(;N9u 4096 VZ(;3)D}]"+d4knYXh}


?D,xVNP#T;,g{D~53DVNs!* 4 KB,+;P``DELUdCZ}]9u#rK,9u
h*{CUdi,,B9VNDs!!Z 4096#

!\9u\eOaZ!Ud,RGTPdVDmIZD~53Z#t;?V49CUd#
v IZ^($*;v 4096 VZD}]ia;9uA24LH,D~53u<1*.#tK;vj{DiDU
d#;h*DVNZ9usME,+b;Vdu<#tUdD_T2I\$>E“Ud;c”D0W#
v ;)UPUdTZ4P defragfs |n45GXhD#

}KEL I/O n/DvSMUPUdi,Jb,9C}]9uDD~53ZT\=f9h<GTB8n:


v w*}]9/b9un/D1Sa{,D~53DICTa5M#g{9u/b9u}]D1}$,9u
sDD~53P1a^(9C,XpGZh*5B}]D1&Lq73B#
v 9usDD~53PDyP_-iZZ;N;^D1aVd=;i 4096 VZDELUd,biUdTs9
aZC_-i;4kEL1;YVd#IZ49uDD~53;hb;NYVd,T\z[ckb*5Z
K;p#
v *4P}]9u,?VZh*+| 50 v CPU 1S\Z,b9u?VZ 10 v CPU 1S\Z#rK,}
]9ua(}vS&mwD1S\Z4SX&mwD:X#
v JFS 9u kproc(jfsc)KPZ;vL(DEH6(30)O,yT1xP9u/b9u1,}GP;vKPZ
|_EH6ODxL,C kproc yZD CPU +Td{xL;IC#

D~53Xi
zITqBfbyuYD~53i,:
v +D~4F=8]=eP
v 9C mkfs fsname |nXB4(D~53,r>}D~53DZ]
v +D~XB0kD~53

3rAkD~IuYi,#TBw?Va)K|`E":
v :XiD~53;
v Z 204 3D:D~53i,{m;

XiD~53
>Za)XiD~53D=h#

ZBfD>}P,53P;v%@D_-mMD~53 hd11(20c:/home/op)#IZRGv(D~53
hd11 h*Xi,rKRG+4PTBYw:

202 T\\m8O
1. 9CD~{8]D~53#g{IC i-node x;GD~{48]D~53,restore |na+D~EX-
;,b^(bvJb#KPgB|n:
# cd /home/op
# find . -print | backup -ivf/tmp/op.backup

bv|n4(K;v8]D~(Zm;vD~53P),|(10D~53PyPh*XiDD~#g{
53ELUdP^,zIT9CEx48]D~53#
2. KPgB|n:
# cd /
# unmount /home/op

g{PNNxL}Z9C /home/op r|DNNS?<,rXkHU9b)xL,unmount |nE\I&


jI#
3. Z /home/op _-mOXB4(D~53,gB:
# mkfs /dev/hd11

Z!{-D~53.0z+C=dCa>#D~53{;d#
4. {#f-73(}% /home/op *UDiv),KPgB|n:
# mount /dev/hd11 /home/op
# cd /home/op
5. qBfby#f}]:
# restore -xvf/tmp/op.backup >/dev/null

j<dv;X(r= /dev/null T>v4,bGh*(Q1dD#


6. !gsisD~(kND:9C fileplace |nxPD~<V@@;),gB:
# fileplace -piv big1

RG4=VZ|G(8uG),xD:
File: big1 Size: 3554273 bytes Vol: /dev/hd11
Blk Size: 4096 Frag Size: 4096 Nfrags: 868 Compress: no
Inode: 8290 Mode: -rwxr-xr-x Owner: hoetzel Group: system

INDIRECT BLOCK: 60307

Physical Addresses (mirror copy 1) Logical Fragment

---------------------------------- ----------------

0060299-0060306 hdisk1 8 frags 32768 Bytes, 0.9% 0008555-0008562


0060308-0061167 hdisk1 860 frags 3522560 Bytes, 99.1% 0008564-0009423

868 frags over space of 869 frags: space efficiency = 99.9%


2 fragments out of 868 possible: sequentiality = 99.9%

mS= fileplace |nPD -i !nmwZD~D0KvidfZ;viDd6,xD~#`?V|,dSi,


CiGZD~$H,} 8 vi1C49dw}ZcE"yh*D#

3)D~53r_-m;&CxPXir*b)}]rGL]D(}g /tmp)rGGD~53Dq=(U>)
#
yD~53;cG;-DdDxR+Yh*Xi#Dd;GZ20/,$#=BE"z#,yivD9P /usr
r*dP\`D~<h*}#53Yw#

D~53T\ 203
D~53i,{m
g{D~534(1DVi]?!Z 4 KB,G4MPX*(Zi/"dD;ICi,}?#g{P\`D!i
,"d,M\QR=ICD,xUd#

*V4b)V"D!i,,I9C smitty dejfs |n"smitty dejfs2 |nr defragfs |n#i,{mD}


Lh*{C=;)UPELUd#D~53XkhC*IA4#

D~53T\w{
D~53T\w{P`v=f#

3rAT\w{
VMM D3r$A&\Iv?3rCJsD~DLrDT\#

VMM 3r$A&\ZZ 198 3D:3r3f$A;PxPhv#

BfDe<9>KdMD$ADiv#

< 22. 3r$AD}S. C<T>K;Ei,|G#b;vVNE@DD~3E#b)iN4 0,1 = 3,4 = 7,8 =


15 T0 16 = 23 `E#3r$AD=hITZtSEe<sDD>PR=#

Zbv}SP,minpgahead D5* 2,maxpgahead D5* 8(1!5)


#Lr3r&mD~#<P;T>KT
$AzFPX*wCD}]}C(4S A = F D3rjv) #b)=hG:
A Z;ND~CJA!D~DZ;3(Z 0 3)
#Zbv1r,VMM ";*@bNCJGfz9G3r
CJ#
B 1LrCJB;3(Z 1 3)DWVZx;fZTD~d{3DekCJ1,VMM FOvCLr}
ZxP3rCJ#ZG+3a0?h* minpgahead (2) "RwHA!nbD3(Z~"}3)
#by=
h B \2A!K 3 3#
C 1LrCJ$ADZ;3(Z 2 3)DWVZ1,VMM +3a0?S6= 4 "RwHA!Z 4 =
7 3#
D 1LrCJ0N$ADZ;3(Z 4 3)DWVZ1,VMM +3a0?S6= 8 "RwHA!Z 8
= 15 3#
E 1LrCJ0N$ADZ;3(Z 8 3)DWVZ1,VMM v(+3a0?h* maxpgahead "R
wHA!Z 16 = 23 3#
F VMM ZLrCJ0;i$A3DWVZDivBLx$A maxpgahead 31=D~a2#

;)Lr+kK3rCJ#="R;4NrCJKD~PD;3,3r$AMaU9#1 VMM lb=LrV


43rCJs,3a0?caV4= minpgahead 3#

IZ ioo |nP9C -r M -R !n4|D minpgahead M maxpgahead D5#g{zrcDdb)5,kG


!:
v C5XkG/O:0"1"2"4"8"16 HPD;v#9Cd{5I\aTT\r&\lI;{0l#
– IZ VMM DS6c(,C5&CG 2 D]#

204 T\\m8O
– sZ 16 D maxpgahead 5($A?sZ 64 KB)a,v3)ELh8}/LrD\&#ZbVivB,
$ADs!a#VZ 64 KB#
– |sD maxpgahead 5ICZux4_-mD3rT\TCAXX*D53P#
v minpgahead M maxpgahead D5<* 0 \P'{}KzF#baxT\x4:f0l#+G,Z I/O fz
D;)ivB,bI\2PC&,b1 I/O Ds!a9$Ac(z'#
v TZGux4D~53,1 maxpgahead 5* 8 r 16 1,d3r I/O T\ao=I\Dns5#
v $A5S minpgahead vS= maxpgahead D}L\l,TAZTZs`}D~s!xT,vs minpgahead
"^f&#
v ITkT JFS Mv?M JFS Vpw{3r$A&\#JFS $A3IT(} minpgahead M maxpgahead x
Pw{,x j2_minPageReadAhead M j2_maxPageReadAhead CZv?M JFS#

3rMfzs4T\w{
s4f0Zo=3vP5s+ZfP^D}D3fl=4=ELO,x;GH} syncd X$Lr+3feU=
ELO#

b;CZ^FZfPD`3},uY53*zMn!/ELi,#s4P=V`M:3rs4Mfzs4#

3rs4
g{XDyP 4 3<G`3,r;*^DKB;vVxPD3,awH+CXPD 4 v`34kEL#g{
;_8b;&\,r1= syncd X$LrKP0,C3<atfZZf,<BI\D I/O ?1MD~i,#

1!ivB,;v JFS D~.VI 16 KB s!DVxr 4 3#?;vbyDVx;F*;X#

VMM CZd1P5DX}GIw{D#1!5G;X#9C ioo -o numclust |nvs numclust N}IS


Ys4k#

TZv?M JFS,ioo -o j2_nPagesPerWriteBehindCluster |nC48(?NwHD3},x;GX}#v?M


JFS XD1!3}* 32,b6Ev?M JFS D1!s!* 128 KB#

fzs4
s4&\a)Kby;VzF,41x(D~ZZfPD`3},}f(P5s,rawHy4Dsx3fT
4=ELO#

I\fZ;)&CLr4Ps?Dfz I/O,4 I/O #=;zcs4c(D*s,rx<ByP3f$tZZ


fP,1= syncd X$LrKP*9#g{&CLr^DKZfPD\`3f,rZ syncd X$Lr"v
sync() wC1,ba9CrEL4ks?3#

+ ioo |nk JFS maxrandwrt N};p9C,Iw{P5#1!5* 0,m>fzs4G{CD#+C5v


S= 128 m>;)D~$tZZfD3o= 128 3,fsDNN`3<+;wH4kEL#xb)3+Zw
C sync() s"B#

TZv?M JFS,ioo |n!n j2_nRandomCluster(-z j>)M j2_maxRandomWrite(-J j>)CZ


w{fzs4#=v!n1!5<* 0#v?M JFS D j2_maxRandomWrite !nM JFS D maxrandwrt &
\`,#4|^(K?vD~ITtZZfPD`3}#j2_nRandomCluster !n8(KIT;S*fzD=
N,x4k.dDX}#

D~53T\ 205
l=EL I/O T\w{
g{&CLrxP,= I/O Yw,|XkH} I/O jIsE\Lx4P#`4,l= I/O YwZs(KP,
;ah{C'&CLr#bMDxKT\,r* I/O YwM&mPD&CLrIT,1KP#m`&CLr,
ng}]bMD~~qw,{CKX~&mMX~ I/O D\&#

&CLrIT9C aio_read() |n"aio_write() r lio_listio() S}L(r|GD1>)44Pl=EL I/O#


;)ks;ES,XF(MSS}L5X&CLr#1ELYw;4P1,&CLrITLx&m#

*K\ml= I/O,?;vl= I/O ksZ&CLrX7UdP;v`&DXFi#CXFi|,KksDX


FM4,E"#Z I/O YwjIsIT;YN9C#

Z"vK;vl= I/O ks,C'&CLrITv(N1"TNV==ax I/O Yw#b)E"ZTB}V=


=DNN;VPa):
v &CLrITV/ I/O YwD4,#
v 1 I/O YwjIs53ITl=(*&CLr#
v &CLrITh{,1= I/O YwjI#

%vZKxLr kproc &m?v I/O,"R(# kproc ;\Y&m4TCSPDks,1= I/O Q-jI#


1tCKl= I/O,1!dCD~qwn!}?G 1(G minservers tT) #2P;v4(Dl= I/O ~q
wDns}?(; maxservers tTXF)#maxservers 5G?v CPU Dl= I/O kproc D}?,C1!
5G?v CPU 10#*q!Z AIX 53OKPDl= I/O kproc Dns}?,+ maxservers 5KT10K
PD CPU D}?#

~qwD}?^FKITZ53P,1&mDl=EL I/O YwD}?#ITC SMIT |n(smitty -> h8


-> l= I/O -> |D/T>l= I/O DXT ->{n! | ns} ~qw}?r smitty aio),r_9C chdev
|n,4hC~qwD}?#

\YKP&CLrD53IT9Cl= I/O,1!5(#ITc?;C#

g{l= I/O }?ks\_,M+ maxservers 5vSAS|,1 I/O DI\D}?#Zs`}ivB,n


C#t minservers N}*1!5,r*g{h*,C AIO ZK)9+zId{~qw#

":4PZc_-mOD AIO Yw";9C kproc ~qwxL#PX maxservers M minservers DhC


ZbVivB;P'{#

(}i4 AIO ~qwD CPU {CJ,g{{CJZ|GPdyHDVd,GMb6E|G<Z9CP;Zb


VivB,zI\*vS|GD}?#*4{Fi4 AIO ~qw,KP pstat -a |n#KP ps -k |ni
4{* kproc D AIO ~qw#

Zl=EL I/O DT\\X*"Rmks\_,xcV;P;vJ1D,= I/O }?D73B,(i+


maxservers AYhC* 10(l=f"ELD})
#

T5345IT(}}vl=f!ELqC,gBy>:
# chdev -l aio0 -a maxservers=’30’

Kb,zIThC4jIl= I/O ksDns5T0~qwDEH6#g{zD535Ps?Dl= I/O &C


Lr,GMITJ1XvSks}T05MEH6}?#

206 T\\m8O
D~,=T\w{
P`V=(Iv?D~,=#

JFS DG3rD~ I/O a;1f"ZZfP1=zc;(u~:


v UPPmu!= minfree,TBh*xP3f;#
v syncd X$Lr4L(wHdt"B3#
v 4PK sync |n#
v fzs4Zo=fzs4P5seU`3f#

g{ZTODN;u~zc0Qf"K}`3,rZ syncd X$LrxP"B1,aqC;v i-node x"#


V=yPD`3<;4kEL#ZbN1do,NNT<CJKD~D_LaIZ^(qC i-node xx;h{#
kG!:syncd X$Lra3{D"B;vD~PDyP`3,+^Z;N;vD~#Z;v5Ps?Zf"
,1Ps?3h*^DD53P,syncd X$Lr"B31 I/O I\o=_e5#

AIX P;vF* sync_release_ilock DIw!n#x -o sync_release_ilock=1 !nD ioo |nJmZe


UCD~D`3fsMEw}Zcx#b;!n9CZwC sync() D}LPCJCD~P|CDl&#

h{'{2I(}Z syncd X$LrPa_,=5J9.n!/#Z /sbin/rc.boot wC syncd X$Lr


DX=,|DC /sbin/rc.boot#;sXB}<539.z'#TVP53,1@ syncd X$LrxL"4BD
5XBt/X$Lr#

Z}Vw{bVP*D=(G9C ioo |n*tfzs4&\(kNDZ 205 3D:3rMfzs4T\w


{;)
#

D~53:exw{
TB ioo M vmstat -v N}Z=b I/O :ex?1T0w{EL I/O =f\PC:

IZ:exL1x}pDh{ I/O F}w

vmstat -v |nT>ZwVZKi~PIZ:exL1x}pDh{ I/O DF}w#BfG vmstat –v dv


>}D;?V:
...
0 paging space I/Os blocked with no psbuf
2740 filesystem I/Os blocked with no fsbuf
0 external pager filesystem I/Os blocked with no fsbuf

...

?1 bufstruct ;IC"R VMM +_LEk VMM H}Pm1,paging space I/Os blocked with no psbuf
M filesystem I/Os blocked with no fsbuf F}wMa]v#?1v?M JFS D~53OD bufstruct ;
IC,external pager filesystem I/Os blocked with no fsbuf F}wMa]v#

numfsbufs N}

1Ps?kTD~53D,=rsM I/O rGfZkTD~53DsM3r I/O 1,b) I/O I\aZH}


bufstruct 1I*D~536D?1#IT9C ioo |nvS?vD~53D bufstruct }(F* numfsbufs)
#
C5vZD~53SXsEaz';rKg{|DKbv5,rXk6X;sYNSXD~53#numfsbufs D
1!5?0*?vD~53 93 v bufstruct#

D~53T\ 207
j2_nBufferPerPagerDevice N}

Zv?M JFS P,bufstruct }?IN} j2_nBufferPerPagerDevice 8(#10v?M JFS D~53D1!


bufstruct }G 512#?vv?M JFS D~53D bufstruct }(j2_nBufferPerPagerDevice)IT9C ioo |n
vS#C5ZD~53;SXsEpwC#

lvm_bufcnt N}

g{&CLr}Z&m\s?Dc I/O x;(}D~53,,D~53`,`MD?12I\vVZ LVM c


O#+s?D I/O SO+lD I/O h8I\a<B LVM cOD?1#+Gg{fDvV?1,rIT(}
ioo |nvs{* lvm_bufcnt DN},Ta)s?D“uphysio”:ex#C5a"Lz'#10D1!5G 9 v
“uphysio”:ex#IZ10 LVM + I/O V*?v 128 K,x lvm_bufcnt D1!5* 9,J;NI4k 9*128
K#g{zD I/O sZ 9*128K,G4vS lvm_bufcnt I\.VP{#

pd_npages N}

pd_npages N}8(1>}D~1 RAM D3;iP&C>}D3}#DdK5;TG)h*>}D~D51


&CLrEPC#IZZVI3vxL/_L.0+>}Y?D3f,rK(}u! pd_npages N}D5,5
1&CLrIqC|lDl&1d#1!5GnsI\D~s!}T3fs!(?0* 4096);g{nsI\
D~s!* 2 GB,r pd_npages N}D51!* 524288#

v_pinshm N}

1 v_pinshm N}hC* 1 1,g{4P shmget() D&CLr8( SHM_PIN w*j>D;?V,ra9


2mZfNPD3I VMM L(#1!5* 0#

&CLrIT!qxP3vIwN},|8(&CLrGq&C9C SHM_PIN j>(}g:Oracle 8.1.5 0


TOf>Pa)D lock_sga N})
#k\bL(}`DZf,r*ZbVivB^(xP3f;#IZZ<K
b)2mZfNDl= I/O *z(;h*l= I/O ZK)94L(:ex),rKbVL(G\PCD#

1S I/O w{
1S I/O Dw*f&ZZ(}{}S VMM D~_Y:f=C':fD1>4uY CPU TD~AYwM4
YwD9CJ#

1zZTD~xP}#D I/O &m1,I/O Z&CLr:exM VMM .d4XxP#Z:exPDZ](}


VMM +5fw*D~:exD_Y:fD9Cx_Y:fZ RAM P#g{D~_Y:f|PJ\_,G4
bv_Y:fD`MZa_ I/O D\eT\O+.VP'#+G_Y:f|PJ\MD&CLrr_4Ps?
I/O D&CLr2m;aS}#D_Y:f I/O 9CPC=\`C&#

g{_Y:f|PJM,G4s`}A!ks;C;*rEL#4YwZs`}ivB9C}#_Y:f I/O *
|l#+Gg{D~GT O_SYNC r O_DSYNC(kNDZ 175 3D:9C sync M fsync wC;)r*D,
r4Yw+;C;*rEL#ZbVivB,1S I/O I\9&CLrqf,r*}]D1>;{}K#

m;vf&G1S I/O ITJm&CLr\b!M_Y:fTd{D~D'\#1;vD~;A!r4k1,


CD~:yZfUd,PI\}pd{D~}];FvZf#g{;v&CLr*"_*@3)D~POMD
_Y:f{CJXw,G4;PG)D~ITC O_DIRECT r*#

*KC1S I/O P'X$w,I/O ksJCZ};9CDD~53D`M#finfo() M ffinfo() S}LITC4


i/L(is!D~53"i,D~53MsD~D~53D+F?"$HMX7EP*s(9uD~53;
#i/=DE"|,Z /usr/include/sys/finfo.h D~PyvD diocapbuf a9#
'V1S I/O)

208 T\\m8O
*K\b;BJb,g{P`vwCC4r*D~"R;vr`vwC;PF( O_DIRECT xm;vr*Yw
8(K O_DIRECT,G4D~+#tZ}#_Y:f I/O #=#,yD,g{D~G(} shmat() r mmap()
53wC3d=ZfP,|G#tZ}#_Y:f#=#g{ns;ve;,G1Sf!;{},G4D~5
3a+D~Fk1S I/O #=(r_9C close()"munmap() r_9C shmdt() S}L)
#S}##==1
S I/O #=I\z[;!,r*yPZZfP^D}D3f+;C;ZGcO"BEL#

1S I/O >JOH#f I/O h*|YD CPU \Z#I/O v?T&CLr;aZ#f I/O ya)D_Y:f


PC=f&,+GIT9C1S I/O 4v?T\#

w*1S I/O DJ1r!_DLr(#\ CPU ^F"R4Ps?DEL I/O#5Ps?3r I/O D<u&C


LrGJ1Dr!_#4Pm`!M I/O D&CLr;c45\=OYDT\f&,r*1S I/O ;\$Ar
s4#\fZuxxD&CLr,yG;mDr!_#

1S I/O AYwT\
499C1S I/O I\uY CPU D9C,+\PI\zz|$D{E1d,XpT!M I/O ksxT,r*
ks;aZZfP_Y:f#

1S I/O A!YwaSEL}p,=AYw,;x(}}#D_Y:f_T,A!YwI\aS_Y:fGo
C=zbDa{#g{}]ZZfPq-}#_Y:f_T,G4byI\<BT\MB#1S I/O 2vT
VMM $Ac(,r* I/O ";(} VMM#$Ac(T3rf!D~G#PC,r* VMM ITt/EL
ks"R\Z&CLrks3f.093fgM$tZZfP#&CLrIT(};B=(PD;V9%$A
Dp':
v 4PA!ks(n! 128 K)
v 9C`v_L4Pl=1S I/O $A!#
v 9Cl= I/O $_ng aio_read() r_ lio_listio()

1S I/O 4YwT\
1S I/O 4YwF} VMM 1S4kEL,TBZI\zzOXDT\p';Z}#_Y:fD I/O P,4
YwIT4kZf,Ts(} sync r write behind YweU=ELO#

IZ1S I/O 4Yw";4F=Zf,1;v sync Yw4Ps,|;aXk"Bb)3f,by;4MuY


K syncd X$LrXk4PD$w?#

D~53U>MU>_-mXi
U>D~53(JFS)Mv?MU>D~53(JFS2)9C}]bU><u4,$;BDD~53a9#|(
+0lD~53*}]DBq4F=-7D~53U>#D~53*}]|(:,6i,i-node,dS}]8
kM?<#

1ZfPD3; sync() r fsync() /}5J4kEL1,a;E";4kU>Tm>}]QfZZEL#U


>BqZTBivB"z:
v 4(r>};vD~1
v 1T;vT O_SYNC r*DD~wC write() /}R4Yw<BVd;vBDELi1#
v 1 fsync() r sync() SLr;wC1#
v 14Yw<B;vdSDr+dSDELi;Vd1#

D~53T\ 209
153@#1,D~53U>9CD~53ITlY"<7DV4#g{;v&CLr}ZxP,= I/O Yw,
r_ZL1dZ4(">}s?DD~,53a+s?D I/O YwG<ZU>_-mP#g{U>_-mMD
~53_-mZ,;vomELO,Ma<B I/O ?1#Fv+U>h8*F=m;vom}/wO(T NFS
~qwHdP')#

_Y4:fh8IT*U>_-m(D~53U>r}]bU>)a)|CDT\#

AIX 4.3.2 * JFS D~53a)KF* nointegrity D mount !n,TZ9CK!n20DD~53,C!


n+;9C JFS U>#;*\m1*@Z534;}7XUx@#1h*ZD~53OKP fsck |n,G4
bv!nMaa)|CDT\#

9C filemon |nrD~53U>G<XZ I/O YwDE"#g{z"b=3vD~53M{DU>h8<


:#}X,nC+|GVpEZ;,DomELO(YhZmiPP`Z;vDEL) #

zITZmiP5P`vU>h8#+G,;vD~53DU>XkMCD~53&Z,;vmiZ#495
3}ZKPr9C1,z2IT9C migratepv |n+U>_-mr_D~53_-mF/=d{DEL#

4(U>_-m
+U>_-mhCZkcn#CDD~53_-m;,DommOITvSJ4D"P9C#zIT*?;v
D~53hC%@DU>#

1z4(zD_-m1,;,D}/wDT\G;,D#kZ_Y}/w(I\xP_Y4:f)O*#CD
D~534(_-m,=(gB:
1. gBy>4(BD~53U>_-m:
# mklv -t jfslog -y LVname VGname 1 PVname

r_
# mklv -t jfs2log -y LVname VGname 1 PVname

r_
# smitty mklv
2. gBy>q=/U>:
# /usr/sbin/logform -V vfstype /dev/LVname
3. gBy>^D /etc/filesystems M_-mXFi(LVCB):
# chfs -a log=/dev/LVname /filesystemname
4. 6BsYNSXD~53#

m;VZ%@mO4(U>D=(:
v WHZ;v%@DommO(emi#
v ZbvBDmiZ(e;v_-m(baZZ;vommOVd;vmi JFS U>)
#
v +#`DommSkCmi#
v ZBSkDommO(e_{CJDD~53(_-m)
#

EL I/O w=
EL I/O w=CZ@9G)zzs?dvE"DLr}H9C53 I/O h8,Sx<BG)Tl&1d*s;
_DLrv@#

210 T\\m8O
EL I/O w=?F?vNr?vD~TZyPD]R I/O ksjw_.;jGMM.;jG#1;vxLk*
r;vQ;j>*_.;jGDH}4EEDD~P4k1,xL;C*/_4,1A I/O h8Q9H}4Y
wDks}?MZrHZM.;jG}?#I/O ks&mD_-"4Dd#;xSs]?xLPyzzDdvY
H+;u:#

9C SMIT $_,IThC536'D_.;MM.;jG,=(G!q System Environments -> Change


/ Show Characteristics of Operating System(smitty chgsys),;skT_.;MM.;j>dk3
f}r(}9C maxpout M minpout 20!nkTwvD~53dk3f}#

maxpout N}8(]R_L0&Z I/O 4,IwH=D~D3f}#minpout N}8(_LS]R4,UQ


1wH3fDn!}?#maxpout M minpout N}D1!5* 0,bm>{CK I/O w=&\#

T maxpout M minpout N}D536'5D|D;hXB}<534I"4z'#T maxpout M minpout


N}5D|Da2G536'hC#IT(}20D~53"+ maxpout M minpout N}D5w7hC*
0 4S536'D I/O w=E}CD~53#TB|nG;v>}:
mount -o minpout=0,maxpout=0 /<file system>

w{ maxpout M minpout N}I\aA-}ZTD~4P3r4YwD_L'd53J4#

BmT>KZ IBM eServer™ pSeries® 7039-651 M(dC*x 1.7 GHz &mwD 4 753)O vi `-wD
a0Dl&1d,mPxvK4kEL1 maxpout M minpout N}Dwv5:

dd is!(10
maxpout D5 minpout D5 GB) 4k(s) LB?(MB/s) vi "M
0 0 10000 201 49.8 dd jI.s
33 24 10000 420 23.8 ;PSY
65 32 10000 291 34.4 ;PSY
129 32 10000 312 32.1 ;PSY
129 64 10000 266 37.6 ;PSY
257 32 10000 316 31.6 ;PSY
257 64 10000 341 29.3 ;PSY
257 128 10000 223 44.8 ;PSY
513 32 10000 240 41.7 ;PSY
513 64 10000 237 42.2 ;PSY
513 128 10000 220 45.5 ;PSY
513 256 10000 206 48.5 ;PSY
513 384 10000 206 48.5 3 - 6 k
769 512 10000 203 49.3 15-40 k,I\|$
769 640 10000 207 48.3 YZ 3 k
1025 32 10000 224 44.6 ;PSY
1025 64 10000 214 46.7 ;PSY
1025 128 10000 209 47.8 YZ 1 k
1025 256 10000 204 49.0 YZ 1 k
1025 384 10000 203 49.3 3 k
1025 512 10000 203 49.3 25-40 k,I\|$
1025 640 10000 202 49.5 7 - 20 k,I\|$

D~53T\ 211
dd is!(10
maxpout D5 minpout D5 GB) 4k(s) LB?(MB/s) vi "M
1025 768 10000 202 49.5 15 - 95 k,I\|$
1025 896 10000 209 47.8 3 - 10 k

maxpout M minpout N}DnQ6'!vZ CPU YHM I/O 53#g{ maxpout N}D5HZrsZ


j2_nPagesPerWriteBehindCluster N}D5,r I/O w=+}#$w#}g,g{ maxpout N}D5H
Z 64,minpout N}D5HZ 32,rZB;N4kh{.0&Z I/O 4,D3fn`P 64 vRP 2 N I/O#

1!Dw{N}gB:

N} 1!5
j2_nPagesPerWriteBehindCluster 32
j2_nBufferPerPagerDevice 512

TZv?M JFS,IT9C ioo -o j2_nPagesPerWriteBehindCluster |n48(?NwHD3}#v?M


JFS /:D1!3}* 32,bb6ETZv?M JFS,1!s!* 128 KB#zIT9C ioo -o
j2_nBufferPerPagerDevice |n48(D~53D bufstruct }#1!5G 512#*9C5z',XkXB2
0D~53#

212 T\\m8O
xgT\
AIX a)K`V;,D(E-i,T0C4`SMw{|GD$_M=(#

TCP M UDP T\w{


Iw{(EN}DE/h(5f LAN `M"w53(E I/O KZXcM&CLrx;,#b;?VhvK AIX
(Ew{D[O-m#

k9CTBsY4i$0w{xg20M$w:X:
v 7#Jdw;Z}7De[P#
v 7#53L~&Z}7D"P6p
v 7#JdwMxg;;z&Z}7DYHM+$==
v 7#Q!qK}7D MTU s!
v kTxg`M"YHM-iw{ AIX Iwn
v d{"bBn:
– Jdw6X!n
- TCP #iM6X
- TCP s?"MMXBVN
– POO"
– dk_L(Dog _L)

Jdw<V
xgT\!vZy!D2~,gzwPDJdw`MMJdw<V#

*7#qCnQT\,Xk+xgJdwCZnJO?vJdwD I/O \_e[P#

1"T7(Dv I/O \_e[nOJ1,k<GBPrX:


v PCI-X TH PCI Jdw
v 64 ;TH 32 ;Jdw
v \'VD\_e[1SYH(33 MHz"50/66 MHz r 133 MHz)

JdwDxmr}]YJ=_,e[<VM=X*#}g,PCI-X JdwCZ PCI-X e[P1mVnC,r*


|G(#Z\_OT 133 MHz D1SYHKP#I+ PCI-X JdwCZ PCI e[P,+|GZ\_OKP
O},(#* 33 MHz r 66 MHz,rx;asZ3)$w:XO;ymV<C#

,y,64 ;Jdw20Z 64 ;e[P$w4vnC#I+ 64 ;JdwCZ 32 ;e[P,+|G;aTn


mkDYJKP#sM MTU Jdw(g&Z^M!(jumbo frame)==D'WT+x)Z 64 ;e[PmV
COC#

1Z0lT\Dd{JbG?y\_r?v PCI wzxE(PHB)ODJdw}#y]53MEMJdw`M,


?v PHB OD_YJdw}I\a\^#<V<rI7#JdwV<ZwV PCI \_O,"RIT^F?y
PCI \_ODJdw}#PXzwMEMJdw`MD|`E",kND PCI Adapter Placement Reference#

© Copyright IBM Corp. 1997, 2006 213


BmPvK IBM System p zwPICD PCI M PCI-X e[`M:

e[`M >wbP9CDzk
PCI 32 ; 33 MHz A
PCI 32 ; 50/66 MHz B
PCI 64 ; 33 MHz C
PCI 64 ; 50/66 MHz D
PCI-X 32 ; 33 MHz E
PCI-X 32 ; 66 MHz F
PCI-X 64 ; 33 MHz G
PCI-X 64 ; 66 MHz H
PCI-X 64 ; 133 MHz I

OBMD IBM System p5™ zw;P PCI-X e[#PCI-X e[T PCI JdwGrsf]D#

BmT>K+2Jdw>}T0(iDe[`M:

Jdw`M W!e[`M(nM=n_EH6)
10/100 Mbps T+x PCI Jdw II(10/100 T+x),FC 4962 A-I
IBM PCI 155 Mbps ATM Jdw,FC 4953 r 4957 D"H M I
IBM PCI 622 Mbps MMF ATM Jdw,FC 2946 D"G"H M I
'WT+x SX PCI Jdw,FC 2969 D"G"H M I
IBM 10/100/1000 Base-T T+x PCI Jdw,FC 2975 D"G"H M I
'WT+x SX PCI-X Jdw('WT+xbK),FC 5700 G"H M I
10/100/1000 Base-TX PCI-X Jdw('WT+x),FC 5701 G"H M I
2 KZ'WT+x SX PCI-X Jdw('WT+xbK),FC 5707 G"H M I
2 KZ 10/100/1000 Base-TX PCI-X Jdw('WT+x),FC G"H M I
5706
10 'W SR T+x PCI-X Jdw,FC 5718 I(vJCZ PCI-X 133 e[)
10 'W LR T+x PCI-X Jdw,FC 5719 I(vJCZ PCI-X 133 e[)

lsslot -c pci |na)KBPE":


v e[D PCI `M
v \_YH
v Dvh8;ZDve[

BfGZxPyvZ?e[D 2 7 p615 53O4P lsslot -c pci |nD>}:


# lsslot -c pci
# Slot Description Device(s)
U0.1-P1-I1 PCI-X capable, 64 bit, 133 MHz slot fcs0
U0.1-P1-I2 PCI-X capable, 32 bit, 66 MHz slot Empty
U0.1-P1-I3 PCI-X capable, 32 bit, 66 MHz slot Empty
U0.1-P1-I4 PCI-X capable, 64 bit, 133 MHz slot fcs1
U0.1-P1-I5 PCI-X capable, 64 bit, 133 MHz slot ent0
U0.1-P1-I6 PCI-X capable, 64 bit, 133 MHz slot ent2

214 T\\m8O
TZ'WT+xJdw,entstat -d en[interface-number] |ndvr netstat -v |ndva2&X(ZJd
wD3FE"T>KJdwD PCI \_`MM\_YH#BfG netstat -v |nD>}dv:
# netstat -v

10/100/1000 Base-TX PCI-X Adapter (14106902) Specific Statistics:


--------------------------------------------------------------------
Link Status: Up
Media Speed Selected: Auto negotiation
Media Speed Running: 1000 Mbps Full Duplex
PCI Mode: PCI-X (100-133)
PCI Bus Width: 64 bit

53L~
53L~:pZ53P?v PCI JdwOdC`v|N},"Z;, I/O M PCI \_D I/O >,PdCw
V!n#

3)ivB,L~hCDN}TX(JdwG(;D,}g“PCI H}1d(1w”M“_Y:fP”;xTZ
PCI-X Jdw*“nsZfAVZ}”(MMRBC)5#b)N}GSJdwqC<CT\DX|yZ#g{4}
7hCb)N},IZL~6pOM,%%(}m~w{o=nQT\G;I\D#Zr53PmSBJdw
.0,7#zZOID53O|BKL~#

L~"P6pE"ML~|BISTB4SBX:http://www14.software.ibm.com/webapp/set2/firmware/gjsn

I9C lscfg -vp|grep -p ″ ROM″ |ni4=(M53L~D6p,gTB>}Py>:


lscfg -vp|grep -p " ROM"

...lines omitted...

System Firmware:
ROM Level (alterable).......M2P030828
Version.....................RS6K
System Info Specific.(YL)...U0.1-P1/Y1
Physical Location: U0.1-P1/Y1

SPCN firmware:
ROM Level (alterable).......0000CMD02252
Version.....................RS6K
System Info Specific.(YL)...U0.1-P1/Y3
Physical Location: U0.1-P1/Y3

SPCN firmware:
ROM Level (alterable).......0000CMD02252
Version.....................RS6K
System Info Specific.(YL)...U0.2-P1/Y3
Physical Location: U0.2-P1/Y3

Platform Firmware:
ROM Level (alterable).......MM030829
Version.....................RS6K
System Info Specific.(YL)...U0.1-P1/Y2
Physical Location: U0.1-P1/Y2

JdwT\<r
AIX Pa)Ks?<r,CZ9JdwT\o=n_#

TZZ TCP ,SO+M}]D&CLr,C'P':X}]YJIIyZWSVDLrqC#}g,;vxP


send( ) wCDLrMxP recv( ) wCDSUw#KYJGxgHXJ"MTU s!(!s!)"omc*

xgT\ 215
z(g!dd6M0,=EE;"}]4S7M TCP/IP 7)D/},"IC'WUYHD CPU#b)YJG
nJOZ%v LAN D}V,g{(}7IwrnbDxgPLNr6L471,b)YJI\a5M#

%r(%$)TCP wYJGZf=ZfbTPII$w:X(g+}]Szw A "M=zw B D FTP)4


=DYJ#kNDZ 247 3D:ftp |n;#k"b++$iJHk+$iJT\TC,r* TCP &pITw
X,x;ayC}]|yw-D,;_7#

BmPvKI\DnsxgP':XYHT0%r(%$)TCP wYJ:

":ZBmP,-<HXJ5GomiJHXJ,;a43vomiJD*z,g!dd6"0,=EE;"
%**z(TZ ATM)T0}]477?M2?#b)OZ;p5MK_7DP'ICHXJ#

m 5. nsxgP':XYHM%$ TCP wYJ


xg`M -<HXJ(Mb) P':XYJ(Mb) P':XYJ(Mb)
10 Mb T+x,k+$ 10 6 0.7
10 Mb T+x,++$ 10(20 Mb ++$) 9.48 1.13
100 Mb T+x,k+$ 100 62 7.3
100 Mb T+x,++$ 100(200 Mb ++$) 94.8 11.3
1000 Mb T+x,++$,MTU 1000(2000 Mb ++$) 948 113.0
1500
1000 Mb T+x,++$,MTU 1000(2000 Mb ++$) 989 117.9
9000
10 Gb T+x,++$,MTU 1500 10000 2285(e5* 2555) 272(e5* 304)
10 Gb T+x,++$,MTU 9000 10000 2927(e5* 3312) 349(e5* 395)
FDDI,MTU 4352(1!5) 100 92 11.0
ATM 155,MTU 1500 155 125 14.9
ATM 155,MTU 9180(1!5) 155 133 15.9
ATM 622,MTU 1500 622 364 43.4
ATM 622,MTU 9180(1!5) 622 534 63.6

+r(+$)TCP w$w:X_P=v=rD}]w#}g,9Szw A =zw B D ftp |nT0Szw


B =zw A D ftp |nDm;5},1KP,bISw+$ TCP w#b)`MD$w:X{CIT"P"
MMSU}]D++$iJ#P)iJ(g&Zk+$==D FDDI rT+x)^("P"MMSU}],"
RZKP+$$w:X1;amVC\C#+$$w:X";G;cI%$$w:XYJD=6,r*SSU
w5XD TCP &p|VZ;C;kZ,;v=rw/DE"|:y#BmPvK=v=r(+$)D TCP w
YJ:

m 6. nsxgP':XYHM+$ TCP wYJ


xg`M -<HXJ(Mb) P':XYJ(Mb) P':XYJ(Mb)
10 Mb T+x,k+$ 10 5.8 0.7
10 Mb T+x,++$ 10(20 Mb ++$) 18 2.2
100 Mb T+x,k+$ 100 58 7.0
100 Mb T+x,++$ 100(200 Mb ++$) 177 21.1
1000 Mb T+x,++$,MTU 1000(2000 Mb ++$) 1470(e5* 1660) 175(e5* 198)
1500

216 T\\m8O
m 6. nsxgP':XYHM+$ TCP wYJ (x)
1000 Mb T+x,++$,MTU 1000(2000 Mb ++$) 1680(e5* 1938) 200(e5* 231)
9000
10 Gb T+x,++$,MTU 1500 10000(20000 Mb ++$) 3047(e5* 3179) 363(e5* 379)
10 Gb T+x,++$,MTU 9000 10000(20000 Mb ++$) 3310(e5* 3355) 394(e5* 400)
FDDI,MTU 4352(1!5) 100 97 11.6
ATM 155,MTU 1500 155(310 Mb ++$) 180 21.5
ATM 155,MTU 9180(1!5) 155(310 Mb ++$) 236 28.2
ATM 622,MTU 1500 622(1244 Mb ++$) 476 56.7
ATM 622,MTU 9180(1!5) 622(1244 Mb ++$) 884 105

":
1. e5}Vm>Z?v=rKP`v TCP a0DnQiNBDLB?#d{YJJCZ%v TCP a0:
2. 1000 MB T+x('WT+x)+$YJJCZ PCI-X e[PD PCI-X Jdw#TZ PCI e[P
D PCI Jdwr PCI-X Jdw,+$$w:XDT\uu#
3. }]YJJCZ9C IPV4 D TCP/IP#MTU s!* 4096 r|sDJdwtCK RFC1323 !n#

JdwMh8hC
PtIJdwrh8!nTZ}7YwT0qCnQT\45G\X*D#

(#,AIX h8D1!5Z`}20P<&CGmV<CD#rK,b)h85Z}#ivB;h*|D#+
G,P)+>ZxghCDX(hs=fP`&D~_,r_;)xgh8I\*s|Db)1!5#

JdwYHM+$==hC
AIX D1!hCG Auto_Negotiation,|TYHM+$hCxP-LTqCI\Dn_}]YJ#*KZ
Auto_Negotiation ==B}7KP,9Xk+m;vKc(;;z)dC* Auto_Negotiation ==#

IT+T+xJdwdC*TB==:
v 10_Half_Duplex
v 10_Full_Duplex
v 100_Half_Duplex
v 100_Full_Duplex
v Auto_Negotiation

T,yD==dCJdwkgBDm;K(g{Z;xT+x;;zDcTcdCPKP1(#8T+x;;
zrm;vJdw)G\X*D#g{V$+;vKchCIX(DYHM+$==,rm;vKc2&CV
$hCI,yDYHM+$==#g{V$hC;K,xm;K&Z Auto_Negotiation ==,r}#ivBa
<B94S4P:}DJb#

nCG!I\9C Auto_Negotiation ==,r*|Gs`}T+x;;zD1!hC#+G,P) 10/100 D


T+x;;z;'V+$==BD Auto_Negotiation ==#b)`MD;;zh*z+=vKcV$hCIZ
{DYHM+$==#

":10 'WT+xJdw;'V Auto_Negotiation ==,r*TZ SR M LR bKiJ,|G;T;VYH


$w#

xgT\ 217
Xk9CT?vT+x;;z(;D|n4T>KZhC"|DT+x;;zZDKZYHM+$==hC#
XZb)|n,kND;;z)&LDD5#

T AIX IT9C smitty devices |n|DJdwhC#I9C netstat -v |nr entstat -d enX |n


(dP X *T+xSZE)4T>hCM-L==#TBG entstat -d en3 |ndv>}D;?V:
10/100/1000 Base-TX PCI-X Adapter (14106902) Specific Statistics:
--------------------------------------------------------------------
Link Status: Up
Media Speed Selected: Auto negotiation
Media Speed Running: 1000 Mbps Full Duplex

Jdw MTU hC
,;omxgr_-xg(g{9C VLAN jG)ODyPh8Xk_P`,DiJ+d%*(MTU)s!#
bGITZ_7O"MDns!(rE"|)s!#

;,DxgJdw'V;,D MTU s!,rKk7#TxgODyPh89C`,D MTU s!#}g,;


\_P;v MTU s!* 9000 VZDIC^M!==D'WT+xJdw,x,1CxgODd{Jdw9
C 1500 VZD1! MTU s!#10/100 DT+xJdw;'V^M!==,rK|Gkbv'WT+x!n
;f]#g{zDT+x;;zO'V^M!,r9XkdCT+x;;zT9C^M!#

ZxghCPOg!qJdwD MTU s!G\X*D,byzIT}7dCyPh8M;;z#Kb,m`


AIX w{!n2k!qD MTU s!PX#

MTU s!DT\0l
xgD MTU s!aTT\zz\sD0l#

9COsD MTU s!I9Yw53"MOYDE"|(_POss!)c\o=,yDxgLB?#OsD


E"|ssuuKYw53PXhxPD&m,0aG$w:XJm"Ms?E"#g{$w:X;"MY?
E",G4OsD MTU s!;aP24oz#

!I\9CJdwMxg'VDns MTU s!#}gZl=+d==(ATM)JdwO,1! MTU s!


9180 H9C 1500 VZD MTU s!((#I LAN Bf9C)|P'#TZ'WM 10 'WT+x,g{
xgODyPzw<P'WT+xJdw,xCxgO;P 10/100 Jdw,r9C^M!==+GnCD!
q#}g,Fcz5iRZ~qwdD,S(#IT9C^M!45V#

T'WT+x!q^M!==
zXk!q,$!==*h8!n#

9C ifconfig |nT<|D MTU s!DYw;pwC#k9C SMIT 4T>JdwhC,=hgB:


1. !q Devices
2. !q Communications
3. !q Adapter Type
4. !q Change/Show Characteristics of an Ethernet Adapter
5. + Transmit Jumbo Frames !nS no D* yes

SMIT A;+`FgB:
Change/Show Characteristics of an Ethernet Adapter

Type or select values in entry fields.


Press Enter AFTER making all desired changes.

218 T\\m8O
[Entry Fields]
Ethernet Adapter ent0
Description 10/100/1000 Base-TX PCI-X Adapter (14106902)
Status Available
Location 1H-08
Receive descriptor queue size [1024] +#
Transmit descriptor queue size [512] +#
Software transmit queue size [8192] +#
Transmit jumbo frames yes +
Enable hardware transmit TCP resegmentation yes +
Enable hardware transmit and receive checksum yes +
Media Speed Auto_Negotiation +
Enable ALTERNATE ETHERNET address no +
ALTERNATE ETHERNET address [0x000000000000] +
Apply change to DATABASE only no +

F1=Help F2=Refresh F3=Cancel F4=List


Esc+5=Reset Esc+6=Command Esc+7=Edit Esc+8=Image
Esc+9=Shell Esc+0=Exit Enter=Do

C no |nwZxgT\
xg!nr no |nT>"|DM\m+Vxg!n#

TB no |n!nCZ|Dw{N}:
!n (e
-a r!yPIwN}0d105#
-d [tunable]
+8(DIwN}hCX1!5#
-D +yP!nhCX1!5#
-o tunable=[New Value]
T>5r+8(DIwN}hC*8(DB5
-h [tunable]
#qrT> no |nDC(yw#
T>PX8(DIwN}Doz(g{8(Koz)
-r k -o !n;p9C,T|D*@C#fZ nextboot D~PD`M* Reboot DIwN}#
-p k -o !n;p9C,T+/,IwN}@C#fZ nextboot D~P#
-L [tunable]
k -o !n;p9C,C4Pv;vr+?IwN}DXw(?PT>;v)#

BfG no |n>}:
NAME CUR DEF BOOT MIN MAX UNIT TYPE DEPENDENCIES

-------------------------------------------------------------------------------------------------

General Network Parameters

-------------------------------------------------------------------------------------------------
sockthresh 85 85 85 0 100 %_of_thewall D
-------------------------------------------------------------------------------------------------
fasttimo 200 200 200 50 200 millisecond D
-------------------------------------------------------------------------------------------------
inet_stack_size 16 16 16 1 kbyte R
-------------------------------------------------------------------------------------------------
...lines omitted....

where:
CUR = current value

DEF = default value

BOOT = reboot value

xgT\ 219
MIN = minimal value

MAX = maximum value

UNIT = tunable unit of measure

TYPE = parameter type: D (for Dynamic), S (for Static), R for Reboot),B (for Bosboot), M (for Mount),
I (for Incremental) and C (for Connect)

DEPENDENCIES = list of dependent tunable parameters, one per line

;)xgtTGKP1tT,ITf1^D#d{tTrGXkZ0k netinet ZK)9.0hCD0k1d


tT#

":19C no |n|DN}1,/,N}ZZfP|D,"RK|DvZB;N53}<TsEz'#b1,
yPN}<hC*dXB}<hC#*9/,N}|D@C#f,k9C no |nD -r r -p !n+b
)!nhCZ nextboot D~P#XB}<N}!nh*Z53XB}<sEaz'#

PX no |nD|`E",kND6AIX 5L V5.3 |nN<s+,m 47PD no |n#

X(ZSZDxg!n
X(ZSZDxg!n(ISNO)JmT IP xgSZxP(Fw{xqCnQT\#

*%vSZh(D5*H{v536'ZDh(5*EH,53h(IC no |n#9C no |n use_isno


!nIT{v53tC(1!5)r{CC&\#g{53\m1h*tkT\Jb1,%cD ISNO {C!
nGoO$_D;?V,C4e}1ZDw{ms#

Lr1MT\Vv1<&"b,ISNO 5;aT>ZWSVP(b<G|G;\I getsockopt() 53wCA


!),1=5V TCP ,S*9#Z,SjI.0,WSV9CDX(xgSZB5OG4*D,rKCWSV
43DG no |nPD531!5#Z TCP ,SC=PO"RxgSZQ*s,ISNO 5MaEkWSVP#

TBN}Q-mSx?v\'VDxgSZ,"RvT TCP(T0G UDP),SP':


v rfc1323
v tcp_nodelay
v tcp_sendspace
v tcp_recvspace
v tcp_mssdflt

*X(SZxhC1,b)5a2G*53hCDT&D no !n5#b)N}ICZyPDww TCP/IP S


Z(nF7"FDDI"10/100 T+xM'WT+x),+ SP™ ;;zOD css# IP SZ}b#bVivBI
P;vr%Dd(=(,SP ;;zC'IT9C536'D no |n*;;zhCOJDw{!n,;s9C
ISNO 4hCd{53SZyh*D5#

b)!n1* TCP/IP SZyh(D(Hg en0 r_ tr0),;GxgJdw(ent0 r tok0)


#

TZ MTU 1500 M^M!==(MTU 9000),AIX hC'WT+xSZD1!5#;*(} SMIT tcpip A


;dCSZ,ISNO !nM&ChC*1!5,Tca)<CDT\#

TZ 10/100 T+xMnF7Jdw,53";hC ISNO 1!5,r*|GZ53+V no 1!5B(#K


P<C#+G,g{h*2G+V1!5,rIThC ISNO tT#

TB>}T>K MTU 1500 ==BkT GigE D tcp_sendspace M tcp_recvspace D1! ISNO 5:

220 T\\m8O
# ifconfig en0
en0: flags=5e080863,c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD,PSEG,CHAIN>
inet 10.0.0.1 netmask 0xffffff00 broadcast 192.0.0.255
tcp_sendspace 131072 tcp_recvspace 65536

TZ^M!==,tcp_sendspace"tcp_recvspace M rfc1323 D1! ISNO 5hC*gB:


# ifconfig en0
en0: flags=5e080863,c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD,PSEG,CHAIN>
inet 192.0.0.1 netmask 0xffffff00 broadcast 192.0.0.255
tcp_sendspace 262144 tcp_recvspace 131072 rfc1323 1

IICTB=(hC ISNO !n:


v SMIT
v chdev |n
v ifconfig |n

9C SMIT r chdev |n|DELO ODM }]bPD5,9dI*@C5#ifconfig |n;|DZfP


D5,byZB;NXB}<1|GaV4If"Z ODM PDH05#

(} SMIT ^D ISNO !n
I9C SMIT |D ISNO !n#

Z|nPOdkTB|n:
# smitty tcpip
1. !q Futher Configuration !n#
2. !q Network Interfaces !n#
3. !q Network Interface Selection#
4. !q Change/Show Characteristics of a Network Interface#
5. Cbj!qSZ#}g,en0

;sa4=TBA;:
Change / Show a Standard Ethernet Interface

Type or select values in entry fields.


Press Enter AFTER making all desired changes.

[Entry Fields]
Network Interface Name en0
INTERNET ADDRESS (dotted decimal) [192.0.0.1]
Network MASK (hexadecimal or dotted decimal) [255.255.255.0]
Current STATE up +
Use Address Resolution Protocol (ARP)? yes +
BROADCAST ADDRESS (dotted decimal) []
Interface Specific Network Options
(’NULL’ will unset the option)
rfc1323 []
tcp_mssdflt []
tcp_nodelay []
tcp_recvspace []
tcp_sendspace []

F1=Help F2=Refresh F3=Cancel F4=List


Esc+5=Reset Esc+6=Command Esc+7=Edit Esc+8=Image
Esc+9=Shell Esc+0=Exit Enter=Do

k"b ISNO 531!5";T>,49|GhCZZ?2GgK#TZ>>},k2G tcp_sendspace D


1!5"+|5M* 65536#

xgT\ 221
9C smitty tcpip 9SZXBt/,"!q Minimum Configuration and Startup#;s!q en0,"IC
ZWHhCSZ1hCD1!5#

g{9C ifconfig |nT> ISNO !n,rIT4= tcp_sendspace tTD5VZhC* 65536#BfG


;v}S:
# ifconfig en0
en0: flags=5e080863,c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD,PSEG,CHAIN>
inet 192.0.0.1 netmask 0xffffff00 broadcast 192.0.0.255
tcp_sendspace 65536 tcp_recvspace 65536

lsattr |ndv9T>vQ-2GKCtTD531!5:
# lsattr -E -l en0
alias4 IPv4 Alias including Subnet Mask True
alias6 IPv6 Alias including Prefix Length True
arp on Address Resolution Protocol (ARP) True
authority Authorized Users True
broadcast Broadcast Address True
mtu 1500 Maximum IP Packet Size for This Device True
netaddr 192.0.0.1 Internet Address True
netaddr6 IPv6 Internet Address True
netmask 255.255.255.0 Subnet Mask True
prefixlen Prefix Length for IPv6 Internet Address True
remmtu 576 Maximum IP Packet Size for REMOTE Networks True
rfc1323 Enable/Disable TCP RFC 1323 Window Scaling True
security none Security Level True
state up Current Interface Status True
tcp_mssdflt Set TCP Maximum Segment Size True
tcp_nodelay Enable/Disable TCP_NODELAY Option True
tcp_recvspace Set Socket Buffer Space for Receiving True
tcp_sendspace 65536 Set Socket Buffer Space for Sending True

C chdev M ifconfig |n^D ISNO !n


IT9CTB|nHi$53MSZ'V,;shCMi$B5:
v 7#9CBfD|ntCK use_isno !n:
# no -a | grep isno
use_isno = 1
v (}9C lsattr -El |n,7#SZ'V 5 vBD ISNO:
# lsattr -E -l en0 -H
attribute value description user_settable
:
rfc1323 Enable/Disable TCP RFC 1323 Window Scaling True
tcp_mssdflt Set TCP Maximum Segment Size True
tcp_nodelay Enable/Disable TCP_NODELAY Option True
tcp_recvspace Set Socket Buffer Space for Receiving True
tcp_sendspace Set Socket Buffer Space for Sending True
v 9C ifconfig r chdev |n4h(X(ZSZD5#ifconfig |nDh(5GY1D(nCGCZbT)
#
|n chdev |D ODM,953t/s(F55X#

}g,*+ tcp_recvspace M tcp_sendspace hC* 64 KB "tC tcp_nodelay,k9CBP=(.


;:
# ifconfig en0 tcp_recvspace 65536 tcp_sendspace 65536 tcp_nodelay 1

r
# chdev -l en0 -a tcp_recvspace=65536 -a tcp_sendspace=65536 -a tcp_nodelay=1
v 9C ifconfig r lsattr |n4i$h(5:

222 T\\m8O
# ifconfig en0
en0: flags=5e080863,c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD,PSEG,CHAIN>
inet 9.19.161.100 netmask 0xffffff00 broadcast 9.19.161.255
tcp_sendspace 65536 tcp_recvspace 65536 tcp_nodelay 1

r
# lsattr -El en0
rfc1323 Enable/Disable TCP RFC 1323 Window Scaling True
tcp_mssdflt Set TCP Maximum Segment Size True
tcp_nodelay 1 Enable/Disable TCP_NODELAY Option True
tcp_recvspace 65536 Set Socket Buffer Space for Receiving True
tcp_sendspace 65536 Set Socket Buffer Space for Sending True

TCP $w:Xw{
P`vI\a0l TCP T\D AIX Iw5#

m`&CLr9CI?D+dXF-i(TCP)(|( ftp M rcp |n)#

":no -o |n/f:g{|D0l TCP/IP ,SDw{!n,r|D;TxP|D.s("D,SP'#m


b,1G)I\0l inetd X$Lr}Zl}B,SDxLD!n|D1,no -o |nXBt/ inetd X
$xL#

TCP w$w:Xw{
w$w:X+s?D}]S;vKcF/=m;vKc#w$w:XD>}GD~+M"8]rV4$w:X
rz?}]+M#b)$w:XPw*X"Db?j<MGxm,+G2IT<GK=KH}1d#

0lw=&CLrD TCP T\Dw*IwN}gB:


v tcp_recvspace
v tcp_sendspace
v rfc1323
v MTU path discovery
v tcp_nodelayack
v sb_max
v Jdw!n,}g#iM6XM TCP s?"M(TCP Large Send)

BmT>K*qCnQT\x(iDIw5s!,TJdw`MM MTU s!*y!:

h8 YH MTU s! tcp_sendspace tcp_recvspace sb_max1 rfc1323


nF7 4 r 16 MB 1492 16384 16384 32768 0
Ethernet 10 Mbit 1500 16384 16384 32768 0
Ethernet 100 Mbit 1500 16384 16384 65536 0
Ethernet Gigabit 1500 131072 65536 131072 0
Ethernet Gigabit 9000 131072 65535 262144 0
2
Ethernet Gigabit 9000 262144 131072 524288 1
Ethernet 10 Gigabit 1500 131072 65536 131072 0
Ethernet 10 Gigabit 9000 262144 131072 262144 1
ATM 155 Mbit 1500 16384 16384 131072 0
3
ATM 155 Mbit 9180 65535 65535 131072 0
4
ATM 155 Mbit 65527 655360 655360 1310720 1

xgT\ 223
FDDI 100 Mbit 4352 45056 45056 90012 0
bK(@ 2 Gigabit 65280 655360 655360 1310720 1

(iT sb_max IwN}9C1!5 1048576#mPT>D5GIS\D sb_max IwN}n!5#

Z'WT+xD^M!O9Cb)!n,"tC rfc1323 1,T\aTC;)#

TCP "MMSUUdD3)iO+<BLB?+M(1 MB r|M) #*K\bbvJb,I+ tcp_sendspace


IwN}hC*AY* 3 6 MTU s!,r_sZHZSU=D tcp_recvspace 5#

TZ|D0Zs!,TCP ;P 16 ;D5IC#bIT*;*0ZDns5* 65536 VZ#TZ MTU s!


Os(}g 32 KB r 64 KB)DJdw45,TCP wT\I\a\n#}g,Z;v_P 64 KB MTU s
!R tcp_recvspace hC* 64 KB Dh8O,TCP ;\"M;vE"|,;sd0ZMaXU#|XkH}
SSUK5XD ACK EE,;sE\YN"M#KJbI(}BP3v=(bv:
v tC rfc1323,byIv? TCP,"9d\K~ 16 ;^F,Sx\;9CsZ 64 KB D0Zs!#;s
I+ tcp_recvspace IwN}hC*;vOs5,}g 10 6D MTU s!,TJm TCP "M}],Sx
a)E<DT\#
v uYJdwD MTU s!#}g,9C ifconfig at0 mtu 16384 |n+ ATM MTU s!hC* 16 KB#
ba<B TCP FcO!D MSS 5#g{9C 16 KB D MTU s!,r TCP TZ 64 KB D0Zs!
I"M 4 vE"|#

BfGw{ TCP w$w:XD;c<r:


v + TCP "MMSUUdhC*nY 10 6D MTU s!#
v g{ MTU s!_Z 8 KB,r&CtC rfc1323 TJm|sD TCP SUUd5#
v TZ_YJdw45,OsD TCP "MMSUUd5PzZa_T\#
v TZ_YJdw45,tcp_sendspace Iw5&CG tcp_recvspace 5D 2 6#

ftp M rcp |nGISw{ tcp_sendspace M tcp_recvspace IwN}qfD TCP &CLr>}#

tcp_recvspace IwN}:

tcp_recvspace IwN}8(ZSUWSVSPOSU53ITZZKP:e`YVZD}]#

TCP -i2IT9C tcp_recvspace IwN}hC TCP 0ZDs!,TCP 9C|4^F+`YVZD}]"


MASUw,Sx7#SUwPc;DUd:eC}]#tcp_recvspace IwN}G TCP T\D;vX|N},
r* TCP Xk\;+`vE"|+MAxg47#xg\@GzD#g{ TCP ;\#V\@oPc;DE"
|,G4T\Mab\p&#

zIT9CTB=(hC tcp_recvspace IwN}:


v 4TLrD setsockopt() 53wC
v no -o tcp_recvspace=[value] |n
v tcp_recvspace ISNO N}

tcp_recvspace IwN}D#{-rG+|hC*;vAYH MTU s!! 10 6D5#zIT(}+xmSY


K}D5}T 8 7( tcp_recvspace IwN}D5,ITCTB+=Fc:
xmSYK}=]?(VZ)= xm(VZ/k) × 4X1d(k)

224 T\\m8O
+]?D5}T 8 Th*#Vxg\@dzD TCP 0Zs!a)K;vG#CD@F#4XSY=$,xg
YHM=l,xmSYK}5M=s,rK TCP 0ZM=s#b=fD>}G_P 0.2 AkD4X1dD 100
M xg#zITCTO+=FcxmSYK}5:
xmSYz7 = 100000000 x 0.0002 = 20000
20000/8 = 2500

rK,ZK>}P,TCP 0Zs!AYh* 2500 VZ#Z;v%v LAN OD 100 WM*T+xP,zI


\k*+ tcp_recvspace M tcp_sendspace IwN}5AYhC*FcvDxmSYK}5D 2 r 3 64qC
nQT\#

tcp_sendspace IwN}:

Z+&CLrbxZ"MwC.0,tcp_sendspace IwN}8("M&CLrITZCZKP:e`Y}]#

Z(} TCP -i+|"MASUw.0,TCP WSV"M:exGCZ9C mbufs//:4ZZKP:eC


&CLr}]#"M:exD1!s!G(} tcp_sendspace IwN}58(D,r_LrI9C setsockopt()
S}L+d2G#

z&CAY+ tcp_sendspace IwN}5hCIk tcp_recvspace 5;ys,TZ_YJdw,tcp_sendspace 5


&CAYG tcp_recvspace 5D=6#

g{&CLrZWSVP8(K O_NDELAY r O_NONBLOCK(ba<BGh{ I/O),G4g{"z:e


xnzK,C&CLr+5X(xP;v EWOULDBLOCK/EAGAIN ms)x"G;CZ]_==#XkT&
CLrxP`k,4&mbvms((iDbv=8G/_;N1d;sXT"M) #

rfc1323 IwN}:

rfc1323 IwN}tC TCP 0ZuE!n#

TCP 0ZuE!nG TCP -LD!n,yTXkZ TCP ,SD=vKc<tC|49.z'#Z1!iv


B,C TCP 0Zs!;^FZ 65536 VZ(64 K),+Gg{+ rfc1323 5hC* 1,MIT+|hCC
|_#g{+ tcp_recvspace 5hCCsZ 65536,MZC,SD?;_+ rfc1323 5hC* 1#g{;PC
,SD=_hC rfc1323 5,Z tcp_recvspace IwN}DP'5M+G 65536#K!n+ 12 vTOVZm
S= TCP -i7?(SCC'P':X}]P[}),yTZ! MTU JdwO,K!nI\aT"p&T
\#

g{z}Z(}_Ps MTU(}g 32 K r 64 K)DJdw"M}],TCP w==(T\I\;GnQ,


}GtCKK!n,r*%vE"|+a{D+?D TCP 0Zs!#rK,TCP ^(EP`vE"|,r*
|+;C;H} TCP &pM0ZS?vE"|DSUwP|B#(}9C no -o rfc1323=1 |ntC rfc1323
!n,TCP D0Zs!IhC*_A 4 GB#Z+ rfc1323 !nh(* 1 s,zITvS tcp_recvspace N
}5=;v_v\`D5,Hg MTU s!D.6#

g{"MMSU53;'V rfc1323 !n,G4uY MTU Ds!MGa_s MTU JdwDw==(T\D


;V=(#}g,;9Cs!* 66536 D MTU(ba+ TCP v^Z;v4jIDE"|),x!qs!*
16384 D MTU MaJm TCP P 4 v4jIDE"|(tcp_recvspace 5G 65536 VZ),byMaa_T
\#;x,ZCxgODyPZch*9C`,s!D MTU#

TCP 76 MTU "V:

TCP 76 MTU "V-i!nZ AIX PG1!tCD#C!nJm-i;7(10;Z=vwz.d76P


DNNxgODn! MTU s!,"R(} tcp_pmtu_discover=1 xg!nxPXF#

xgT\ 225
S AIX 5.3 *<,TCP 76 MTU "VD5V9C,S>mD TCP E"|,x;G ICMP ECHO {"#
TCP/IP ZK)9#t;v{* PMTU Dm,Tf"`XD PMTU "VE"#1k?v?j(" TCP ,S
1,Z PMTU mP+4(C?jDu?#PMTU 5MGwvDSZ MTU 5#

TCP E"|Z"M1 IP (7PxP Don’t Fragment r_ DF ;hC#g{ TCP E"|=o;vxg7I


w,RC7IwD MTU 5!Z TCP E"|Ds!,G47Iw+"MX;u ICMP ms{",8v^(*
"{",r*{"^(VN#g{"Mms{"D7Iw{O RFC 1191,rxgD MTU 5M|,Z ICMP
ms{"P#qr,TZ*XB"MD TCP E"|,XkS AIX TCP/IP ZK)9PDQ* MTU 5mPV
d;vO!D MTU s!5#;s PMTU mPD?j PMTU 5+|B*BDO!D MTU s!,;sXB
"M TCP E"|#=C?jDNNsx TCP ,S<+9C|BD PMTU 5#

zIT9C pmtu |n4i4r_>} PMTU u?#TBG pmtu |nD>}:


# pmtu display

dst gw If pmtu refcnt redisc_t exp

-------------------------------------------------------------------------

10.10.1.3 10.10.1.5 en1 1500 2 9 0

10.10.2.5 10.10.2.33 en0 1500 1 0 0

49CD PMTU u?(45* 0 D refcnt u?)+;>},T@9 PMTU mdC+s#49CDu?+


Z refcnt 5HZ 0 .sD pmtu_expire VSs;>}#pmtu_expire xg!nD1!5* 10 VS#*@9
PMTU u?=Z,zIT+ pmtu_expire 5hC* 0#

TZC TCP 76 MTU "VD5V,7IK!G;X*D,bb6E7Im|!R|cZ\m#

tcp_nodelayack IwN}:

tcp_nodelayack !na> TCP "M"4l&,x"G(#D 20 ms SY#"M"4&pI\amS;)*z,


+Z;)ivBaTxXa_T\#

1 TCP SY 200 ms "M&p1,Q-ITi4=T\Jb,r*"M=}ZH}4TSU=Dl&"RS


U=}ZH}"M=D|`}]#bI\a<Bw==(LB?;c#g{3IKPJb,M&CtC
tcp_nodelayack !n4i4|Gqa_Kw==(DT\#g{;\,M{C tcp_nodelayack !n#

sb_max IwN}:

sb_max IwN}ZESAvpWSVDWSV:exD}?OhC;vO^,byMITXF;ESA"M=
DWSVrSU=DWSVD:ex{D`Y:fUd#

53yZ:exs!<GK9CDWSV:ex,x;GyZ:exDZ]#

g{;vh8}/Lr+ 100 VZD}]EA 2048 VZ:ex,53Ma<G9CWSV:exUdD 2048


VZ#Th8}/45,+SUDwv:exEk;v:exG\#{D,s;v:exXkc;s,\;S
UJdwnsDE"|#b##alI:eUdDKQ,+g{+}]4F=!;cD:exPI\ah*|
`D CPU -7#

":Z AIX P,sb_max IwN}D1!5G 1048576(G#sK)


#z;&C|DK5,}GP#fZK mbuf
ZfDh*,}gZ 32 ;ZKP#g{zk*|D sb_max N},PXKN}(i9CD5,kNDO
fDmq#

226 T\\m8O
TCP ksMl&$w:Xw{
TCP ksMl&$w:XGf0+rE";;D$w:X#

ksMl&$w:XD>}G6L}LwC(RPC)`MD&CLrrM'z/~qw&CLr,}g:Web /
@wT Web ~qwDks"NFS D~53(9C TCP w*+d-i)r}]bx\m-i#K`ksyy
GY?{"T0s?l&,+2I\Gs?ksMY?l&#

b)$w:XPw*X"Db?j<MGxgD4XH}1d#b)ksrl&PPm`<9CY?{",r
Kxgxm;Gw*<GDJb#

2~TH}1dPOsD0l#}g,xg`M"NNxg;;zr7IwD`MMT\"?vxgZcP9
CD&mwDYHT0JdwM\_H}1d<a0l4X1d#

w{w!nTa)nLH}1d(nlDl&)DYw(#a<B53"MO`E"|"q!O`POHHT
cn!/H}1dkl&1d1D CPU *zO_#b)GdMDT\[T#

ksMl&&CLrDw*IwN}gB:
v tcp_nodelay r tcp_nagle_limit
v tcp_nodelayack
v JdwPOO"hC

":;)ks/l&$w:X|,s?%r}]#K`$w:XI\h*y]$w:XD;,x+wMH}1
daOp4w{#

tcp_nodelay r tcp_nagle_limit !n
Z AIX P,1!ivB{C TCP_NODELAY WSV!n,bI\alIks/l&$w:X$1dSY,
Sx;"M;)VZ;sH}l&#TCP 5VSYl&,r*|#{Zl&E"|P\|`X5X TCP &p#
SY(#* 200 ms#

s?V TCP $_5P nagle c(,Zbvc(P TCP ,S;\P;v9;P;&pD4jID!,N#b


lI TCP SYYN"ME"|,1=|SU=&pr|\;&s|`}]""Mj{s!D,N#

9Cks/l&$w:XD&CLr&C9C setsockopt() wC4tC TCP_NODELAY !n#}g,telnet


M rlogin 5CLr"xgD~53(NFS)M Web ~qwQ-9C TCP_NODELAY !n4{C nagle#;
x,;)&CLr";byv,r*byvI\lIT\5M(!vZxg MTU s!M"M(4)=CWS
VDs!) #

1&m;PtC TCP_NODELAY D&CLr1,zIT9CTBwZ!n{C nagle:


v tcp_nagle_limit
v tcp_nodelay ISNO !n
v tcp_nodelayack
v fasttimo
v ZJdwOPOaO

tcp_nagle_limit !n:

tcp_nagle_limit xg!nG;v+VDxg!n"Z1!ivB;hC* 65536#

xgT\ 227
*K,NHZrsZK5,TCP {C nagle cu,yTzITwZtC nagle DP5#}g,*j+X{C
nagle,M+ tcp_nagle_limit 5hC* 1#*Jm TCP &s"ME"M"ME"|(AY 256 VZ),M+
tcp_nagle_limit 5hC* 256#

tcp_nodelay ISNO !n:

ZSZcP,P tcp_nodelay ISNO !n4tC TCP_NODELAY#

+ tcp_nodelay 5hC* 1 alI<B TCP ;SY(a{C nagle)M"M?v&CLr"Mr4DwTD


E"|#

tcp_nodelayack !n:

zIT9C tcp_nodelayack xg!n{CSYD&p,(#* 200 ms (1w#

;SYl&\;uYH}1dMJm"M=(I\tC nagle)SUCl&,rK\l"MB;?V,O#

fasttimo !n:

IT9C fasttimo xg!n4+ 200 ms (1w(1!5)uYA 100 r 50 ms#

r* TCP +K(1wCZd{&\(*yPr*D TCP ,S4P),uYK(1wax53mS|`D*z,


r*;C;|51X(hyP TCP ,S#TO!nGnQ!q,"RZwZ53Pz&C;9C fasttimo !
nw*nsDVN#

POO":

*\b}`POM;wz53,53+E"|U/Z;p,"*`vE"|zI;vPO#bF*POO"#

TZSUYw,PO(#(*wz CPU E"|Q-=oh8DdkSP#g{JdwO;P3VN=DPO


:M_-,G4bI\<BT?;vxkDE"|<zz;vPO#;x,fEE"|xkYHvS,h8}
/LraxT;vE"|D&m.s,aZKv}/Lr"e}PO.0liSUSPOGqP|`DE"
|#;s}/LrMa"VP|`DE"|*&m,byfEE"|DYHvS,}/LrnUZ?vPO&
m`vE"|,bb6E53fE:XDvSxdC|S_'#

+GP)Jdwa)|`D&\,b)&\uA\;ZzISUPO1a)|`DXF#b(#F*POaO
r_PO:M_-,|JmSU8vE"|"*8vE"|zz;vPO#1Z;vE"|=o1,+t/;
vF1w,;sPO+SY n "kr_1= m vE"|=o#y]JdwD;,,T0h8}/LrJmC
'XFD)&\,b)=(Py;,#

Za:XDivB,POaO+vSE"|=o1dDH}1d#E"|;ZwzZfP,+Gwz*};N
1dE*@PbvE"|#+G,ZE"|:XO_DivB,IZzIKOYDPO,"RwzZ?vPO
&m`vE"|,yT53(}9COYD CPU \Zx|_'X4P#

TZ|(PO:M&\D AIX Jdw,z&C+5hCJPD6p,TuYPO*zxV;avSs?DH}


1d#TZI\*sH}1dn!D&CLr,z&C{Cr_|DJm?kO`POD!n,TuYH}1
d#

'WT+xJdwa)PO:M&\#FC 2969 M FC 2975 GigE PCI Jdwa)SY5T0:exF}=(#


JdwZZ;vE"|=o1t/;vF1w,;s1F1w=Z1r_19CKwzPD n v:ex1,"
zPO#

228 T\\m8O
FC 5700"FC 5701"FC 5706 M FC 5707 GigE PCI-X Jdw9CPOwY=(,|T8(D5JzIPO,
Sx5Vy]1d[/E"|#1!POYJ*?k 10000 vPO#*Ko=OMDPO*z,I+POYJ
hC*n!5:?k 2000 vPO#TZ*sH}1dOMxl&1dOlD$w:X,I+POYJhC*
ns5:20000 vPO#+POYHhC* 0 +j+{CPOwY#

10 'WT+x PCI-X Jdw(FC 5718 M 5719)P;vSY%;* 0.82 "kDPOO"!n(rx_int_delay)


#
5JSYD$HI 0.82 KT rx_int_delay PhCD547(#C!n1!ivB{C(rx_int_delay=0),r
*bTmw,Zb)JdwDO_dkYJB,O"PO^zZT\#

m 7. 10 'WT+x PCI-X JdwXT


Jdw`M Xwzk ODM tT 1!5 6'
10 'WT+x PCI-X(LR r SR) 5718,5719 rx_int_delay 0 0-512

UDP wZ
C'}](-i(UDP)G;VIxgD~53(NFS)"{F~qw(8()"N*D~+d-i
(TFTP)Md{(C-i9CD}](-i#

IZ UDP G;V}](-i,Z"MYwPXk+j{D{"(}]()4F=ZKP,bG;vy>Yw#
}](2aZ recv r recvfrom 53wCPw*;uj{D{"SU#XkhC udp_sendspace M
udp_recvspace N}yZ?vWSV4&m:e*s#

IT"MDns UDP }](G 64 KB u% UDP 7s!(8 VZ)M IP 7s!(IPv4 7* 20 VZ,r


_ IPv6 7* 40 VZ)
#

TBIwN}a0l UDP T\:


v udp_sendspace
v udp_recvspace
v UDP E"|4S
v Jdw!n,g,POaO

udp_sendspace IwN}
+ udp_sendspace IwN}5hC*HZrsZ+;"MDns UDP }](D5#

*r%p{,+KN}hC* 65536,bQc;&mI\vVDns UDP E"|#+bv5hCC|s";


P24EF#

udp_recvspace IwN}
udp_recvspace IwN}XFEPZ?v UDP WSVODkV}]Ds?Ud#;)WSVo= udp_recvspace
^F,MaOzkV|#

Z netstat -p udp |ndvPD socket buffer overflows PBj8T>K*z|D3FE"#PX|`E


",kND6AIX 5L V5.3 |nN<s+,m 47PD netstat |n#

z&C+ udp_recvspace IwN}D5hCC\_,bGIZ`v UDP }](I\=o"RZWSVOH}


C&CLr4A!|GDivlID#m` UDP &CLr2I9CXbDWSVSUE"|#9CKWSV
SkC~qw&CLra0DyPM'zPSUE"|#rK,XkPc;sDSUUd4&m}](Dve
.(I\S`vM'z=o"R;EPZWSVOH};A!)#g{K5+M,MaOzkVE"|"R"
M=XkXB"MC|#bI\lIT\5M#

xgT\ 229
r*(ES53<GK9CD:ex,+;P<G:exDZ],yTZh( udp_recvspace 1Xk<G#}
g,+a+;v 8 KB }](VnI 6 vE"|(+aC 6 vSU:ex)
#TT+x45I\aG 2048 V
ZD:ex#yT,K 8 KB }]({DDWSV:exD\}gB:
6*2048=12,288 VZ

rx,zIT4v udp_recvspace Xky]SkD:exD'Jw{*O_D5#bI\Dd;v}](s!,


Ih8}/4jI#"M 64 VZ}](+a*?v 64 VZ}]({D 2 KB :ex#

;s,zXk5wZbvWSVOESD}](D}?#Hg,NFS ~qwZ;vZy\*DWSVOSyP
M'KSU= UDP E"|#g{KWSVSPnH\;G 30 vE"|,G4g{ NFS }9C 8 KB }]
(,zMIT+ 30 * 12,288 = 368,640 CZ udp_recvspace#NFS V3 Jmn` 32 KB }](#

udp_recvspace DFvu<5* udp_sendspace 5D 10 6,r* UDP I\;\Zm;vE"|=o.0+b


vE"|+Mx&CLr#xR,;)ZcIT,1=;vZc#*a);)V6Ud,bvs!M*hCC
Z>}sfDE"|.0\;Jm 10 vE"|xPV6#TZ9C UDP DsD"P&CLr,bv5I\
XkvS#

":sb_max D5,8(K?vWSV:exDnsWSV:exs!,&CAYG UDP M TCP "M / S


U:exns5D=6#

UDP E"|4S
1+dD UDP }](sZJdwD MTU s!1,IP -ic+}](V* MTU s!D,N#T+xSZ
|, UPD E"|4S&\#AIX P,C&\G1!tCD#

UDP E"|4S9C IP I9(j{DVN4,"+C4rB+Mx,;vwCPDT+xh8}/Lr#b


y(} ARP MSZc;sY=}/Lr4uYwCD=(a_KT\#by2uYK SMP 73PD lock M
unlock wC#|9Tzk-7D_Y:f`FTPoz#b)|D5MK"M=D CPU 9CJ#

I(} ifconfig |ni4 UDP E"|4S!n#TB>}T>K en0 SZD ifconfig |ndv,dP CHAIN
j>m>E"|4SGtCD:
# ifconfig en0
en0: flags=5e080863,80<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD,PSEG,CHAIN>
inet 192.1.6.1 netmask 0xffffff00 broadcast 192.1.6.255
tcp_sendspace 65536 tcp_recvspace 65536 tcp_nodelay 1

I9CTB|n{CE"|4S:
# ifconfig en0 -pktchain

# ifconfig en0
en0: flags=5e080863,80<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD,PSEG>
inet 192.1.6.1 netmask 0xffffff00 broadcast 192.1.6.255
tcp_sendspace 65536 tcp_recvspace 65536 tcp_nodelay 1

I9CTB|nXBtCE"|4S:
# ifconfig en0 pktchain

# ifconfig en0
en0: flags=5e080863,80<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD,PSEG,CHAIN>
inet 192.1.6.1 netmask 0xffffff00 broadcast 192.1.6.255
tcp_sendspace 65536 tcp_recvspace 65536 tcp_nodelay 1

Jdw6X!n
;)Jdwa)+$wS AIX 536XAJdwD!n(I;tCr{C)
#

230 T\\m8O
m 8. Jdw0dIC!n,T0531!hC
Jdw`M Xwzk TCP #iM6X 1!hC TCP s?" 1!hC
M
GigE"PCI"SX & TX 2969,2975 'V XU 'V XU
GigE"PCI-X"SX M TX 5700,5701 'V r* 'V r*
GigE +KZ PCI-X"TX M SX 5706,5707 'V r* 'V r*
10 'WT+x PCI-X LR 0 SR 5718,5719 'V r* 'V r*
10/100 Ethernet 4962 'V r* 'V XU
ATM 155"UTP & MMF 4953,4957 G(;+M) r* ;'V ;JC
ATM 622"MMF 2946 'V r* ;'V ;JC

TCP #iM6X
TCP #iM6X!n9CCxgJdw\;Fc TCP +MMSUD#iM,b9C AIX wz CPU bZF
cC#iM,Z! CPU D9C#

Z!fE"|Ds!D;,xPy;,#9CK!n,!E"|P;cr;PZ!,xsE"|POsDZ
!#Z PCI-X GigE JdwP,MTU 1500 DZ!(#GZ CPU 9CJOs<uY 5%,TZ MTU 9000(,
$!)Z!GZ CPU 9CJOs<uY 15%#

g{tCK TCP #iM6X!n,TCP w==(LB?(MTU 1500)Z&mwYHlZ 400 MHz Dzw


Oa\},r*Cwz53\;H'WT+x PCI Jdw(FC2969 M FC 2975)|lXKP#iM#rK,
Z1!ivBZb)JdwODXUKK!n#1b)Jdw9C,$!1,uAZ|;C;FcC#iM
1,|IT_7YHKP#

tC TCP #iM6X!n,PCI-X 'WT+xJdwIT_7YHKP"R|uYwz CPU &m,yTZ


1!ivBtCK|#

TCP s?"M6X
TCP s?"M6X!nJm AIX TCP c9( TCP {"(n$ 64 KB)"R(} IP MT+xh8}/L
rT;v+wC"MAQ;4"M|#

;s,Jdw+C{"YVnI`v TCP !T(}<_+M#Z_O+MD TCP E"|Gs!* 1500 D


MTU D 1500 VZ!,rn`s!* 9000 D MTU(,$!)D 9000 VZ!#

9C TCP s?+M6X!n,zITi4=CJdw4Ps?ZK&m#}g,*"M 64 KB }],|+ 44


NwC(9C 1500 VZE"|)MAQ;#9C TCP s?"M!n,zITC(}+wC+AQ;44P
|,b+uYwzxLM<BZwz CPU O CPU {CJ5M#Z!f TCP s?"MDs!D;,xPy
;,#}g,9C PCI-X GigE Jdw(MTU s!* 1500)1,zITi4=wz CPU uY 60% = 75%#
TZ,$!,Z!OY,r*53Q-"MO`D!#}g,9C,$!1,zITi4=wz CPU uY
40%#

Z;z'WT+x PCI Jdw(FC2969 M FC 2975)'V TCP s?"M6X!n#g{zw*XD5M CPU


9CJ,M9CK!n#;x,TZ-<LB?,z;&CtCK!n,r*tCK!n,_OD}]J\
}#

xP PCI-X GigE Jdw,9C TCP s?"M6X!na<BnQ-<LB?MnMwz CPU 9CJ,y


TZ1!ivBtCK|#

xgT\ 231
PO\b
Zwz CPU \Z=f,PO&mz[:s#

*&mPO,53Xk#fd.0Dzw4,,7(PO4TDo,4PwVZq&mNq,;swCJ1D
h8}/LrPO&mLr#h8}/Lr(#a4P_*zDYw,HgA!JdwODPO4,Dfw
(kzwYH`H,b\}),q! SMP xT0q!MME:exHH#

s`} AIX h8}/Lr;9C+dj{DPO,b\bK+POCZ+dE"|#+dj{D&m(#ZB


;v+dYwxP,byM\bKVk+dj{DPO#IT9C netstat -v"entstat"atmstat r fddistat
.`D|n4i4"MMSUDE"|F}T0"MMSUDPOF}D4,#Sb)3FE",zITwT
X4=\bK+dPO#P)Z}=JdwM}/LrI\;q-C<(#

POO"
*\b}`POM;wz53,53+E"|U/Z;p,"*`vE"|zI;vPO#bF*POO"#

TZSUYw,PO(#(*wz CPU E"|Q-=oh8DdkSP#g{JdwO;P3VN=DPO


:M_-,G4bI\<BT?;vxkDE"|<zz;vPO#;x,fEE"|xkYHvS,h8}
/LraxT;vE"|D&m.s,aZKv}/Lr"e}PO.0liSUSPOGqP|`DE"
|#;s}/LrMa"VP|`DE"|*&m,byfEE"|DYHvS,}/LrnUZ?vPO&
m`vE"|,bb6E53fE:XDvSxdC|S_'#

+GP)Jdwa)|`D&\,b)&\uA\;ZzISUPO1a)|`DXF#b(#F*POaO
r_PO:M_-,|JmSU8vE"|"*8vE"|zz;vPO#1Z;vE"|=o1,+t/;
vF1w,;sPO+SY n "kr_1= m vE"|=o#y]JdwD;,,T0h8}/LrJmC
'XFD)&\,b)=(Py;,#

Za:XDivB,POaO+vSE"|=o1dDH}1d#E"|;ZwzZfP,+Gwz*};N
1dE*@PbvE"|#+G,ZE"|:XO_DivB,IZzIKOYDPO,"RwzZ?vPO
&m`vE"|,yT53(}9COYD CPU \Zx|_'X4P#

TZ|(PO:M&\D AIX Jdw,z&C+5hCJPD6p,TuYPO*zxV;avSs?DH}


1d#TZI\*sH}1dn!D&CLr,z&C{Cr_|DJm?kO`POD!n,TuYH}1
d#

'WT+xJdwa)PO:M&\#FC 2969 M FC 2975 GigE PCI Jdwa)SY5T0:exF}=(#


JdwZZ;vE"|=o1t/;vF1w,;s1F1w=Z1r_19CKwzPD n v:ex1,"
zPO#

FC 5700"FC 5701"FC 5706 M FC 5707 GigE PCI-X Jdw9CPOwY=(,|T8(D5JzIPO,


Sx5Vy]1d[/E"|#1!POYJ*?k 10000 vPO#*Ko=OMDPO*z,I+POYJ
hC*n!5:?k 2000 vPO#TZ*sH}1dOMxl&1dOlD$w:X,I+POYJhC*
ns5:20000 vPO#+POYHhC* 0 +j+{CPOwY#

10 'WT+x PCI-X Jdw(FC 5718 M 5719)P;vSY%;* 0.82 "kDPOO"!n(rx_int_delay)


#
5JSYD$HI 0.82 KT rx_int_delay PhCD547(#C!n1!ivB{C(rx_int_delay=0),r
*bTmw,Zb)JdwDO_dkYJB,O"PO^zZT\#

m 9. 10 'WT+x PCI-X JdwXT


Jdw`M Xwzk ODM tT 1!5 6'
10 'WT+x PCI-X(LR r SR) 5718,5719 rx_int_delay 0 0-512

232 T\\m8O
Z LAN JdwOtC dog _L9C
(}tCzY_L&\,}/+xkDE"|ES=_LP,RC_L&mT IP"TCP MWSVkDwC#

1!4vB,}/Lr1SwC IP c,+}ZPO6pOKPD-if";Y==WSV6pO4#bMu!
K8n76D$H,+vSKPORpD1d#Z SMP 53O,%vD CPU I\aI*SlDJdwOS
UE"|1D?1Jb#bv_LITZI\UPDd{ CPU OKP#Z;)ivB,1xkDE"|YH
\_1,tCzY_LITa_53]?,r*|Jm`v CPU "P&mxkDE"|#

zY_L&\D1cZZZa:XDivB,|avSH}1d,9avSwz CPU D9C,bGr*E"


|XkES=_LP,x_LrXk;VI#

":bVXwZ%&mwO;'V,r*|;avS76$H,5MT\#

bG LAN JdwdkK(SU)DXc#I9C ifconfig |n(ifconfig interface thread r ifconfig interface


hostname up thread)ZSZ6xPdC#

*{CC&\,k9C ifconfig interface -thread |n,gB}y>:


# ifconfig en0 thread

# ifconfig en0
en0: flags=5e080863,e0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD,PSEG,THREAD,CHAIN>
inet 192.1.0.1 netmask 0xffffff00 broadcast 192.1.0.255

# ifconfig en0 -thread

# ifconfig en0
en0: flags=5e080863,c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD,PSEG,THREAD,CHAIN>
inet 192.1.0.1 netmask 0xffffff00 broadcast 192.1.0.255

netstat -s |n9T>;)F}w,TT>I_L&mDE"|D}?,T0_LSPGq*zKNN+kD
E"|#BfG netstat -s |nD>}:
# netstat -s| grep hread

352 packets processed by threads


0 packets dropped by threads

BfG<G9CzY_L1D<r:
v h*20HJdw9*`D CPU#dMivB,Fv9CAYHJdw`=6D CPU#
v 53D CPU =l\f=Y#g{;vwzD CPU YJO}I\aozns#
v 1dkE"|DYJ\_D1r,bvXcnPI\a_T\#Z MTU 1500 OT\Da_H MTU
9000(jumbo frames)9*C,r*E"|DYJZ! MTU DxgPa|_#

1zY_L"VZ|GDSPPP|`DNq;C5X/_4,(H}dk)1,|GKPCnC#bM
Z!K}/=Q_LM53wC_LD*z#
v zY_L2ITANPO,byM5MK8( CPU y(QD1d#bIT|lXME CPU,Lx;cDC
'6pDNq#
v g{E"|YJ;Pc;lCITJm_L#VKP,zY_L2IT5MT\s< 10%#bv 10% Gr
*h*2EMwH_L<B CPU *zvSC;vy5#

w{JdwJ4
IZJdwM}/Lr6'\c,rK\QV[yP`MDJdwtT#TBE"w*X"s`}xgJdw
M}/Lry_PD\;0l53T\D+2tT#

xgT\ 233
s`}(ED}/Lr<a)KIw{DN}/4XF"MMSUJ4#b)N};cGC4XF(B9Gv
MSUSPD^5,+2ITC4XF:exrd{J4D}?Ms!#b)N}^F:exrGESH}+
dDE"|D}?,r_^FIC4SUE"|DSU:exD}?#b)N}ITw{,SxIT7#ZJ
dw6pOPc;DSP,byIT&m53rxgPD:X_e#

BfG;)(CD<r:
v *T>XZJdwJ4T0I\vVDNNmsDj8E",ky]z9CDJdw,9CTB|n:
– netstat -v
– entstat
– atmstat
– fddistat
– tokstat
v 9C errpt M errpt -a |n`S53msU>(f#
v kG!,g{"zKTBNNu~,kvv|DN}:
– P$]8>fZJ4L1#
– fZSP}Y#
– T\Vv8>h*3V53w{#

+dSP
TZ+d,h8}/LrI\a)+dSP^F#

I\,1fZ2~SPMm~SP^F,b!vZ}/LrMJdw#;)}/Lr;P;v2~SP,P)
HP2~2Pm~SP#;)}/LrZZ?XF2~SP,;Jm^Dm~SP^5#;civB,h8}
/Lra++dE"|1SEZJdw2~SP#g{53 CPU `TZxgYHOl(r_Z SMP 53
O),rC53zI+dE"|DYH*HE"|ZxgOD+dYHl#ba<B2~SPdz#

2~SPdzTs,;)}/LrMa)m~SP,ZG|GMxkm~SPES#g{o=Km~+dSP
D^5,G4+dE"|Ma;>}#ba0lT\,r*_cND-ib1O(,1"RX"E"|#+P
)1r,JdwXk*zE"|,r*a)}`UdI\<B"MBIE"|#

m 10. PCI Jdw+MSPs!D>}


Jdw`M Xwzk ODM tT 1!5 6'
IBM 10/100 Mbps T+x PCI Jd 2968 tx_que_size 8192 16-16384
w
10/100 Mbps T+xJdw II 4962 tx_que_sz 8192 512-16384
'WT+x PCI(SX r TX) 2969,2975 tx_que_size 8192 512-16384
'WT+x PCI(SX r TX) 5700,5701, tx_que_sz 8192 512-16384
5706,5707
10 'WT+x PCI-X(LR r SR) 5718,5719 tx_que_sz 8192 512-16384
ATM 155(MMF r UTP) 4953,4957 sw_txq_size 2048 50-16384
ATM 622(MMF) 2946 sw_txq_size 2048 128-32768
FDDI 2741"2742"2743 tx_queue_size 256 3-2048

234 T\\m8O
Ta)2~SP^FDJdwxT,|Db)5+IZk.X*DXFiM:exx<BZSU1{D|`5
Zf#rx,;P1h*D1rr_GTZsMD53,vSZf9C8u;P0lD1r,ITa_b)^
5#TZm~+dSP^5xT,vSb)^5;aa_ZfD9C#|;GJmE"|ZQ-Vdx|_c
-iD;CES#

+dhv{
3)}/LrJmzw{+d7Ds!r_+dhv{D}?#

2~+dSPXF\;ES=JdwTxP""+dD:exDns}?#;vhv{(#v8r;v:e
x,x;u{"I\Z`v:exP"M#m`}/Lr;Jmz|Db)N}#

Jdw`M Xwzk ODM tT 1!5 6'


'WT+x PCI-X"SX r TX 5 7 0 0 " 5 7 0 1 " txdesc_que_sz 512 128-1024,128 D6}
5706"507

SUJ4
P)JdwJmzdCC4SUxgE"|DJ4}?#bI\|(SU:exD}?(uA|GDs!)r
_ DMA SUhv{D}?#

P)}/Lr_P`vSU:eX,d:ex_P;,Ds!,TZ;,D$w:XI\h*w{b):ex
Ds!#P)}/Lr\mb)Z?J4,"R;Jmz|D|G#

SUJ4I\h*vS,SxIT&mxgOD_eve.#xgSZh8}/Lr+SkDE"|ECZS
USPP#g{SUhv{Pmr7Qz,r_;PICD:ex,E"|Ma;>},<B"M=h*XB
"M#SUhv{SPI9C SMIT $_r chdev |nxPw{(kNDZ 237 3D:|DxgN};)
#n
sSPs!X(Z?V`MD(EJdw,"R(#I9C SMIT $_PD F4 r List |xPi4#

m 11. PCI Jdw+MSPs!D>}


Jdw`M Xwzk ODM tT 1!5 6'
IBM 10/100 Mbps T+x PCI 2968 rx_que_size 256 16"32"64"128"26
Jdw
rx_buf_pool_size 384 16-2048
10/100 Mbps T+x PCI Jdw 4962 rx_desc_que_sz 512 100-1024
II
rxbuf_pool_sz 1024 512-2048
'WT+x PCI(SX r TX) 2969,2975 rx_queue_size 512 512(L()
'WT+x PCI-X(SX r TX) 5700,5701,5706,5707 rxdesc_que_sz 1024 128-1024,4 128

rxbuf_pool_sz 2048 512-2048


10 'W; PCI-X(SR r LR) 5718,5719 rxdesc_que_sz 1024 128-1024,4 128

rxbuf_pool_sz 2048 512-2048


ATM 155(MMF r UTP) 4953,4957 rx_buf4k_min x60 x60-x200(96-512)
2
ATM 622(MMF) 2946 rx_buf4k_min 256 0-4096

1
rx_buf4k_max 0 0-14000
FDDI 2741"2742"2743 RX_buffer_cnt 42 1-512

":

xgT\ 235
1. ATM JdwD rx_buf4k_max tTGSU:eXPDns:ex}#1C5hC* 0 1,}/Lr
y]53ODZf?Vd;v}V(}g,rx_buf4k_max= thewall * 6 / 320),+G ATM 155 J
dwDO^* 9500 v:ex,ATM 622 Jdw* 16360 v:ex#1;h*:ex1,:ex+
ME(;1B5= rx_buf4k_min) #
2. ATM JdwD rx_buf4k_min tTGXPUP:exDn!}?#}/LrT<ZXP;#VC}?
DUP:ex#XnsIT)9= rx_buf4k_max 5#

i/M|Dh8tTD|n
;)4,5CLrITC4T>+dSPD_^5,T0^J4r^:exmsD}?#

IT9C netstat -v |n,r1S9CJdw3FE"5CLr(entstat kTT+x"tokstat kTnF7"


fddistat kT FDDI"atmstat kT ATM HH)
#

*i4 entstat D>}dv,kNDZ 275 3D:Jdw3FE";#m;v=(G9C netstat -i 5CLr#


g{|Z Oerrs PPTSZT>DGGcF},G4b;cMGdvSPgvDa{#

i4xgJdwhC
IT9C lsattr -E -l adapter-name |nr_ SMIT |n(smitty commodev)4T>JdwDdC#

TZ;,DJdw,b)d?P;,D{F#HgTZ+dSPN}45,|GI\|{* sw_txq_size"
tx_que_size r_ xmt_que_size#}g,SUSPs!MSU:eXDN}IT|{*:rec_que_size"rx_que_size
r rv_buf4k_min#

BfGT IBM PCI 622 Mbps ATM Jdw4P lsattr -E -l atm0 |nDdv>}#dvmw,sw_txq_size
hC* 2048,x rv_buf4K_min SU:exhC* 256#
# lsattr -E -l atm0
adapter_clock 0 Provide SONET Clock True
alt_addr 0x0 ALTERNATE ATM MAC address (12 hex digits) True
busintr 99 Bus Interrupt Level False
interface_type 0 Sonet or SDH interface True
intr_priority 3 Interrupt Priority False
max_vc 1024 Maximum Number of VCs Needed True
min_vc 64 Minimum Guaranteed VCs Supported True
regmem 0xe0008000 Bus Memory address of Adapter Registers False
rx_buf4k_max 0 Maximum 4K-byte pre-mapped receive buffers True
rx_buf4k_min 256 Minimum 4K-byte pre-mapped receive buffers True
rx_checksum yes Enable Hardware Receive Checksum True
rx_dma_mem 0x4000000 Receive bus memory address range False
sw_txq_size 2048 Software Transmit Queue size True
tx_dma_mem 0x2000000 Transmit bus memory address range False
uni_vers auto_detect SVC UNI Version True
use_alt_addr no Enable ALTERNATE ATM MAC address True
virtmem 0xe0000000 Bus Memory address of Adapter Virtual Memory False

BfG9C lsattr -E -l ent0 |nxPD PCI-X 'WT+xJdwhCD>}#CdvT> tx_que_size h


C* 8192,rxbuf_pool_sz hC* 2048,x rx_que_size hC* 1024#
# lsattr -E -l ent0

alt_addr 0x000000000000 Alternate ethernet address True


busintr 163 Bus interrupt level False
busmem 0xc0080000 Bus memory address False
chksum_offload yes Enable hardware transmit and receive checksum True
compat_mode no Gigabit Backward compatibility True
copy_bytes 2048 Copy packet if this many or less bytes True
flow_ctrl yes Enable Transmit and Receive Flow Control True
intr_priority 3 Interrupt priority False
intr_rate 10000 Max rate of interrupts generated by adapter True

236 T\\m8O
jumbo_frames no Transmit jumbo frames True
large_send yes Enable hardware TX TCP resegmentation True
media_speed Auto_Negotiation Media speed True
rom_mem 0xc0040000 ROM memory address False
rx_hog 1000 Max rcv buffers processed per rcv interrupt True
rxbuf_pool_sz 2048 Rcv buffer pool, make 2X rxdesc_que_sz True
rxdesc_que_sz 1024 Rcv descriptor queue size True
slih_hog 10 Max Interrupt events processed per interrupt True
tx_que_sz 8192 Software transmit queue size True
txdesc_que_sz 512 TX descriptor queue size True
use_alt_addr no Enable alternate ethernet address True

|DxgN}
;*I\,k9C smitty |n4|DxgN}#

*!qX(Dh8`M,k9C smitty commodev |n#;sSvVDPmP!qJdw`M#TBG


smitty commodev |nD>},C4|DT+xJdwDxgN}#
Change/Show Characteristics of an Ethernet Adapter

Type or select values in entry fields.


Press Enter AFTER making all desired changes.

[Entry Fields]
Ethernet Adapter ent2
Description 10/100/1000 Base-TX PCI-X Adapter (14106902)
Status Available
Location 1V-08
Receive descriptor queue size [1024] +#
Transmit descriptor queue size [512] +#
Software transmit queue size [8192] +#
Transmit jumbo frames no +
Enable hardware transmit TCP resegmentation yes +
Enable hardware transmit and receive checksum yes +
Media Speed Auto_Negotiation +
Enable ALTERNATE ETHERNET address no +
ALTERNATE ETHERNET address [0x000000000000] +
Apply change to DATABASE only no +

F1=Help F2=Refresh F3=Cancel F4=List


Esc+5=Reset Esc+6=Command Esc+7=Edit Esc+8=Image
Esc+9=Shell Esc+0=Exit Enter=Do

*DdNN;vN}5,4Bf5Dv:
1. (}KPgB|nVkSZ:
# ifconfig en0 detach

bo en0 zmJdwD{F#
2. 9C SMIT 4T>JdwDh(5#!q Devices ->Communications -> adapter type -> Change/Show...
3. +bjF/=*|DDVN,4 F4 Ii4CVNDn!Mns6'(rG\'VD;iX(s!)#
4. !qOJDs!,4 Enter xPT ODM }]bD|B#
5. KPBfD|n,XB,OJdw:
# ifconfig en0 hosthame up

m;vIT|Db)N}D=(GKPBfD|n:
# chdev -l [ifname] -a [attribute-name]=newvalue

}g,*DdOfD tx_que_size Z en0 OD5,D* 128,M*9CBf;,.D|n#"b,}/Lr


;'V 4 V;,Ds!,yTnC9G9C SMIT |ni4;Bb)5#
# ifconfig en0 detach
# chdev -l ent0 -a tx_que_size=128
# ifconfig en0 hostname up

xgT\ 237
TCP nsNs!w{
TCP "MDnsE"|s!TxmPOsD0l,r*ZxgO"MI\DnsE"|G|P'D#

TCP *?v TCP ,SXFbvnss!,F*nsNs!(MSS) #TZ1S,SDxg,TCP Fc MSS D


=(G9CxgSZD MTU s!;su%-i7C= TCP E"|P}]Ds!#}g,MTU * 1500 D
T+xZu% 20 VZD IPv4 7M 20 VZD TCP 7sC=D MSS * 1460#

TCP -i|(;VZ4(,S1,,SD=K(}C,S4(f(advertise)*9CD MSS DzF#?vK


c<Z TCP (7P9C OPTIONS VN4av MSS D(i5#!(D MSS G=vKca)D5PO!D
;v#g{;vKc;a)d MSS,rY(* 536 VZ,bTT\;{#

fZDJbG?v TCP Kc;*@|y,SDxgD MTU#|;*@=vKc.dI\fZDd{xgGu


4D MTU s!#by44,TCP ;PZ=vKc&Z,;xgO1E*@}7D MSS#rK,g{ TCP *
\b"MI\h* IP VN4(}O! MTU xgDE"|,ry]xgdCD;,,|T MSS (fD&m
2;,#

t/,S1I TCP m~avD MSS 5!vZm;KGqG,;omxgOD>X53(4G5,53P`


,DxgE),r_|GqZ;,(6L)xgO#

`,xgODwz
g{,SDm;KZ,;v IP xgO,rI TCP +<D MSS +yZ>XxgSZD MTU#
TCP MSS = MTU - TCP 7s! - IP 7s!

TCP s!* 20 VZ,IPv4 7s!* 20 VZ,IPv6 7s!* 40 VZ#

IZbG MSS DnsI\5,Z;P IP VN1IT]I,bv5G>TnED,yTTZ>Xxg;h*


xP MSS w{#

;,xgODwz
1,SDm;K;Z6LxgO1,Yw53D TCP 1!(f;v9CTB=(7(D MSS#

K=(k“TCP 76 MTU "V”GqtCPX#g{4tC76 MTU "V(dP tcp_pmtu_discover=0),


G4 TCP TBP3r7(*9CD MSS s!:
1. g{ route add |n*K7I8(K MTU s!,r MSS IC MTU s!FcC=#
2. g{*9CDxgSZ(eK ISNO D tcp_mssdflt N},r+ tcp_mssdflt 5CZ MSS#
3. g{4(eOf=vN},TCP r9C+V no tcp_mssdflt IwN}5#K!nD1!5* 1460 VZ#

TCP 76 MTU "V


TCP 76 MTU "V-i!nZ AIX PG1!tCD#C!nJm-i;7(10;Z=vwz.d76P
DNNxgODn! MTU s!,"R(} tcp_pmtu_discover=1 xg!nxPXF#

S AIX 5.3 *<,TCP 76 MTU "VD5V9C,S>mD TCP E"|,x;G ICMP ECHO {"#
TCP/IP ZK)9#t;v{* PMTU Dm,Tf"`XD PMTU "VE"#1k?v?j(" TCP ,S
1,Z PMTU mP+4(C?jDu?#PMTU 5MGwvDSZ MTU 5#

TCP E"|Z"M1 IP (7PxP Don’t Fragment r_ DF ;hC#g{ TCP E"|=o;vxg7I


w,RC7IwD MTU 5!Z TCP E"|Ds!,G47Iw+"MX;u ICMP ms{",8v^(*
"{",r*{"^(VN#g{"Mms{"D7Iw{O RFC 1191,rxgD MTU 5M|,Z ICMP
ms{"P#qr,TZ*XB"MD TCP E"|,XkS AIX TCP/IP ZK)9PDQ* MTU 5mPV

238 T\\m8O
d;vO!D MTU s!5#;s PMTU mPD?j PMTU 5+|B*BDO!D MTU s!,;sXB
"M TCP E"|#=C?jDNNsx TCP ,S<+9C|BD PMTU 5#

zIT9C pmtu |n4i4r_>} PMTU u?#TBG pmtu |nD>}:


# pmtu display

dst gw If pmtu refcnt redisc_t exp

-------------------------------------------------------------------------

10.10.1.3 10.10.1.5 en1 1500 2 9 0

10.10.2.5 10.10.2.33 en0 1500 1 0 0

49CD PMTU u?(45* 0 D refcnt u?)+;>},T@9 PMTU mdC+s#49CDu?+


Z refcnt 5HZ 0 .sD pmtu_expire VSs;>}#pmtu_expire xg!nD1!5* 10 VS#*@9
PMTU u?=Z,zIT+ pmtu_expire 5hC* 0#

TZC TCP 76 MTU "VD5V,7IK!G;X*D,bb6E7Im|!R|cZ\m#

2,7I
IT(}8(=X(6LxgD2,7I42G MSS D1!5 1460 VZ#

9C route |nD -mtu !nIT8(CxgD MTU#bVivB,zrma8(7I MTU D5Jn!5,


x;GFc MSS 5#}g,TB|n+1!D MTU s!hCI 1500 TCZxg 192.3.3 D7I,"hC
=oCxXD1!wzG en0host2:
# route add -net 192.1.0 jack -mtu 1500
1500 net 192.3.3: gateway en0host2

netstat -r |nT>7Im"T> PMTU s!* 1500 VZ#TCP (}C MTU s!Fc MSS#BfG
netstat -r |nD>}:
# netstat -r
Routing tables
Destination Gateway Flags Refs Use If PMTU Exp Groups

Route tree for Protocol Family 2 (Internet):


default res101141 UGc 0 0 en4 - -
ausdns01.srv.ibm res101141 UGHW 8 40 en4 1500 -
10.1.14.0 server1 UHSb 0 0 en4 - - =>
10.1.14/24 server1 U 5 4043 en4 - -
server1 loopback UGHS 0 125 lo0 - -
10.1.14.255 server1 UHSb 0 0 en4 - -
127/8 loopback U 2 1451769 lo0 - -
192.1.0.0 en0host1 UHSb 0 0 en0 - - =>
192.1.0/24 en0host1 U 4 13 en0 - -
en0host1 loopback UGHS 0 2 lo0 - -
192.1.0.255 en0host1 UHSb 0 0 en0 - -
192.1.1/24 en0host2 UGc 0 0 en0 - -
en1host1 en0host2 UGHW 1 143474 en0 1500 -
192.3.3/24 en0host2 UGc 0 0 en0 1500 -
192.6.0/24 en0host2 UGc 0 0 en0 - -

Route tree for Protocol Family 24 (Internet v6):


loopbackv6 loopbackv6 UH 0 0 lo0 16896 -

xgT\ 239
":netstat -r |n;T> PMTU 5#zIT9C pmtu display |n4i4 PMTU 5#1z9C route
add |n4mS;v?jD7I,"R8(K MTU 51,Z PMTU mP+*C?j4(;v PMTU u
?#

Z!xH(D73B,9CbV=(ITZxg - xgy!O5VT MSS D+7XF#bV=(D;c.&


gB:
v |;\$wZ/,7IB#
v 16LxgD}?vS1MdC;PO5J#
v XkZ=KhC2,7I,Sx7#=K9C;vH1!5sD MSS xPT0#

9C no |nD tcp_mssdflt !n
tcp_mssdflt !nGC4hCk6Lxg(EDnsE"|s!D#

no |nD+V tcp_mssdflt !nJCZyPxg#+G,TZ'V ISNO !nDxgSZ45,ITZb)S


ZPD?vSZOhC tcp_mssdflt !n#C5+2G9CKxgD7ID+V no |n5#

tcp_mssdflt !nG TCP MSS s!,|zm TCP }]s!#*FcC MSS s!,ICZ{Dxg MTU s
!"SPu% 40 VZ(IP 7* 20 VZ,TCP 7* 20 VZ) #;h*w{d{-i!n,r*Z9Cd{
!n(g rfc1323 !n)1,TCP axPbyDw{#

g{\_P;vsZ1!5D MTU,bV=(MPvEc,4G MSS ;h*Z?vxgDy!OxPh(#


d;c.&gB:
v g{?jZ;v75#6DxgOxRyf0D MTU 4*,K1vsd1!5I\a<B IP 7IwVN#
v Xk+ tcp_mssdflt !nhCI?jwzOD`,5#

":S AIX *<,g{ tcp_pmtu_discover !nhC* 0,r;\9C tcp_mssdflt !n#

.VSxM no |nD subnetsarelocal !n


IT9C no |nD subnetsarelocal !n4XF TCP N1+6LKcS*>X(Z`,xgO)r6L#

;)omxgIT(}SxhC*2m`,DxgE#subnetsarelocal !nZ536'O8(G+Sx4wG>
Xxg9G6Lxg#g{9C no -o subnetsarelocal=1 |n(1!iv),Sx 1 ODwz A +Sx
2 ODwz B Sw;Z,;vomxgO#

rx,1wz A Mwz B (",S1,|GY(|G;Z,;xgPM MSS xPT0#?vwzyZ|D


xgSZ MTU av;v MSS,ns;c<a!q;vnED MSS 5#

bv=(DEcgB:
v |;h*NN2,s(,MSS GT/T0D#
v |;P2G TCP MSS T0r{C|,by`ZSx.d MTU OD8!npITJH&m#

bv=(D;c.&gB:
v 1=v_ MTU Dxg(};vOM MTU xg4SZ;p1,MavV1ZD IP 7IwVN#BfD<
T>DMGbvJb#

240 T\\m8O
< 23. Sx.dDVN. T>mw,Swz A D}]76,-I FDDI(MTU * 4352),-I7Iw 1,=oT+x
(MTU * 1500)#SGy|V=o7Iw 2 Mm;v FDDI(MTU * 4352),;sdv=wz B#tSET><sD
D>TZ>}PvVVNwvKbM#

v Zbv=8o,wz A M B IT(";vyZ(C MTU * 4352 D,S#Swz A = B DE"|I


\a;7Iw 1 VN,;s;7Iw 2 iO#g{S B = A 4}42agK#
v 4M?j<Xk*+Sx4wG>Xx#

":S AIX 5.3 *<,g{ tcp_pmtu_discover 5* 1,G4 MSS 5+y]wvDSZ MTU 4Fc#;P
1 tcp_pmtu_discover xg!n5* 0 1,Ea<G subnetsarelocal 5#

IP -iT\w{(i
>Za)E/ IP -iT\D(i#

Z IP cP,(;IwN}G ipqmaxlen(XF IP dkSPD$H)#;c45,SZ;axPES#E"|


IT\lVo,9 IP cdkSP,^#I9C netstat -s r netstat -p ip |ni4gvF}(ipintrq
overflows)
#

g{5XD}5sZ 0,M"zKgv#9C no |nIThCbvSPDns$H#Hg:


# no -o ipqmaxlen=100

bv}SJm 100 vE"|ESHr#9CD+7}]GIU=Dnsve.+dYJ4v(D#g{bG;


7(D,9CgvD}?IToz7(&CvS`Y#vSSPD$H;a9C=SZf#;x,bvvSI
\a<BZ^6pDPO&mLrP(Q|`D1d,bGr* IP a|`DE"|Z|DdkSPP&m#b
IT4}40lh* CPU 1dDxL#bM*Z5ME"|*zMCZd{&mD CPU ICT.dI![
T#g{bV[TZzD73P\X*,rnCTJHDv?4vs ipqmaxlen#

w{ mbuf XT\
xgS539CKZf\mh8,|G'F;v}]a9(ID,Fw mbuf#

Mbuf w*C4+kVMvVDxgw?}]f"ZZKP#mbuf XDs!*J1,bTxgT\P}+wC#


g{ mbuf XdC;C1,TxgM53T\<;{#mbuf Xs!(thewall IwN})DO^IYw53y
]53PDZf?T/7(#;P53\m1E\w{ mbuf Xs!DO^#

thewall IwN}
thewall xgIwN}!nC4hCxgZK:exDO^#

53T/+ thewall IwN}D5hCIns5,yT;c45;*|Dbv5#IT+|u!,byauu


53CZxg:exDZf?,+|I\0lxgT\#IZ53ZNNx(D1dv9CXhD:ex},
g{;Ps?9CxgS53,r:ex\}&CH thewall 5MC`#

thewall IwN}D%;G 1 KB,rK 1048576 VZm> 1024 MB r 1 GB D RAM#

32 ;TH 64 ;ZK
AIX 32 ;ZKP_o 1 GB D mbuf :exUd,I`o 4 vZfN(?v 256 MB)iI#y]53P
D\Zf?,bv5I\a|M#thewall IwN}Ds!G 1 GB r53Zf?D;kb=v5PDO!5#

xgT\ 241
AIX 64 ;ZKP;v`1sDZK:ex]?#|P`o 65 GB D mbuf :exUd,I 260 vZfN(?
v 256 MB)iI#TZ 64 ;ZK,thewall IwN}Ds!G 65 GB r53Zf?D;kb=v5PD
O!5#

rK,g{ mbuf XT]?rT\zz^F,rPs? TCP ,S"xgJdwrxg I/O D53&C<G9


C 64 ;ZK#

maxmbuf IwN}
maxmbuf IwN}D5^FK(ES539CD5ZfD}?#

9IT9C maxmbuf IwN}5M thewall ^F#KP lsattr -E -l sys0 |nIi4 maxmbuf IwN}D
5#g{ maxmbuf 5sZ 0,c9C maxmbuf 5,k thewall IwN}D5^X#

maxmbuf IwN}D1!5* 0#maxmbuf IwN}D5* 0 m>+9C thewall IwN}#9C chdev r


smitty |nI|D maxmbuf IwN}5#

sockthresh M strthresh P5IwN}


sockthresh M strthresh IwN}G^FBWSVr TCP ,SDr*,r_BDw=J4D4(DO^P5#
bah9:exJ4dC;IC,"7#VPDa0r,S5PILxKPDJ4#

sockthresh IwN}8(ZfD9C^F#;JmPBDWSV,S,v sockthresh IwN}D5#sockthresh


IwN}D1!5G 85%,;)VdD\Zf?o= thewall r maxmbuf IwN}5D 85%,zM;\YP
NNBDWSV,S(bb6E socket() M socketpair() 53wCD5X5G ENOBUFS),1=:ex9
CJ5=MZ 85% *9#

,y,strthresh IwN}^FCZw=J4D mbuf Zf?,"R strthresh IwN}D1!5* 85%#l=


M TTY S53Zw=73PKP#strthresh IwN}8(:;)VdDZf\?o= thewall IwN}5D
85%,M;aYPZf*xwJ4(bb6EwwCD5X5G ENOSR)Tr*w"FM#ir4kwh8#

I9C no |nw{ sockthresh M strthresh P5#

mbuf \m$_
mbuf \m$_XF;,D:exs!,d/D6'S 32 VZ= 16384 VZ#

mbuf XGI53ZfribZf\mw(VMM)avVdksSx4(D#mbuf X|(ZKibZfDL(


?V,|G#$omZfS4;PV3v4#a{MG&CLrP5JIC4V3DZfM}]Q-uYK,
uYD?G mbuf XvSD?#

xgZfXZwv&mw.dyV#?vSXfsVI`vf"x,?vf"xP|,s!S 32 = 16384 V
ZD:ex#,;v&mwODf"NITSd{f"Nh=Zf,+G;v&mw;\Smb;v&mwD
xgZfXPh=Zf#1xg~qh*+d}]1,|ITwCZK~q,Hg m_get() 4q!;vZf:
ex#g{:exGICDxRQ-(;,|ITmOC=:ex#g{;Po=O^5,xR:ex;P"
(;,G4MaVd;v:ex"xP(;#;)(;,ZfM#V(;4,+GIT;xgXyME#g{
;P:exD}?o=K_^5,G4MaT;(}?D:ex!{(;,"59x53Cw;cC>#!{
(;DYwI netm() ZKxL4jI#m_get() SLrDwC=IT8wGqZKH}xgZf:ex#g
{8(K M_DONTWAIT j>,"RK1^L(:exIC,r failed F}w+]v#g{8(K M_WAIT
j>,xLMaxk/_4,,1=ITVdML(:ex*9#

242 T\\m8O
(} netstat -m |n`S mbuf X
I9C netstat -m |nlbxgZf(mbuf/cluster)ksD;crJO#

I9C netstat -Zm |neU(4ec)mbuf 3FE"#ZKPbTTS-<3FE"/O*<1,bG\


PozD#netstat -m |na)KBPVN:
VN{ (e
By size
T>:exDs!#
inuse T>}Z9CD_PX(s!D:ex}#
calls T>?Vs!D:exDwCrVdks}#
failed T>P`YVdksr*^:exICx'\#
delayed
T>1:exs!*U"IwCLrhCK M_WAIT j>1SYDwC}#
free T>&ZUPPmPITxPVdD?Vs!D:ex}#
hiwat T>I537(DIT#tZUPPmPDns:ex}#,vK^FDNNUP:exa%%ME
X53P#
freed T>1UPF},} hiwat ^F1QMEX53PD:ex}#

;&C4=s?D failed wC#1:eXs!vS1,I\aPY}8v%"53Vd|`:exD'\wC


vV#?Vs!<P;i$(eD:ex,53Z?N}<s<Sb):ex*<,IT4h*vS:ex
}#

BfGS+&mwr CPU zw"vD netstat -m |nD>}:


# netstat -m

Kernel malloc statistics:

******* CPU 0 *******


By size inuse calls failed delayed free hiwat freed
32 68 693 0 0 60 2320 0
64 55 115 0 0 9 1160 0
128 21 451 0 0 11 580 0
256 1064 5331 0 0 1384 1392 42
512 41 136 0 0 7 145 0
1024 10 231 0 0 6 362 0
2048 2049 4097 0 0 361 362 844
4096 2 8 0 0 435 435 453
8192 2 4 0 0 0 36 0
16384 0 513 0 0 86 87 470

******* CPU 1 *******


By size inuse calls failed delayed free hiwat freed
32 139 710 0 0 117 2320 0
64 53 125 0 0 11 1160 0
128 41 946 0 0 23 580 0
256 62 7703 0 0 1378 1392 120
512 37 109 0 0 11 145 0
1024 21 217 0 0 3 362 0
2048 2 2052 0 0 362 362 843
4096 7 10 0 0 434 435 449
8192 0 4 0 0 1 36 0
16384 0 5023 0 0 87 87 2667

xgT\ 243
***** Allocations greater than 16384 Bytes *****

By size inuse calls failed delayed free hiwat freed


65536 2 2 0 0 0 4096 0

Streams mblk statistic failures:


0 high priority mblk failures
0 medium priority mblk failures
0 low priority mblk failures

ARP _Y:fw{
X7bv-i(ARP)C4+ 32 ; IPv4 X73dI}]47-i*sD 48 ;wzJdwX7#

ARP GI538w&mD#+G,53,$E;v ARP _Y:f,bG;E5P`X*D 32 ; IP X70


d 48 ;wzX7Dm#zI\h*Z,SKs?zw(M'z)D73P|D ARP _Y:fDs!#bI
T9C no M netstat |nxP#

no |ndCxgw{N},"Rd ARP `XIwN}gB:


v arpqsize = 12
v arpt_killc = 20
v arptab_bsiz = 7
v arptab_nb = 149

ARP ms!I arptab_nb N}(eDs?f"xiI#?vf"x]I arptab_bsiz N}y(e}?Du?#


1!5* 149 vf"x,?vf"xP|, 7 vu?,ZGCmI]I 1043 (149 x 7) vwzX7#K1
!hC+T IP xgOkd{n` 1043 (zw""(ED53pwC#g{~qwZxgO"",S=Dz
w}sZ 1043,r ARP m+dC}!,SxlI ARP m_$"<BT\dn#;s,Yw53Xke}_
Y:fPD3vu?,"f;*BX7#b+*s TCP r UDP E"|Z ARP -i;;CE"1ES#
arpqsize N}7(ZSU=3vS ARP ks5XD ARP l&.0b)H}DE"|PP`YII ARP c
ES#g{ ARP SP,v^H,r>}+vD TCP r UDP E"|#

ARP _Y:f_$I\TT\zz:wC,-rgB:
1. 10+vDE";C;H}TZxgOxP ARP -iiR#
2. m;v ARP nXkS ARP _Y:fP>}#g{h*yPX7,r1PE"|"M=Q>}DwzX7
1,Mh*m;vX7#
3. ARP dvSPI\,v^H,bya<B>}E"|#

arpqsize"arptab_bsiz M arptab_nb N}+<GXB}<N},bb6Eg{b)N}D5r*b)N}|DK


}<1r TCP/IP 0k1y9(Dmx"zd/,MXkXB}<53#

#arpt_killc N}D1!5* 20 VS#?1


arpt_killc N}G8>}3v ARP n.0D1d(TVS*%;)
-} arpt_killc N}y(eDVS},ARP u?MaSmP>},T&Twz53I\|Dd 48 ;X7D
iv,1|;wz53DxgJdw1,Ma"zKiv#byI7#_Y:fPDyPIn<;>},r*
|Gah9kK`wzD(E,1=>}dIX7*9#vSbv1dauY53xPD ARP iR,+I\
<By|,DIwzX7D1d|C6#arpt_killc N}G/,N},rx^kXB}<534I|DCN}#

netstat -p arp |nT> ARP 3FE"#b)3FE"T>KZ>}3vu?Tc*Bu?ZvUd1,\


2Q"MK`Y ARP ks,T0QSmPe}K`YvE"|#g{bve}F}\_,G4&CvS ARP
ms!#BfG netstat -p arp |nD>}#

244 T\\m8O
# netstat -p arp

arp:
6 packets sent
0 packets purged

I9C arp -a |nT> ARP m#C|ndvT>K ARP mPDX7"b)X7GgN"P`ED,T0


`E=D)f"xP#
? (10.3.6.1) at 0:6:29:dc:28:71 [ethernet] stored

bucket: 0 contains: 0 entries


bucket: 1 contains: 0 entries
bucket: 2 contains: 0 entries
bucket: 3 contains: 0 entries
bucket: 4 contains: 0 entries
bucket: 5 contains: 0 entries
bucket: 6 contains: 0 entries
bucket: 7 contains: 0 entries
bucket: 8 contains: 0 entries
bucket: 9 contains: 0 entries
bucket: 10 contains: 0 entries
bucket: 11 contains: 0 entries
bucket: 12 contains: 0 entries
bucket: 13 contains: 0 entries
bucket: 14 contains: 1 entries
bucket: 15 contains: 0 entries

...!T`P...

arp mPP;n#

{Fbvw{
TCP/IP T<Swz{Fq!rXx-i(IP)X7,bMGKGl*DxL - {Fbv#

+rXx-iX7*;wz{FD}LGf{Fbv#9CK7Ibvw4bv{F#|h* DNS"NIS M>


XD /etc/hosts D~40RhsE"#

g{z*@zk*{Fuybv,zIT(}2G1!DQwNr4SY{FbvD}L#bIT(}9C
/etc/netsvc.conf D~rG NSORDER 73d?4jI#
v g{,19C /etc/netsvc.conf D~M NSORDER,r NSORDER 2G /etc/netsvc.conf D~#g{k9
C /etc/netsvc.conf 4f(wzNr,M*4(D~,;s|,Bfb;P:
hosts=value,value,value

dP value I*(;\!4)bind"local"nis"bind4"bind6"local4"local6"nis4 r nis6(TZ


/etc/hosts)
#bvNrGZ;PZ8(D,5.dC:Et*#JmZ:EMHE.dPUq#

8(D5M|GDNr!vZxgDdC#Hg,g{>XxgiI3;x,G4;h* /etc/hosts D
~#/etc/netsvc.conf D~+|,TBP:
hosts=local

NSORDER 73d?+hC*:
NSORDER=local
v g{>XxGr{x,*xP{Fbv9Cr{~qw,P/etc/hosts D~w*8],8(=v~
q#/etc/netsvc.conf D~+|,TBP:

xgT\ 245
hosts=bind,local

NSORDER 73d?+hC*:
NSORDER=bind,local

c(aTPmPDZ;v4xP"T#;sa7("Tm;v8(D~q:
v 10~q;PKP,rx;IC#
v 10~qR;={FR;PZ(#

xgT\Vv
vVT\JbD1r,zD53I\;c}'2;P,xf}DJO-r4GbfD(~o#

g{**@GqGxg0l\eDT\,;vr%D=(MGHOf0xgDYwMG)Mxg^XDYw#
g{z}ZKPDLrZxP`1`kD6LA!M4k,xRKP\},+d{DYw4p4KP}#,b
1I\GxgJblID#g{z}ZKPDLrZxP`1`kD6LA!M4k,xRKP\},+d{
DYw4p4KP}#,b1I\GxgJblID#;)1ZDxg?1I\ITBrXlI:
v M'KxgSZ
v xgxm
v xgXKa9
v ~qwKxgSZ
v ~qwK CPU :X
v ~qwf"w9C4v
v ~qwxm
v dC'JMB

;)$_H?xg3F}],xvwVwyDE",+;PdPD;?VGMT\w{`XD#

*KDFT\,zIT9C no(xg!n)|nM nfso |n4T NFS !nxPw{#z9IT9C chdev


M ifconfig |n4Dd53MxgDN}5#

ping |n
ping |nTZ7(xgMwVb?wzD4,"zYMtk2~Mm~Jb,T0bT"b?M\mxgG#
PC#

BfPvDG;)MT\w{`X*D ping |nN}n:


-c 8(KE"|}#g{zP IP zYG<,bvN}nGPCD#zIT6== ping E"|Dn!5#
-s 8(E"|D$H#zIT9CbvN}n4liVNMXBiO#
-f T 10 ms Dd*"ME"|rGZ?NX&.s"4"M#;PyC'EIT9CbvN}n#

g{zh*SXzDxgr53,9C -f N}nM\=c#Hg,g{zBbzDJOG}?:XlID,I
TTEPbSXzD$wx4$5zD3I#r*`v aixterm 0Z,"Z?v0ZPKP ping -f |n#
zDT+x9C4v\lMao=S| 100%#BfG;v}S:
# date; ping -c 1000 -f 192.1.6.1 ; date
Thu Feb 12 10:51:00 CST 2004
PING 192.1.6.1 (192.1.6.1): 56 data bytes
.

246 T\\m8O
--- 192.1.6.1 ping statistics ---
1000 packets transmitted, 1000 packets received, 0% packet loss
round-trip min/avg/max = 1/1/23 ms
Thu Feb 12 10:51:00 CST 2004

":ping |nZxgOKPI\\'Q,&C!D9C#,xX4P ping |n;\IyC'4Yw#

Zbv}SP,1 kSZ"MK 1000 vE"|#**@bv|n9CK IP MxgXFE"-i(ICMP),


rx;Pf0=NN+d-i(UDP/TCP)M&CLr#b=D}],Hgy5D1d,;a0l=\eD
T\Xw#

g{zT<"Ms?DE"|=zD?DX7,M*<GgB8c:
v "ME"|TzD5345,vSK:X#
v 9C -i |nITZTi}LP`bxgSZD4,#(}i4 Oerrs DdvzIT"V53Z"MPZ>
}E"|#
v z2&C`Xd{J4,Hg mbuf M"M / SUSP#\QZ?j53OvS;vsD:X#rmZd{
53}X.0zD53M}XK#
v <Ga{D`XT#g{zk`XrbTDvG;v?j53,MZd{D;)53Ov,yDTi4x
PHO,r*rmzDxgrG7IwvVKJO#

ftp |n
+ /dev/zero Cwdk,+ /dev/null Cwdv,TKI9C ftp |n"M+sD~#byzMIT+d;v
sD~,x;C<GEL(I\G?1Jb),2;h*ZZfP_Y:f{vD~#

9CBfD ftp S|n(Dd count D5ITvSrGuYiD}?,iD}?IT(} dd |nAv):


> bin
> put "|dd if=/dev/zero bs=32k count=10000" /dev/null

TO|n+MK 10000 v}]i,?vis!* 32 KB#*vSruY+dDD~Ds!,k|DI dd |


nA!DiF},4 count N},r_|Dis!,4 bs N}#k"b ftp |nD1!D~`MG ASCII,
bHO},r*Xk(hyPVZ#;*I\,&C*+M9C~xF==r_ bin#

*7# tcp_senspace M tcp_recvspace D5AY* 65535(TZ Gigabit T+x ″jumbo frames″MxP


MTU 9180 D ATM 45),g{*qC|CDT\Mh*|sD5,bGr* MTU D52vSK#*qC
nQT\,(i9C 131072 VZ(128 KB)Ds!#g{z9C SMIT $_4dCzD'WT+xJdw,
G4&C}7hC ISNO 531!5#g{z9C ifconfig |n4t/xgSZ,G4 ISNO !n+;aC
=}7hC#

BfYDG;vhCN}D}S:
# no -o tcp_sendspace=65535
# no -o tcp_recvspace=65535

BfPvDG ftp S|n:


ftp> bin
200 Type set to I.
ftp> put "|dd if=/dev/zero bs=32k count=10000" /dev/null
200 PORT command successful.
150 Opening data connection for /dev/null.
10000+0 records in
10000+0 records out
226 Transfer complete.

xgT\ 247
327680000 bytes sent in 2.789 seconds (1.147e+05 Kbytes/s)
local: |dd if=/dev/zero bs=32k count=10000 remote: /dev/null
ftp> quit
221 Goodbye.

TO}]+dGZ=v'WT+xJdw.d(}9C 1500 VZ MTU 4PD,(fDLB?*:114700


KB/sec,4 112 MB/secMB r_ 940 Mbps#

1"M=MSU=9C Jumbo !1,MTU s!* 9000 1,(fDLB?* 120700 KB/sec r_ 117.87


MB/sec r_ 989 Mbps,gTB>}Py>:
ftp> bin
200 Type set to I.
ftp> put "|dd if=/dev/zero bs=32k count=10000" /dev/null
200 PORT command successful.
150 Opening data connection for /dev/null.
10000+0 records in
10000+0 records out
226 Transfer complete.
327680000 bytes sent in 2.652 seconds (1.207e+05 Kbytes/s)
local: |dd if=/dev/zero bs=32k count=10000 remote: /dev/null

TB>}GZ=v 10/100 Mbps T+xSZ.dxPD ftp }]+d:


ftp> bin
200 Type set to I.
ftp> put "|dd if=/dev/zero bs=32k count=10000" /dev/null
200 PORT command successful.
150 Opening data connection for /dev/null.
10000+0 records in
10000+0 records out
226 Transfer complete.
327680000 bytes sent in 27.65 seconds (1.157e+04 Kbytes/s)
local: |dd if=/dev/zero bs=32k count=10000 remote: /dev/null

TO}]+dDLB?G 11570 KB/sec,4 11.3 MB/sec r_ 94.7 Mbps#

netstat |n
netstat |nITC4T>xgD4,#

4_}44,|GC4vJO6px;Gw*T\@(CD#;x,netstat |nITC47(xgODw?,
SxIT7(T\JOGqGIZxgh{y}p#

netstat |nT>DGXZZdCDxgSZODw?,gBfy>:
v MWSVPXDNN;v-iXFiDX70yPWSVD4,
v U=""Mv%MZ(ES53P*'DE"|}?
v ?vSZD[F3FE"
v 7IM|GD4,

9C netstat |n
netstat |nT>DGP',SDwVxg`XD}]a9Z]#

netstat -in |n:

K netstat /}T>yPdCSZD4,#

248 T\\m8O
TB>}T>K;vxP/IT+x(en1)"PCI-X 'WT+x(en0)M* TCP/IP dCDbK(@Jdw
(fc0)D$w>D3FE":
# netstat -in
Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Coll
en1 1500 link#2 0.9.6b.3e.0.55 28800 0 506 0 0
en1 1500 10.3.104 10.3.104.116 28800 0 506 0 0
fc0 65280 link#3 0.0.c9.33.17.46 12 0 11 0 0
fc0 65280 192.6.0 192.6.0.1 12 0 11 0 0
en0 1500 link#4 0.2.55.6a.a5.dc 14 0 20 5 0
en0 1500 192.1.6 192.1.6.1 14 0 20 5 0
lo0 16896 link#1 33339 0 33343 0 0
lo0 16896 127 127.0.0.1 33339 0 33343 0 0

count D5S53t/*<xPc\#
Name SZ{F#
Mtu ns+d%*#9CSZ1IT+dDnsE"|s!,TVZ*%;#
Ipkts SU=E"|D\}?#
Ierrs dkmsD\N}#Hg,{NDE"|"#iMmsrGh8}/LrPD:eUd;c#
Opkts "ME"|D\}?#
Oerrs dvmsD\}#Hg,wz,SDmsrGJdwdvSP,^#
Coll lb=DE"|e;DN}#

":netstat -i |n;'VT+xSZDe;F}(kNDZ 275 3D:Jdw3FE";TKbT+x3FE


") #

Bf1;)w{D<r:
v g{Zd"zmsDdkE"|}sZdkE"|\}D 1%((} netstat -i |n4=);4
Ierrs > 0.01 x Ipkts

rKP netstat -m |nTliGq1YZf#


v g{Zd"zmsDdvE"|}sZdvE"|\}D 1%((} netstat -i |n4=);4
Oerrs > 0.01 x Opkts

#xmt_que_size Ds!IT(}BfD|n4li:
G4M*bvSZvS"MSPDs!(xmt_que_size)
# lsattr -El adapter
v g{e;DHJH 10% *s,4G,
Coll / Opkts > 0.1

G4xgD9CJMHO_,b1rmMPX*XBiOrGVx#9C netstat -v r entstat |n7(


e;J#

netstat -i -Z |n:

netstat |nDC&\+Q netstat -i |nDyP3FF}wec#

netstat -I SZ1ddt:

K netstat /}T>8(SZD3FE"#

K/}a)K`FZ netstat -i |nDkT8(SZDE","4x(D1ddtxP(f#Hg:

xgT\ 249
# netstat -I en0 1
input (en0) output input (Total) output
packets errs packets errs colls packets errs packets errs colls
0 0 27 0 0 799655 0 390669 0 0
0 0 0 0 0 2 0 0 0 0
0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 78 0 254 0 0
0 0 0 0 0 200 0 62 0 0
0 0 1 0 0 0 0 2 0 0

OfD}ST>KkT ent0 SZD netstat -I |ndv#@NzIK=v(f,;vGT8(SZ,;vG


#b)VN`FZ netstat -i >}PDVN,input packets = Ipkts"input errs
TyPICDSZ(Total)
= Ierrs HH#

netstat -a |n:

netstat -a |nT>yPWSVD4,#

g{;P -a j>,G4+;aT>~qwxL9CDWSV#Hg:
# netstat -a
Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp4 0 0 *.daytime *.* LISTEN
tcp 0 0 *.ftp *.* LISTEN
tcp 0 0 *.telnet *.* LISTEN
tcp4 0 0 *.time *.* LISTEN
tcp4 0 0 *.sunrpc *.* LISTEN
tcp 0 0 *.exec *.* LISTEN
tcp 0 0 *.login *.* LISTEN
tcp 0 0 *.shell *.* LISTEN
tcp4 0 0 *.klogin *.* LISTEN
tcp4 0 0 *.kshell *.* LISTEN
tcp 0 0 *.netop *.* LISTEN
tcp 0 0 *.netop64 *.* LISTEN
tcp4 0 1028 brown10.telnet remote_client.mt.1254 ESTABLISHED
tcp4 0 0 *.wsmserve *.* LISTEN
udp4 0 0 *.daytime *.*
udp4 0 0 *.time *.*
udp4 0 0 *.sunrpc *.*
udp4 0 0 *.ntalk *.*
udp4 0 0 *.32780 *.*
Active UNIX domain sockets
SADR/PCB Type Recv-Q Send-Q Inode Conn Refs Nextref Addr
71759200 dgram 0 0 13434d00 0 0 0 /dev/SRC
7051d580
71518a00 dgram 0 0 183c3b80 0 0 0 /dev/.SRC-unix/SRCCwfCEb

I9C netstat -ao |n4i4?vWSVDj8E"#ZTB>}P,ftp WSVKPZdC* jumbo !D


'WT+xJdwO:
# netstat -ao

Active Internet connections (including servers)


Proto Recv-Q Send-Q Local Address Foreign Address (state)
[...]

tcp4 0 0 server1.ftp client1.33122 ESTABLISHED

so_options: (REUSEADDR|OOBINLINE)
so_state: (ISCONNECTED|PRIV)
timeo:0 uid:0
so_special: (LOCKBALE|MEMCOMPRESS|DISABLE)
so_special2: (PROC)
sndbuf:

250 T\\m8O
hiwat:134220 lowat:33555 mbcnt:0 mbmax:536880
rcvbuf:
hiwat:134220 lowat:1 mbcnt:0 mbmax:536880
sb_flags: (WAIT)
TCP:
mss:8948 flags: (NODELAY|RFC1323|SENT_WS|RCVD_WS|SENT_TS|RCVD_TS)

tcp4 0 0 server1.telnet sig-9-49-151-26..2387 ESTABLISHED

so_options: (REUSEADDR|KEEPALIVE|OOBINLINE)
so_state: (ISCONNECTED|NBIO)
timeo:0 uid:0
so_special: (NOUAREA|LOCKBALE|EXTPRIV|MEMCOMPRESS|DISABLE)
so_special2: (PROC)
sndbuf:
hiwat:16384 lowat:4125 mbcnt:0 mbmax:65536
sb_flags: (SEL|NOINTR)
rcvbuf:
hiwat:66000 lowat:1 mbcnt:0 mbmax:264000
sb_flags: (SEL|NOINTR)
TCP:
mss:1375

tcp4 0 925 en6host1.login en6host2.1023 ESTABLISHED

so_options: (REUSEADDR|KEEPALIVE|OOBINLINE)
so_state: (ISCONNECTED|NBIO)
timeo:0 uid:0
so_special: (NOUAREA|LOCKBALE|EXTPRIV|MEMCOMPRESS|DISABLE)
so_special2: (PROC)
sndbuf:
hiwat:16384 lowat:16384 mbcnt:3216 mbmax:65536
sb_flags: (SEL|NOINTR)
rcvbuf:
hiwat:130320 lowat:1 mbcnt:0 mbmax:521280
sb_flags: (SEL|NOINTR)
TCP:
mss:1448 flags: (RFC1323|SENT_WS|RCVD_WS|SENT_TS|RCVD_TS)

tcp 0 0 *.login *.* LISTEN

so_options: (ACCEPTCONN|REUSEADDR)
q0len:0 qlen:0 qlimit:1000 so_state: (PRIV)
timeo:0 uid:0
so_special: (LOCKBALE|MEMCOMPRESS|DISABLE)
so_special2: (PROC)
sndbuf:
hiwat:16384 lowat:4096 mbcnt:0 mbmax:65536
rcvbuf:
hiwat:16384 lowat:1 mbcnt:0 mbmax:65536
sb_flags: (SEL)
TCP:
mss:512

tcp 0 0 *.shell *.* LISTEN

so_options: (ACCEPTCONN|REUSEADDR)
q0len:0 qlen:0 qlimit:1000 so_state: (PRIV)
timeo:0 uid:0
so_special: (LOCKBALE|MEMCOMPRESS|DISABLE)
so_special2: (PROC)
sndbuf:
hiwat:16384 lowat:4096 mbcnt:0 mbmax:65536
rcvbuf:

xgT\ 251
hiwat:16384 lowat:1 mbcnt:0 mbmax:65536
sb_flags: (SEL)
TCP:
mss:512

tcp4 0 6394 brown10.telnet remote_client.mt.1254 ESTABLISHED

so_options: (REUSEADDR|KEEPALIVE|OOBINLINE)
so_state: (ISCONNECTED|NBIO)
timeo:0 uid:0
so_special: (NOUAREA|LOCKBALE|EXTPRIV|MEMCOMPRESS|DISABLE)
so_special2: (PROC)
sndbuf:
hiwat:16384 lowat:4125 mbcnt:65700 mbmax:65536
sb_flags: (SEL|NOINTR)
rcvbuf:
hiwat:16500 lowat:1 mbcnt:0 mbmax:66000
sb_flags: (SEL|NOINTR)
TCP:
mss:1375

udp4 0 0 *.time *.*

so_options: (REUSEADDR)
so_state: (PRIV)
timeo:0 uid:0
so_special: (LOCKBALE|DISABLE)
so_special2: (PROC)
sndbuf:
hiwat:9216 lowat:4096 mbcnt:0 mbmax:36864
rcvbuf:
hiwat:42080 lowat:1 mbcnt:0 mbmax:168320
sb_flags: (SEL)

[...]

Active UNIX domain sockets


SADR/PCB Type Recv-Q Send-Q Inode Conn Refs Nextref Addr
71759200 dgram 0 0 13434d00 0 0 0 /dev/SRC
7051d580
so_state: (PRIV)
timeo:0 uid:0
so_special: (LOCKBALE)
so_special2: (PROC)
sndbuf:
hiwat:8192 lowat:4096 mbcnt:0 mbmax:32768
rcvbuf:
hiwat:45000 lowat:1 mbcnt:0 mbmax:180000
sb_flags: (SEL)

71518a00 dgram 0 0 183c3b80 0 0 0 /dev/.SRC-unix/SRCCwfCEb7051d400


so_state: (PRIV)
timeo:0 uid:0
so_special: (LOCKBALE)
so_special2: (PROC)
sndbuf:
hiwat:16384 lowat:4096 mbcnt:0 mbmax:65536
rcvbuf:
hiwat:8192 lowat:1 mbcnt:0 mbmax:32768
sb_flags: (SEL)

[...]

ZTO>}P,* jumbo !dCKJdw,bG MSS 5\sD-r,2GhC rfc1323 D-r#

252 T\\m8O
netstat -m:

K netstat /}T> mbuf Zf\m}LyG<D3FE"#

netstat -m |nDdvPnPCD3FE"GT> requests for mbufs denied DF}wM failed PPDG


c5#g{4T> requests for mbufs denied,rK53O(GKP AIX 4.3.2 r|_f>D SMP 53;
vZT\=fD-r,1!ivBXUK+V3FE"#*tC+V3FE",k+ no N} extended_netstats
h* 1#|D /etc/rc.net D~"XB}<53IxPKhC#;x,tC extended_netstats wT5MK SMP
53DT\#?R(i+ extended_netstats 5hC* 0#

TB>}T>K extended_netstats hC* 0 1 netstat -m dvDZ;?V:


# netstat -m

Kernel malloc statistics:

******* CPU 0 *******


By size inuse calls failed delayed free hiwat freed
32 132 1384 0 0 124 2320 0
64 53 1778 0 0 11 1160 0
128 27 4552 0 0 485 580 0
256 3153 27577974 0 0 1375 1392 43
512 31 787811 0 0 137 145 1325
1024 14 933442 0 0 354 362 2
2048 3739 4710181 0 0 361 362 844
4096 8 381861 0 0 435 435 508
8192 2 215908 0 0 10 36 0
16384 512 201880 0 0 77 87 750

******* CPU 1 *******


By size inuse calls failed delayed free hiwat freed
32 156 1378 0 0 228 2320 0
64 65 1784 0 0 63 1160 0
128 42 3991 0 0 470 580 0
256 34 25022240 0 0 1374 1392 44
512 53 594457 0 0 139 145 1048
1024 19 890741 0 0 357 362 0
2048 361 4703223 0 0 361 362 844
4096 2 377020 0 0 435 435 648
8192 0 213864 0 0 12 36 0
16384 0 199239 0 0 75 87 963

***** Allocations greater than 16384 Bytes *****

By size inuse calls failed delayed free hiwat freed


65536 2 0 0 0 0 4096 0

Streams mblk statistic failures:


0 high priority mblk failures
0 medium priority mblk failures
0 low priority mblk failures

g{+VD3FE";P&Zr*4,,xzk7(;\xD mbuf ksD\}MIT?v CPU BfD failed


PPD5`~S#g{ netstat -m |nmwT mbuf r/:Dks'\rb\x,rI\h*9C no -o
thewall=NewValue |nvS thewall D5#kNDZ 242 3D:mbuf \m$_;TKbPX thewall M maxmbuf
D9CD|`j8E"#

AIX 4.3.3 .s,MvSK delayed bvP#g{ mbuf Dks_8(K M_WAIT j>,G4g{ mbuf ;
IC,r_Lxk]_4,,1= mbuf ;ME"IIK_L9C*9#failed F}wZKivB;a]v;
+G delayed P+]v#Z AIX 4.3.3 .0,failed F}w,y;a]v,+G;P delayed P#

xgT\ 253
xR,g{10VdDxgf"wDs!G thewall D 85% D6'Z,zrmk*vS thewall D5#g{
thewall D5vS,r9C vmstat |n`S\DZf9C?,T7(vSC5T\eZfT\GqP:f0l#

g{SU=ks1:ex;IC,rCks\I\*'(*i4JdwGq5J*zKE"|,kNDJdw
#G!;c,g{ mbuf Dks=8(,Z;P mbuf IT"49CDivB,|ITH} mbuf U
3FE")
P#byMa9Cks=xk/_4,,+;aw*;\xDksxPF}#

g{''ksD}?VxvS,I\Gr*53vVK mbuf 9)#*KPzZ7YJby4,I+ no |n


N} net_malloc_police hC* 1,"RI+j6* 254 DzYR3k trace |n;p9C#

Vd;v mbuf rG/:w"L(s,|IT;&CLryME#";Gb}bv:exDL(,+|i9x


53,xG+|CEZ;vyZ:exs!DTIPmP#B;NYU=ks:ex1,Ma+|STIPm
P%},byM\bKL(D/w*z#1UPPmPD:ex}?o=ns5s,!Z 4096 D:ex+O
"*3s!D%*,by|GIb}L("59=53#1:ex59=531,freed P]v#g{ freed D
5Vxvs,G4O^5M+M#_^5y]53OD RAM }?xPjH#

netstat -M |n:

netstat -M |nT>xgZfD/:X3FE"#

BfD>}T>K netstat -M |nDdv:


# netstat -M
Cluster pool Statistics:

Cluster Size Pool Size Calls Failed Inuse Max Outcount


131072 0 0 0 0 0
65536 0 0 0 0 0
32768 0 0 0 0 0
16384 0 0 0 0 0
8192 0 191292 3 0 3
4096 0 196021 3 0 3
2048 0 140660 4 0 2
1024 0 2 1 0 1
512 0 2 1 0 1
131072 0 0 0 0 0
65536 0 0 0 0 0
32768 0 0 0 0 0
16384 0 0 0 0 0
8192 0 193948 2 0 2
4096 0 191122 3 0 3
2048 0 145477 4 0 2
1024 0 0 0 0 0
512 0 2 1 0 1

netstat -v |n:

netstat -v |nT>}&ZYw4,D?;vyZ+2}]47SZ(CDLI)Dh8}/LrD3FE"#

I9C tokstat"entstat"fddistat r atmstat |n4ksX(ZSZD(f#

?vSZ<P|TmDX(E"M;)(CE"#BfD>}T>K netstat -v |nDnF7MT+x?V;


d{SZ?V`F#TZ;,DJdwxT,3FE"aPy;,#nX*DdvVNIC_AT>#
# netstat -v
-------------------------------------------------------------
ETHERNET STATISTICS (ent1) :
Device Type: 10/100 Mbps Ethernet PCI Adapter II (1410ff01)
Hardware Address: 00:09:6b:3e:00:55
Elapsed Time: 0 days 17 hours 38 minutes 35 seconds

254 T\\m8O
Transmit Statistics: Receive Statistics:
-------------------- -------------------
Packets: 519 Packets: 30161
Bytes: 81415 Bytes: 7947141
Interrupts: 2 Interrupts: 29873
Transmit Errors: 0 Receive Errors: 0
Packets Dropped: 0 Packets Dropped: 0
Bad Packets: 0
Max Packets on S/W Transmit Queue: 3
S/W Transmit Queue Overflow: 0
Current S/W+H/W Transmit Queue Length: 1

Broadcast Packets: 3 Broadcast Packets: 29544


Multicast Packets: 2 Multicast Packets: 42
No Carrier Sense: 0 CRC Errors: 0
DMA Underrun: 0 DMA Overrun: 0
Lost CTS Errors: 0 Alignment Errors: 0
Max Collision Errors: 0 No Resource Errors: 0
Late Collision Errors: 0 Receive Collision Errors: 0
Deferred: 0 Packet Too Short Errors: 0
SQE Test: 0 Packet Too Long Errors: 0
Timeout Errors: 0 Packets Discarded by Adapter: 0
Single Collision Count: 0 Receiver Start Count: 0
Multiple Collision Count: 0
Current HW Transmit Queue Length: 1

General Statistics:
-------------------
No mbuf Errors: 0
Adapter Reset Count: 0
Adapter Data Rate: 200
Driver Flags: Up Broadcast Running
Simplex AlternateAddress 64BitSupport
ChecksumOffload PrivateSegment DataRateSet

10/100 Mbps Ethernet PCI Adapter II (1410ff01) Specific Statistics:


--------------------------------------------------------------------
Link Status: Up
Media Speed Selected: Auto negotiation
Media Speed Running: 100 Mbps Full Duplex
Receive Pool Buffer Size: 1024
Free Receive Pool Buffers: 1024
No Receive Pool Buffer Errors: 0
Receive Buffer Too Small Errors: 0
Entries to transmit timeout routine: 0
Transmit IPsec packets: 0
Transmit IPsec packets dropped: 0
Receive IPsec packets: 0
Receive IPsec packets dropped: 0
Inbound IPsec SA offload count: 0
Transmit Large Send packets: 0
Transmit Large Send packets dropped: 0
Packets with Transmit collisions:
1 collisions: 0 6 collisions: 0 11 collisions: 0
2 collisions: 0 7 collisions: 0 12 collisions: 0
3 collisions: 0 8 collisions: 0 13 collisions: 0
4 collisions: 0 9 collisions: 0 14 collisions: 0
5 collisions: 0 10 collisions: 0 15 collisions: 0
-------------------------------------------------------------
ETHERNET STATISTICS (ent0) :
Device Type: 10/100/1000 Base-TX PCI-X Adapter (14106902)
Hardware Address: 00:02:55:6a:a5:dc
Elapsed Time: 0 days 17 hours 0 minutes 26 seconds

Transmit Statistics: Receive Statistics:


-------------------- -------------------

xgT\ 255
Packets: 15 Packets: 14
Bytes: 1037 Bytes: 958
Interrupts: 0 Interrupts: 13
Transmit Errors: 0 Receive Errors: 0
Packets Dropped: 0 Packets Dropped: 0
Bad Packets: 0
Max Packets on S/W Transmit Queue: 4
S/W Transmit Queue Overflow: 0
Current S/W+H/W Transmit Queue Length: 0

Broadcast Packets: 1 Broadcast Packets: 0


Multicast Packets: 1 Multicast Packets: 0
No Carrier Sense: 0 CRC Errors: 0
DMA Underrun: 0 DMA Overrun: 0
Lost CTS Errors: 0 Alignment Errors: 0
Max Collision Errors: 0 No Resource Errors: 0
Late Collision Errors: 0 Receive Collision Errors: 0
Deferred: 0 Packet Too Short Errors: 0
SQE Test: 0 Packet Too Long Errors: 0
Timeout Errors: 0 Packets Discarded by Adapter: 0
Single Collision Count: 0 Receiver Start Count: 0
Multiple Collision Count: 0
Current HW Transmit Queue Length: 0

General Statistics:
-------------------
No mbuf Errors: 0
Adapter Reset Count: 0
Adapter Data Rate: 2000
Driver Flags: Up Broadcast Running
Simplex 64BitSupport ChecksumOffload
PrivateSegment LargeSend DataRateSet

10/100/1000 Base-TX PCI-X Adapter (14106902) Specific Statistics:


--------------------------------------------------------------------
Link Status: Up
Media Speed Selected: Auto negotiation
Media Speed Running: 1000 Mbps Full Duplex
PCI Mode: PCI-X (100-133)
PCI Bus Width: 64-bit
Jumbo Frames: Disabled
TCP Segmentation Offload: Enabled
TCP Segmentation Offload Packets Transmitted: 0
TCP Segmentation Offload Packet Errors: 0
Transmit and Receive Flow Control Status: Enabled
XON Flow Control Packets Transmitted: 0
XON Flow Control Packets Received: 0
XOFF Flow Control Packets Transmitted: 0
XOFF Flow Control Packets Received: 0
Transmit and Receive Flow Control Threshold (High): 32768
Transmit and Receive Flow Control Threshold (Low): 24576
Transmit and Receive Storage Allocation (TX/RX): 16/48

;vT>DVNhvgB:
v Transmit Errors M Receive Errors

bvh8yv=Ddk / dvms}?#bvVN3FyPIZ2~rGxgJOlID;I&"MDN}#

"M;I&2IT5M53DT\#
v Max Packets on S/W Transmit Queue

x-Zm~"MSPPESDwvE"|Dns}?#

256 T\\m8O
g{ESH}Dns"M?M10SPDs!(xmt_que_size)`H,bmwSPDs!;OJ#bmwS
PZ3vcOQ-+z#

*liSPD10s!,k9C lsattr -El adapter |n(dP adapter I* tok0 r ent0)#r*SPG


Mh8}/Lr0SZDJdw`X*D,yT*9CJdw{F,x;GSZ{F#9C SMIT r_
chdev |nITDdSPDs!#
v S/W Transmit Queue Overflow

b"E"|D}?Sm~"MSPPgv#Gc5h*Z Max Packets on S/W Transmit Queue o=


xmt_que_size 1yh*D`,Yw#XkvS"MSPDs!#
v Broadcast Packets

c%E"|D}?SU^s#

g{c%E"|D5O_,M+|MSUE"|D\}`HO#SU=Dc%E"|&CHSU=DE"
|\?D 20% 9*!#g{d5O_,I\5>ExgD:XOX,Z9C`c+M#9C IP `c+M
IT+E""M=;iwzO,x;h*T?;v$wiI1xPX7jGM%@"ME"#
v DMA Overrun

1Jdw9C DMA +E"|Ek53Zf,"R+d}L4jI1,DMA Overrun 3FE"+]v#PI


CD53:exITEkE"|,+ DMA Yw;\jI#1 MCA \_TZJdw45}Z1&,;\;
TE"|9C DMA 1avVbViv#Z;vX:XD53P,JdwZ\_OD;CG\X|D#j<
ivB,\_OOMe[EDJdwIZ5PO_D\_EH(,9CD\_?\s,TAZZO_e[
EDJdw;\SU=~q#HdG1OMe[DJdwG ATM rG SSA Jdw1,|GbViv#
v Max Collision Errors

IZ}`e;<BD;I&"MDN}#v=De;N},}KJdwODXTN}#
v Late Collision Errors

IZONe;mslID;I&"MD}?#
v Timeout Errors

IZJdw(f,1ms<BD;I&"MD}?#
v Single Collision Count

Z"M}LPP%@e;Db"E"|}?#
v Multiple Collision Count

Z"M}LPP`7e;Db"E"|}?#
v Receive Collision Errors

ZSU}LPPe;msDSkE"|D}?#
v No mbuf Errors

h8}/Lr;PIC mbuf DN}3F#b(#"zZSUYwP,}/LrXkZf:ex4&mk>


E"|DivB#g{ykss!D mbuf X*U,bvE"|Ma;>}#I9C netstat -m |n7O
>},"]vN} thewall#

No mbuf Errors 5GX(ZSZD,"R;,Z netstat -m dvPD requests for mbufs denied#k


HO netstat -m M netstat -v(T+xMnF7?V)|n>}D5#

xgT\ 257
*7(xgT\Jb,kli netstat -v dvPDyP Error F}#

=SD<r:
v *li}XDT+xxg,kFc((} netstat -v |n):
(nse;ms + ,1ms)/ "ME"|?

g{a{sZ 5%,Mh*XBDixg4=b:X#
v _xg:XDm;8jG((}|n netstat -v):

netstat -v dv(TZT+x)PDe;\}GqsZ+dDE"|\}D 10%,gBy>:


Number of collisions / Number of Transmit Packets > 0.1

netstat -p protocol:

netstat -p protocol T>KPX* protocol d?y8(D5(udp"tcp"ip"icmp)D3FE",Cd?IT


G-iD(C{F,2ITGdp{#

Z /etc/protocols D~PPvK;)-i{FM|GDz{#;vUl&mw,;P*(fD}]#g{;P
3FLr,G4-iN?8(5DLr(fMG;I*D#

BfD}ST>DG ip -iDdv:
# netstat -p ip
ip:
45775 total packets received
0 bad header checksums
0 with size smaller than minimum
0 with data size < data length
0 with header length < data size
0 with data length < header length
0 with bad options
0 with incorrect version number
0 fragments received
0 fragments dropped (dup or out of space)
0 fragments dropped after timeout
0 packets reassembled ok
45721 packets for this host
51 packets for unknown/unsupported protocol
0 packets forwarded
4 packets not forwardable
0 redirects sent
33877 packets sent from this host
0 packets sent with fabricated ip header
0 output packets dropped due to no bufs, etc.
0 output packets discarded due to no route
0 output datagrams fragmented
0 fragments created
0 datagrams that can’t be fragmented
0 IP Multicast packets dropped due to no receiver
0 successful path MTU discovery cycles
1 path MTU rediscovery cycle attempted
3 path MTU discovery no-response estimates
3 path MTU discovery response timeouts
1 path MTU discovery decrease detected
8 path MTU discovery packets sent
0 path MTU discovery memory allocation failures
0 ipintrq overflows 0 with illegal source
0 packets processed by threads
0 packets dropped by threads
0 packets dropped due to the full socket receive buffer

258 T\\m8O
0 dead gateway detection packets sent
0 dead gateway detection packet allocation failures
0 dead gateway detection gateway allocation failures

;vT>DVNhvgB:
v Total Packets Received

SU=D IP }](\}#
v Bad Header Checksum or Fragments Dropped

g{dvmw^'(7#iM r >}N GIZX4r,vUdlID,bMmwxg+dE"|vV}s


rGh8}/LrSUE"|DSP;Pc;s#
v Fragments Received

U=DN\}#
v Dropped after Timeout

g{,1s>}DN*Gc,G4 ip NDF}1dZyPD}](N=o.0Mar*xg1&xU9#
*\bKiv,I9C no |n4vs ipfragttl xgN}D5#m;v-rI\G mbuf D;clID,b
M*vS thewall DN}5#
v Packets Sent from this Host

Ibv534(""Mv%D IP }](}?#bvF};|(*"D}]((Iw?*")
#
v Fragments Created

"M IP }](153P4(DND}?#

i4 IP D3FE"1,ND;BU=DE"|MU=DVNDHJ#TZ!D MTU xgP;v<r,g{


P 10% r_|`DE"|xPKVN,G4zM&Cx;=wiT7(d-r#g{P\s}?DVN,Gm
w6Lwz IP cOD-i}Zr IP +dHSZD MTU 5*sD}]#xg76PDxXr7IwI\2
PHxgPd{Zc!C`D MTU 5#TZ"MDE"|M4(DNb2,yJC#

VNa<B CPU Dnb:X,yT7(|Dpr\X*#**@;)&CLr>mM\;<BVN#Hg,


;v"M!}?}]D&CLrM\;<BvVVN#;x,g{z*@&CLr}Z"Ms?D}],,1
T;vVVN,Mh*7(|Dpr#;x,g{z*@&CLr}Z"Ms?D}],,1T;vVVN,
Mh*7(|Dpr#I\Gr*9CD MTU s!;G53PydCD MTU s!#

BfD}ST>DG udp -iDdv:


# netstat -p udp
udp:
11623 datagrams received
0 incomplete headers
0 bad data length fields
0 bad checksums
620 dropped due to no socket
10989 broadcast/multicast datagrams dropped due to no socket
0 socket buffer overflows
14 delivered
12 datagrams output

BfGX*D3FE":
v Bad Checksums

xgT\ 259
^'#iMI\GIZ2~e(rGgBJOlID#
v Dropped Due to No Socket

G);Pr*KZDWSVySU=D UDP }](\}#rx,O(a"M ICMP ?jX7^(=o - K


Z^(=oDE"#+Gg{U=D UDP }](Gc%}](,M;azz ICMP ms#g{bv5O_,
Mh*li&CLrgNgN&mWSVD#
v Socket Buffer Overflows

Socket Buffer Overflows(WSV:exgv)I\GIZ"MMSU UDP WSV;c"nfsd X$Lr}


Y,r_G nfs_socketsize"udp_recvspace M sb_max 5}!xlI#

g{ netstat -p udp |nmwWSVgv,rI\h*vS~qwO nfsd X$LrD}?#WH,li\


0l53D CPU r I/O %MH,;s9C no -a |ni$d{(EcD(ihC#g{53&Z%M4,,
G4zXk5M|D:XrGvSJ4#

BfD}ST>DG tcp -iDdv:


# netstat -p tcp
tcp:
576 packets sent
512 data packets (62323 bytes)
0 data packets (0 bytes) retransmitted
55 ack-only packets (28 delayed)
0 URG only packets
0 window probe packets
0 window update packets
9 control packets
0 large sends
0 bytes sent using largesend
0 bytes is the biggest largesend
719 packets received
504 acks (for 62334 bytes)
19 duplicate acks
0 acks for unsent data
449 packets (4291 bytes) received in-sequence
8 completely duplicate packets (8 bytes)
0 old duplicate packets
0 packets with some dup. data (0 bytes duped)
5 out-of-order packets (0 bytes)
0 packets (0 bytes) of data after window
0 window probes
2 window update packets
0 packets received after close
0 packets with bad hardware assisted checksum
0 discarded for bad checksums
0 discarded for bad header offset fields
0 discarded because packet too short
0 discarded by listeners
0 discarded due to listener’s queue full
71 ack packet headers correctly predicted
172 data packet headers correctly predicted
6 connection requests
8 connection accepts
14 connections established (including accepts)
6 connections closed (including 0 drops)
0 connections with ECN capability
0 times responded to ECN
0 embryonic connections dropped
504 segments updated rtt (of 505 attempts)
0 segments with congestion window reduced bit set
0 segments with congestion experienced bit set
0 resends due to path MTU discovery

260 T\\m8O
0 path MTU discovery terminations due to retransmits
0 retransmit timeouts
0 connections dropped by rexmit timeout
0 fast retransmits
0 when congestion window less than 4 segments
0 newreno retransmits
0 times avoided false fast retransmits
0 persist timeouts
0 connections dropped due to persist timeout
16 keepalive timeouts
16 keepalive probes sent
0 connections dropped by keepalive
0 times SACK blocks array is extended
0 times SACK holes array is extended
0 packets dropped due to memory allocation failure
0 connections in timewait reused
0 delayed ACKs for SYN
0 delayed ACKs for FIN
0 send_and_disconnects 0 spliced connections
0 spliced connections closed
0 spliced connections reset
0 spliced connections timeout
0 spliced connections persist timeout
0 spliced connections keepalive timeout

BfGX*D3FE":
v Packets Sent
v Data Packets
v Data Packets Retransmitted
v Packets Received
v Completely Duplicate Packets
v Retransmit Timeouts

TZ TCP 3FE",HO"MDE"|}MX"DE"|}#g{X"DE"|}sZ\"ME"|?D
10-15%,TCP MavV,1,bmwxgw?:X\s,Z,1.0;\5X&pEE(ACK)
#SUDxZ
cD?1rG;cDxgJO2a<B TCP X",bavsxgw?,xxgT\x4Kx;=DJb#

,y,h*HOSU=DE"|?Mj{4FDE"|?#g{Z"MxZcOD TCP ZSSUZcU= ACK


EE.0MQ-,1,|aX"bvE"|#1SUZcnUSU=yPX"DE"|1axP4F#g{4
FE"|D}?,vK 10-15%,G4bvJbI\9GIZxgw?}srGSUZcD?1JbylID#
4FE"|avSxgw?#

g{ TCP "v;vE"|+;P41SU= ACK EE,MazIX",1D;v?#;s|aXB"ME


"|#NNsxX"<aK5]v#b)VxDX"Yw9C CPU D{CJ|_,xRg{SUZc;PU
=E"|,|nUa;>}t#

netstat -s:

netstat -s |nT>K?v-iD3FE"(x netstat -p |nT>DG8(-iD3FE")


#

netstat -s -s:

;P}=ST5wD -s -s !nvT> netstat -s |ndvPGcDG)P,Sx9iRmsF}|]W#

netstat -s -Z:

xgT\ 261
bG netstat |n;P}=5wD&\#|+ netstat -s |nDyP3FE"F}wec#

netstat -r:

m;vMT\`XDN}nGKG(eDns76"M%*(PMTU)DT>#9C netstat -r |nT>K5#

TZ=v(}`Xxg76(EDwz45,g{"MDE"|H76XNN;vx7Dn! MTU 5*s,


MaTbvE"|xPVN#r*E"|DVNa<BxgT\DB5,yT;cZ{DGIC"MHxg7
6Xn!D MTU 9*!DE"|,Sx4\bvVVN#bvs!F*G76 MTU#

BfGCZ;T>7ImD netstat -r -f inet |nD>}:


# netstat -r -f inet
Routing tables
Destination Gateway Flags Refs Use If PMTU Exp Groups

Route tree for Protocol Family 2 (Internet):


default res101141 UGc 0 0 en1 - -
ausdns01.srv.ibm res101141 UGHW 1 4 en1 1500 -
10.1.14.0 server1 UHSb 0 0 en1 - - =>
10.1.14/24 server1 U 3 112 en1 - -
brown17 loopback UGHS 6 110 lo0 - -
10.1.14.255 server1 UHSb 0 0 en1 - -
magenta res1031041 UGHW 1 42 en1 - -
127/8 loopback U 6 16633 lo0 - -
192.1.6.0 en6host1 UHSb 0 0 en0 - - =>
192.1.6/24 en6host1 U 0 17 en0 - -
en6host1 loopback UGHS 0 16600 lo0 - -
192.1.6.255 en6host1 UHSb 0 0 en0 - -
192.6.0.0 fc0host1 UHSb 0 0 fc0 - - =>
192.6.0/24 fc0host1 U 0 20 fc0 - -
fc0host1 loopback UGHS 0 0 lo0 - -
192.6.0.255 fc0host1 UHSb 0 0 fc0 - -

netstat -D:

I9C -D !ni4xv(ES53P?;cDE"|,9PZ?;c*zDE"|#
# netstat -D

Source Ipkts Opkts Idrops Odrops


-------------------------------------------------------------------------------
ent_dev1 32556 727 0 0
ent_dev2 0 1 0 0
ent_dev3 0 1 0 0
fcnet_dev0 24 22 0 0
fcnet_dev1 0 0 0 0
ent_dev0 14 15 0 0
---------------------------------------------------------------
Devices Total 32594 766 0 0
-------------------------------------------------------------------------------
ent_dd1 32556 727 0 0
ent_dd2 0 2 0 1
ent_dd3 0 2 0 1
fcnet_dd0 24 22 0 0
fcnet_dd1 0 0 0 0
ent_dd0 14 15 0 0
---------------------------------------------------------------
Drivers Total 32594 768 0 2
-------------------------------------------------------------------------------
fcs_dmx0 0 N/A 0 N/A
fcs_dmx1 0 N/A 0 N/A
ent_dmx1 31421 N/A 1149 N/A
ent_dmx2 0 N/A 0 N/A
ent_dmx3 0 N/A 0 N/A

262 T\\m8O
fcnet_dmx0 0 N/A 0 N/A
fcnet_dmx1 0 N/A 0 N/A
ent_dmx0 14 N/A 0 N/A
---------------------------------------------------------------
Demuxer Total 31435 N/A 1149 N/A
-------------------------------------------------------------------------------
IP 46815 34058 64 8
IPv6 0 0 0 0
TCP 862 710 9 0
UDP 12412 13 12396 0
---------------------------------------------------------------
Protocols Total 60089 34781 12469 8
-------------------------------------------------------------------------------
en_if1 31421 732 0 0
fc_if0 24 22 0 0
en_if0 14 20 0 6
lo_if0 33341 33345 4 0
---------------------------------------------------------------
Net IF Total 64800 34119 4 6
-------------------------------------------------------------------------------
(Note: N/A -> Not Applicable)

h8cT>DGxkJdwDE"|}?"<vJdwDE"|}?MZdkdvKZ*'DE"|?#Jd
wmsPwV-r,9C netstat -v |nITi4|`j8E"#

}/LrcT>Kh8}/Lr*?;vJdw&mDE"|?#K& netstat -v |nDdvTZ7(TD)


msxPKF}G#PC#

`7VkwD5T>DG`7VkcP3FDE"|}?,xRbyD Idrops (#m>K(9CE"|;>


}(Hg,Netware r DecNet E"|MGr*|G;P;}ZlbD53y&mE;>}D)
#

-icDj8E"IZ netstat -s |nDdvP4=#

":Z3Fa{DdvP,ZVN5PT>D N/A m>;IC#TZ NFS/RPC 3FE",(} RPC +]D


+kE"|D}?k(} NFS +]DE"|`,,rKb)}?;aZ NFS/RPC Total VNP[S,Z
G* N/A#NFS ;PX(Z NFS M RPC Db"E"|F}wrb"E"|*zF}w#rx,wTD
F}w<PT N/A DVN5,xR[FF}fEZ NFS/RPC \MVNP#

netpmon |n
netpmon |n9CzY$_ITC=Z;v1ddtZxgYwDj8Z]#r*|9CKzY$_,yT
netpmon ;\IyC'rG53$wiD3vI1KP#

netpmon |n;\Md{NNyZzYDT\|n,1KP,Hg tprof M filemon#Z|D(##=B,


netpmon |n;cZKP`X;vr`v&CLrrG53|n1KP#

netpmon |nw*GkTBfD53/w:
v CPU 9C4v
– xLMPO&mLr
– P`YLrMxg`X*
– lIUP4,D-r
v xgh8}/ I/O KZ
– (}yPDT+x"Token-Ring MbKV<}]SZxgh8}/4lbT I/O KZDYw#
– Z I/O KZ+dDivB,|n`X9C4v"SP$HM?jwz#TZSU=Dj6,|n2a`X
`7VkcD1d#

xgT\ 263
v xgWSVwC
– `XxgWSVOD send()"recv()"sendto()"recvfrom()"sendmsg()"read() M write() SLr#
– Z$&mDy!O((rXxXFE"-i(ICMP)"+dXF-i(TCP)MC'}](-i
(UDP)D3FE"#
v NFS I/O KZ
– M'K:RPC ks"NFS A! / 4kks#
– ~qwK:?M'K"?D~"A! / 4kks#

BfPvDG*FcD?:
v Zh8}/6pOM"M / SUYw`X*Dl&1dMs!#
v MyP`MDxgWSVA! / 4k53wC`X*Dl&1dMs!#
v M NFS A!4k53wC`X*Dl&1dMs!#
v M NFS 6L}LwCks`X*Dl&1d#

*K7( netpmon |nGqQ20xRIC,ITKPgB|n:


# lslpp -lI perfagent.tools

9C netpmon |nITt/zYxL,I!C trcoff S|nxP]R,!C trcon S|nLxxP,U9


zYIC trcstop S|n#;)zYxLU9,netpmon |nM+|D((M=j<dv%*#

9C netpmon |n
netpmon |n+"4t/zY(}G9CK -d !n)
#

9C trcstop |nITU9zY#G1ITzIyPD8((f,xRaKv netpmon |n#ZM' - ~


qw#=B,9C netpmon |nITi4xguy0l\eT\#|ITZM'M~qwKKP#

netpmon |n\;S8(D~PA! I/O zY}],x;GS51DzYxLPA!#bVivB,netpmon


D(fMTD~DN=T53bv1NDxgYwxPKE(#1h*T6LzwODzYD~xPs&m,
r_;N1d4PzY}]U/m;N1dC4T|xPs&m,b1bVQz&mD=(M\PC&#

trcrpt -r |nXkTzYU>D~4P,"RX(r=m;vD~,gBy>:
# gennames > gennames.out
# trcrpt -r trace.out > trace.rpt

b1,;vw{}DzYG<D~Mx netpmon |n4((IO;v;G<DzYxLy6==D I/O KZ


/w,gBy>:
# netpmon -i trace.rpt -n gennames.out | pg

>}P,netpmon |nS trace.rpt dkD~A!D~53zYB~#r*zY}]Q-6==D~P,


netpmon |n";+|E=s(TcC&CLrKP#A!{vD~.s,xgn/(f+T>Zj<dvO
(Z>}P,G(}\@+x pg |n) #

g{ trace |nGx -C all j>KPD,rKP trcrpt |n12*x -C all j>(kNDZ 337 3D:q
=/4T trace -C dvD(f;) #

Z NFS ~qwOKPDTB netpmon |n+4P sleep |n,"Z 400 ks4((f#Zb(DdtZ,


T20P NFS DD~53 /nfs_mnt xP4F#
# netpmon -o netpmon.out -O all; sleep 400; trcstop

264 T\\m8O
g{P -O N}n,zMIT8(*zID(f`M#P'D(f`M5P:
cpu CPU 9C4v
dd xgh8}/ I/O KZ
so xgWSV I/O KZwC
nfs NFS I/O KZ
all byMzIKyPD(f#BfPvDG1!5#
# cat netpmon.out

Fri Mar 5 15:41:52 2004


System: AIX crusade Node: 5 Machine: 000353534C00

========================================================================

Process CPU Usage Statistics:


-----------------------------
Network
Process (top 20) PID CPU Time CPU % CPU %
----------------------------------------------------------
netpmon 45600 0.6995 1.023 0.000
nfsd 50090 0.5743 0.840 0.840
UNKNOWN 56912 0.1274 0.186 0.000
trcstop 28716 0.0048 0.007 0.000
gil 3870 0.0027 0.004 0.004
ksh 42186 0.0024 0.003 0.000
IBM.ServiceRMd 14966 0.0021 0.003 0.000
IBM.ERrmd 6610 0.0020 0.003 0.000
IBM.CSMAgentRMd 15222 0.0020 0.003 0.000
IBM.AuditRMd 12276 0.0020 0.003 0.000
syncd 4766 0.0020 0.003 0.000
sleep 28714 0.0017 0.002 0.000
swapper 0 0.0012 0.002 0.000
rpc.lockd 34942 0.0007 0.001 0.000
netpmon 28712 0.0006 0.001 0.000
trace 54622 0.0005 0.001 0.000
reaper 2580 0.0003 0.000 0.000
netm 3612 0.0002 0.000 0.000
aixmibd 4868 0.0001 0.000 0.000
xmgc 3354 0.0001 0.000 0.000
----------------------------------------------------------
Total (all processes) 1.4267 2.087 0.844
Idle time 55.4400 81.108

========================================================================

First Level Interrupt Handler CPU Usage Statistics:


---------------------------------------------------
Network
FLIH CPU Time CPU % CPU %
----------------------------------------------------------
external device 0.3821 0.559 0.559
PPC decrementer 0.0482 0.070 0.000
data page fault 0.0137 0.020 0.000
queued interrupt 0.0002 0.000 0.000
----------------------------------------------------------
Total (all FLIHs) 0.4441 0.650 0.559

========================================================================

Second Level Interrupt Handler CPU Usage Statistics:


----------------------------------------------------
Network

xgT\ 265
SLIH CPU Time CPU % CPU %
----------------------------------------------------------
phxentdd32 2.4740 3.619 3.619
----------------------------------------------------------
Total (all SLIHs) 2.4740 3.619 3.619

========================================================================

Network Device-Driver Statistics (by Device):


---------------------------------------------
----------- Xmit ----------- -------- Recv ---------
Device Pkts/s Bytes/s Util QLen Pkts/s Bytes/s Demux
------------------------------------------------------------------------------
ethernet 4 7237.33 10957295 0.0%27.303 3862.63 282624 0.2324

========================================================================

Network Device-Driver Transmit Statistics (by Destination Host):


----------------------------------------------------------------

Host Pkts/s Bytes/s


----------------------------------------
client_machine 7237.33 10957295

========================================================================

NFS Server Statistics (by Client):


----------------------------------
------ Read ----- ----- Write ----- Other
Client Calls/s Bytes/s Calls/s Bytes/s Calls/s
------------------------------------------------------------------------
client_machine 0.00 0 0.00 0 321.15
------------------------------------------------------------------------
Total (all clients) 0.00 0 0.00 0 321.15

========================================================================

Detailed Second Level Interrupt Handler CPU Usage Statistics:


-------------------------------------------------------------

SLIH: phxentdd32
count: 33256
cpu time (msec): avg 0.074 min 0.018 max 288.374 sdev 1.581

COMBINED (All SLIHs)


count: 33256
cpu time (msec): avg 0.074 min 0.018 max 288.374 sdev 1.581

========================================================================

Detailed Network Device-Driver Statistics:


------------------------------------------

DEVICE: ethernet 4
recv packets: 33003
recv sizes (bytes): avg 73.2 min 60 max 618 sdev 43.8
recv times (msec): avg 0.000 min 0.000 max 0.005 sdev 0.000
demux times (msec): avg 0.060 min 0.004 max 288.360 sdev 1.587
xmit packets: 61837
xmit sizes (bytes): avg 1514.0 min 1349 max 1514 sdev 0.7
xmit times (msec): avg 3.773 min 2.026 max 293.112 sdev 8.947

========================================================================

Detailed Network Device-Driver Transmit Statistics (by Host):


-------------------------------------------------------------

266 T\\m8O
HOST: client_machine (10.4.104.159)
xmit packets: 61837
xmit sizes (bytes): avg 1514.0 min 1349 max 1514 sdev 0.7
xmit times (msec): avg 3.773 min 2.026 max 293.112 sdev 8.947

========================================================================

Detailed NFS Server Statistics (by Client):


-------------------------------------------

CLIENT: client_machine
other calls: 2744
other times (msec): avg 0.192 min 0.075 max 0.311 sdev 0.025

COMBINED (All Clients)


other calls: 2744
other times (msec): avg 0.192 min 0.075 max 0.311 sdev 0.025

netpmon |nDdvI=V;,`MD(fiI:+V(fMj8(f#BfPvDG\e(fPmE":
v s`}}ZKPD}L
v Z;6pDPO&mLr
v Z~6pDPO&mLr
v xgh8}/Lr
v xgh8}/Lr"M
v TCP WSVwC
v NFS ~qwr_M'KE"

Z netpmon dvD*7T>DG\e(f,GZb?dtP"zDiv#8ZT(fa)K\eT(fD=
SE"#1!ivB,(f\^Zn`;\P 20 vP'Db?E"#(fPDyPE"4USnn>=n;
n>D3rSO=B@NPv#

netpmon |nD+V(f
IC netpmon |nyzID(f*<?VG;v(7,|jwKU0,wzDj6,M`X1dND$H(T
k*%;) #

(7sfGTyP8((f`MD\e(fM8ZT(f/#

"&mw9C3FE":

?;PhvM3vxL`XD"&mw9Civ#

}G8(K‘j8’( -v)bvI!n,qrZPmP;\|(n` 20 vP'D}L#(fD)2TyPxL


D"&mw9CivxPK\F,"(fK"&mwUP1d#UP1dDYVH}5IT(}+UP1d%
}b?dt,-}FcC=#"&mwD1d\MMbCD1ddt.dDnlGIZPO&mLrlID#

xg CPU YVHGC44PMxg`Xzky<CD\1dDYVH#

g{9CK -t j>,r9aT>_LD"&mw9Civ3FE"#tzZOv?vxLPsfDPhvKC
xLy5PD?v_LD"&mw9Civ#b)PPDVNMxLPDVNG;BD,{FVN}b#_L
;P|{#

Z>}(fP,+V"&mw9Civ(fPT>D Idle time YV}(81.104%)GI Idle time(55.4400)


}T 8 6D measured interval(8.54 kKT 8)FcC=D,r*K~qwPPKv"&mw#g{*i
4?v"&mwDn/,I9C sar"ps r_NNd{X(Z SMP D|n#`FDFc,yJCZ;yPx

xgT\ 267
Ly<CD\2D CPU %#Idle time GIZxg I/O lID#CPU Time D\M(55.4400 + 1.4267)M
measured interval DnlGIZPO&mLrM`&mwlID#>}(fmw,s?V"&mw9Ckx
gPX:(0.844 / 2.087) = 40.44%#

":TZ NFS ~qwD Process CPU Usage Statistics,g{\Dxg CPU % }T\D CPU % yCa{s
Z 0.5,rs?V"&mw9Ckxg`X#

K=(2G4xLi4"&mw9C"R;a9dv^ZX(LrDC=(#

Z;6PO&mLr"&mw9Civ3FE":

?;P<hvkZ;6PO&mLr(FLIH)`X*D"&mw9Civ#

Z(fD)2,TyP FLIH T"&mwD9CJxPKsM#


CPU Time
K FLIH y9CD"&mw1d\?
CPU %
KPO&mLr"&mw9C1d<\1dDYVH
Network CPU %
CPO&mLrIZ4Pxg`XB~y<C\F1DYVH

Z~6PO&mLr"&mw9Civ3FE":

?;P<hvkZ~6PO&mLr(SLIH)`X*D"&mw9Civ#(fDnsTyP SLIH D"&m


w9CivxPK\F#

4h8PvDxgh8}/Lr3FE":

netpmon |nICZ4(4h8Pvxgh8}/Lr3FE"D(f#

?;PhvD<GMxgh8`XDE"#
Device
Mh8`XDXbD~D{F
Xmit Pkts/s
?kS(}Ch8BMDE"|}
Xmit Bytes/s
?k(}Ch8"MDVZ}
Xmit Util
h8D1&1d,G<\F1DYVH
Xmit Qlen
H}-ICh8+dDksD}?,|GZ1dOD=y,|(10}Z+dD?V
Recv Pkts/s
?kS-ICh8ySU=DE"|
Recv Bytes/s
?kS-ICh8ySU=DVZ}
Recv Demux
Z`7VkcPy(QD1d,G\F1D;?V

268 T\\m8O
ZK>}P,Xmit QLen G 27.303#|D Recv Bytes/s G 10957295(10.5 MB ?k),S| 100 Mbps T
+xD_7^F#rK,ZbVivB,xg8u%M#

4?jwzPvDxgh8}/Lr+d3FE":

netpmon |nICZ4(4?jwzPvxgh8}/Lr+d3FE"D(f#

?;PhvD<GZh8}/6pOMX(D?jwz`X*D+dw?D}?#
Host ?jwz{F#9CGE(*)4m>;P7(wz{FD+d#
Pkts/s ?kS"M=bvwzODE"|}?#
Bytes/s
?kS"M=bvwzODVZ}#

xLD?v IP D TCP WSVwC3FE":

9CD?vrXx-i<PE"T>#

?;P<hvKM8(xL`X*Dbv-i`MDWSVOD read() M write() SLrD}?#Z(fD)


2?V,TC-iDyPWSVwCxPKsM#

4M'zPvD NFS ~qw3FE":

?;PhvDGI~qw&mD NFS /wD}?,|zmDG_eDM'K#Z(fD)2?V,TyPDM


'KxPKsM#

ZM'zO,NFS ~qwE"; NFS M'E"(?v~qwD NFS M'E"(D~)"NFS M'K RPC E


"(~qw)"NFS M'E"(xL))yf;#

netpmon Dj8(f
8ZT(fG*yP\ks(-O)(f`MxzzD#TZb)(f`M,}K\e(f.b9P8ZT(
f#\e(fPTZ?V`MDBq<P;vkZ`X,TZ\e(fPD?;vkZ,8ZT(f<,P;
vkZ#

Bq3FE"|(C`MDBq}?3F(Zl&1dMs!}]V<(g{JC).s)#V<E"|(y
5"n!5Mns5,9Pj<n#s<P}V.~D}]Z=y5"j<n~_.nM~_.M.d#s!
TVZ*%;xP((#l&1dTAk%;xP((#

Z~6PO&mLr"&mw9Civj83FE":

netpmon |nIzIT>Z~6PO&mLr"&mw9Civj83FE"D(f#

dvVNhvgB:
SLIH Z~6pDPO&mLrD{F
counts
C`MDPO}?
cpu time (msec)
K`MD&mPOD"&mw9Civ3FE"

4h8T>Dxgh8}/Lrj83FE":

netpmon |nIzIT>xgO?vh8Dxgh8}/Lrj83FE"D(f#
xgT\ 269
dvVNhvgB:
DEVICE
Mh8`X*DXbD~D76{
recv packets
(}Ch8SU=DE"|}?
recv sizes (bytes)
SU=DE"|s!3F
recv times (msec)
&mSU=DE"|yh*DX&1d3F
demux times (msec)
Z`7VkcP&mSU=DE"|yh*D1d3F
xmit packets
ICh8y"MDE"|}?
xmit sizes (bytes)
"ME"|Ds!3F
xmit times (msec)
&m"ME"|yh*DX&1d3F

9Pd{Dj8(f,Hgj8Dxgh8}/"M3F(wz)M?vrXx-iDj8 TCP WSVwC3


F(xL)#TZ?;v NFS M'K45,<PT?v~qwDj8 NFS M'3F(D~)"j8 NFS M
'K RPC 3F(~qw)Mj8 NFS M'K3F(xL)(f#TZ?v NFS ~qwxT,Pj8 NFS ~
qw3F(M')(f#|GP`,DdvVN,gOfbMD;y#

Z5}P,Sj8xgh8}/3FITC=TBZ]:
v recv bytes = 33003 packets * 73.2 bytes/packet = 2,415,819.6 bytes
v xmit bytes = 61837 packets * 1514 bytes/packet = 93,621,218 bytes
v total bytes exchanged = 2,415,819.6 + 93,621,218 = 96,037,037.6 bytes
v total bits exchanged = 96,037,037.6 * 8 bits/byte = 768,296,300.8 bits
v network speed = 768,296,300.8 / 8.54 = 89,964,438 bits/sec (approximately 90 Mbps) - assuming the NFS
copy took the whole amount of tracing

MZ+Vh8}/Lr(fP;y,zITCva[,bViv8uGxg%M4,#=ySUs!G 73.2 V
Z,5wzYD NFS ~qwSU=|"MD}]D7O#=y"Ms!G 1514 VZ,4T+xh8D1!
MTU(ns+d%*) #SZ,9CSZ{Ff;SZ,Hg en0 r tr0,zIT9CTB|n|D MTU r
Jdw"MSP$H5,SxqC|CDT\:
# ifconfig tr0 mtu 8500

r
# chdev -l ’tok0’ -a xmt_que_size=’150’

g{xgQ-h{,Dd MTU rGSP5<;aPyoz#

":
1. g{Zh8}/3F(fP"MMSUDE"|s!O!,G4vs10D MTU s!rmaDFxg
T\#

270 T\\m8O
2. g{S NFS M'K(fDxgH}1d4v,53IZxgwCD-rlIH}1d$,G4bV;
<T\GIZxglID#

netpmon |nD^F

netpmon |n9CzY$_4U/3FE"#rx,|T53D$w:XP0l,gBy>#
v ZJH"xgy<D$w:XB,netpmon |n9\eD CPU 9CivvSK 3-5 vYVc#
v Z CPU %MxR8u;PNN I/O KZDivB,netpmon |n9sD`kLr5}Ks< 3.5 vYV
c#

*Kuab)4v,k9CQz&m,"RZ` CPU 53O9Cx -C all j>D trace |n#

traceroute |n
traceroute |nITC4vxgbT"b?M\m#

d; ping |nITi$Gq\;=o IP xg,+z;\;T;)%@DJbxP+7(;MDF#k<G


BfDiv:
v g{ZzDwzM?jX7.dP\`*"%*(Hg,xXrG7I),xRZX76D3&CqPJ
bfZ#?jX7D53I\PJb,+Gzh**@E"|5JOZDy*'D#
v ping |naU9,+;af_zE"|*'D5I#

traceroute |nITf_zE"|D;C,2\f_z*247Ia*'#g{zDE"|Xk(}7IwM
4S,xb)<GtZd{i/rG+>"RI|G4\m,G4*(} telnet |n4li`XD7IwM\
'Q#traceroute |n* ping |na)K;v7S&\#

":traceroute |n&w*CZV/JOtk#IZ|Txg)SK:X,yTZj<DYwrGT/KPD
E>B;*9C traceroute |n#

I&D traceroute >}

traceroute |n9C UDP E"|M ICMP ms((&\#|"M 3 N UDP E"|,"M=76OD?;


vxXr7IwO#|Sn|DxX*<t/,(}*")9Qw#ns,Qw=K?j53#ZdvP,z
IT4=xX{F"xXD IP X7MxX 3 Ny5D1d#k4BfD}S:
# traceroute aix1
trying to get source for aix1
source should be 10.53.155.187
traceroute to aix1.austin.ibm.com (10.53.153.120) from 10.53.155.187 (10.53.155.187), 30 hops max
outgoing MTU = 1500
1 10.111.154.1 (10.111.154.1) 5 ms 3 ms 2 ms
2 aix1 (10.53.153.120) 5 ms 5 ms 5 ms

BfGm;v}S:
# traceroute aix1
trying to get source for aix1
source should be 10.53.155.187
traceroute to aix1.austin.ibm.com (10.53.153.120) from 10.53.155.187 (10.53.155.187), 30 hops max
outgoing MTU = 1500
1 10.111.154.1 (10.111.154.1) 10 ms 2 ms 3 ms
2 aix1 (10.53.153.120) 8 ms 7 ms 5 ms

xgT\ 271
X7bv-i(ARP)G<U9s,@;X4,yD|n#"b,"M=?vxXrG?jX7DZ;vE"
|h*O$DX51d#bGr* ARP lID1d*z#g{Z76PP+2;;xg(WAN),Z;vE
"|Mar*4(,S{D\`DZf,I\a<B,1#?vE"|1!D,1* 3 k#zIT(} -w N
}n4Ddd5#

Z;v 10 ms Gr*Z453(9.53.155.187)MxX 9.111.154.1 .dD ARP lID#Z~v 8 ms Gr


*xXMnU?j(().dD ARP lID#bVivB,z9C DNS,xR?N<Z traceroute |n.
0"M;vE"|,MITQw= DNS ~qw#

'\D traceroute >}

g{`zD?jX7P\$D`kr_Gxg7I\4S,G4zrmIT(} traceroute |ni4v\`J


b#r*\`Bi<G@5Z_e5VD,yTQwJbI\;GKQzD1d#g{f0=DyP7Iwr
S53<ZzDXF6'Z,zrmITj{DwibvJb#

xX(7Iw)Jb

ZBfD}SP,E"|S53 9.53.155.187 P"v#Z4S=xED76OP=v7Iw53#Z~v7I


w53PPb%}K7I!q\&,bG(}+ no |nD ipforwarding !nhC* 0 5VD#k4Bf
D>}:
# traceroute lamar
trying to get source for lamar
source should be 9.53.155.187
traceroute to lamar.austin.ibm.com (9.3.200.141) from 9.53.155.187 (9.53.155.187), 30 hops max
outgoing MTU = 1500
1 9.111.154.1 (9.111.154.1) 12 ms 3 ms 2 ms
2 9.111.154.1 (9.111.154.1) 3 ms !H * 6 ms !H

g{U=K ICMP msE"(;|(1d,^M;\=oDKZ),MasBf;yT>:


!H ;\=oDwz
!N ;\=oDxg
!P ;\=oD-i
!S 47I''
!F h*VN

?j53Jb

g{?j53Z 3 kD,1dtZ;Pl&,yPDi/<a"z,1,a{aICGE(*)T>#
# traceroute chuys
trying to get source for chuys
source should be 9.53.155.187
traceroute to chuys.austin.ibm.com (9.53.155.188) from 9.53.155.187 (9.53.155.187), 30 hops max
outgoing MTU = 1500
1 * * *
2 * * *
3 * * *
^C#

g{zO*bvJbGIZ(E4SylID,IT9C -w jG4S$,1H}1d#I\a9CyPDi
/KZ,d;bViv\Y{#zIT|DKZ,;sXT#

272 T\\m8O
=?jX7DPLND}?

m;vdvD~I\gBy>:
# traceroute mysystem.university.edu (129.2.130.22)
traceroute to mysystem.university.edu (129.2.130.22), 30 hops max
1 helios.ee.lbl.gov (129.3.112.1) 0 ms 0 ms 0 ms
2 lilac-dmc.university.edu (129.2.216.1) 39 ms 19 ms 39 ms
3 lilac-dmc.university.edu (129.2.215.1) 19 ms 39 ms 19 ms
4 ccngw-ner-cc.university.edu (129.2.135.23) 39 ms 40 ms 19 ms
5 ccn-nerif35.university.edu (129.2.167.35) 39 ms 39 ms 39 ms
6 csgw/university.edu (129.2.132.254) 39 ms 59 ms 39 ms
7 * * *
8 * * *
9 * * *
10 * * *
11 * * *
12 * * *
13 rip.university.EDU (129.2.130.22) 59 ms! 39 ms! 39 ms!

iptrace X$LrT0 ipreport M ipfilter |n


zIT9C\`$_4[lxgYw#P)GZYw53BKP,d{DrZ8(D2~OKP#IC iptrace
X$LraO9C ipreport |n,ITq!;v LAN i/a9Dj8xRP,xE"|DGv,bvGI
$w:XyzID#

*TYw53f> 4 9C iptrace X$Lr,zh* bos.net.tcp.server D~/#iptrace X$LrM|(


ZbvD~/P,Md{PCD|n;y,Hg trpt M tcdump |n#iptrace X$Lr;\IyC't/#

1!ivB,iptrace X$LrazYyPE"|#I!n -a Jm+X7bv-i(ARP)E"|E}Zb#


d{DI!nIT+zYD6'u!=;v8(D4wz(-s)"?jwz(-d)rG-i(-p) #r* iptrace
X$LrIT{D&mwG#$D1d,yT1z5wzk*zYDE"|1;(*!I\D_e#

r* iptrace G;vX$Lr,yT*Z startsrc |nPt/ iptrace X$Lr,x;G1SS|nPt/#


bV=(IT|=cxPXFMe`XU#dMD5}I\agBy>:
# startsrc -s iptrace -a "-i en0 /home/user/iptrace/log1"

K|nt/ iptrace X$Lr,8>|zY'WT+xSZ en0 ODyPn/,"+zY}]ECZ


/home/user/iptrace/log1 P#IT9CgB|n4U9X$Lr:
# stopsrc -s iptrace

g{49C startsrc |n4t/ iptrace X$Lr,rXk9C ps |niR|DxLj6,;s9C kill


|nU9|#

ipreport |nG;vT log D~Dq=Lr#|Ddva4k=j<Ddv%*#I!nJmT RPC E"|


D6pMq=/(-r),9C}54i$?;vE"|(-n),Z?;PO<=S;v 3 vV{D.w*0:
4j6-i(-s) #C4q=/UU4(D log1 D~(I root C'5P)DdM ipreport |ngB:
# ipreport -ns log1 >log1_formatted

b+azIMBfD}S``FD;5PE"|D(f#Z;vE"|G ping E"|D0;k#BfGnX


*DVN:
v 4(SRC)M?j(DST)DwzX7,<Gx!}cD.xFM ASCII kq=#
v IP E"|$H(ip_len)
v mw}Z9C|_6pD-i(ip_p)

xgT\ 273
Packet Number 7
ETH: ====( 98 bytes transmitted on interface en0 )==== 10:28:16.516070112
ETH: [ 00:02:55:6a:a5:dc -> 00:02:55:af:20:2b ] type 800 (IP)
IP: < SRC = 192.1.6.1 > (en6host1)
IP: < DST = 192.1.6.2 > (en6host2)
IP: ip_v=4, ip_hl=20, ip_tos=0, ip_len=84, ip_id=1789, ip_off=0
IP: ip_ttl=255, ip_sum=28a6, ip_p = 1 (ICMP)
ICMP: icmp_type=8 (ECHO_REQUEST) icmp_id=18058 icmp_seq=3

Packet Number 8
ETH: ====( 98 bytes received on interface en0 )==== 10:28:16.516251667
ETH: [ 00:02:55:af:20:2b -> 00:02:55:6a:a5:dc ] type 800 (IP)
IP: < SRC = 192.1.6.2 > (en6host2)
IP: < DST = 192.1.6.1 > (en6host1)
IP: ip_v=4, ip_hl=20, ip_tos=0, ip_len=84, ip_id=11325, ip_off=0
IP: ip_ttl=255, ip_sum=366, ip_p = 1 (ICMP)
ICMP: icmp_type=0 (ECHO_REPLY) icmp_id=18058 icmp_seq=3

BfD}SGS ftp YwC=D;v!#"b,IP E"|Ds!M LAN D MTU ;ys(1492 VZ)


#
Packet Number 20
ETH: ====( 1177 bytes transmitted on interface en0 )==== 10:35:45.432353167
ETH: [ 00:02:55:6a:a5:dc -> 00:02:55:af:20:2b ] type 800 (IP)
IP: < SRC = 192.1.6.1 > (en6host1)
IP: < DST = 192.1.6.2 > (en6host2)
IP: ip_v=4, ip_hl=20, ip_tos=8, ip_len=1163, ip_id=1983, ip_off=0
IP: ip_ttl=60, ip_sum=e6a0, ip_p = 6 (TCP)
TCP: <source port=32873, destination port=20(ftp-data) >
TCP: th_seq=623eabdc, th_ack=973dcd95
TCP: th_off=5, flags<PUSH | ACK>
TCP: th_win=17520, th_sum=0, th_urp=0
TCP: 00000000 69707472 61636520 322e3000 00008240 |iptrace 2.0....@|
TCP: 00000010 2e4c9d00 00000065 6e000065 74000053 |.L.....en..et..S|
TCP: 00000020 59535841 49584906 01000040 2e4c9d1e |YSXAIXI....@.L..|
TCP: 00000030 c0523400 0255af20 2b000255 6aa5dc08 |.R4..U. +..Uj...|
TCP: 00000040 00450000 5406f700 00ff0128 acc00106 |.E..T......(....|
TCP: 00000050 01c00106 0208005a 78468a00 00402e4c |.......ZxF...@.L|
TCP: 00000060 9d0007df 2708090d 0a0b0c0d 0e0f1011 |....’...........|
TCP: 00000070 12131415 16171819 1a1b1c1d 1e1f2021 |.............. !|
TCP: 00000080 22232425 26272829 2a2b2c2d 2e2f3031 |"#$%&’()*+,-./01|
TCP: 00000090 32333435 36370000 0082402e 4c9d0000 |234567....@.L...|
--------- Lots of uninteresting data omitted -----------
TCP: 00000440 15161718 191a1b1c 1d1e1f20 21222324 |........... !"#$|
TCP: 00000450 25262728 292a2b2c 2d2e2f30 31323334 |%&’()*+,-./01234|
TCP: 00000460 353637 |567 |

ipfilter |nS ipreport dvD~PMEv;,DYw(7,"Z;vmPT>#,12a)K;)T(eD


PXksD NFS E"M&p#

*K7( ipfilter |nGqQ-20xRIC,kKPBfD|n:


# lslpp -lI perfagent.tools

BfG;v|n5}:
# ipfilter log1_formatted

?0\6pDYw(7G:udp"nfs"tcp"ipx"icmp#ipfilter |nP}V;,`MD(f,gBy>:
v ;v%@DD~(ipfilter.all),T>DGyPQ!YwDPm#mPT>E"|D}?"1d"4 &"?j"
$H"rP #"Ack #"4KZ"?jKZ"xgSZMYw`M#
v T&?vy!7DwvD~(ipfilter.udp"ipfilter.nfs"ipfilter.tcp"ipfilter.ipx"ipfilter.icmp)#|,D
E"M ipfilter.all ;y#

274 T\\m8O
v %vD~ nfs.rpt,PX NFS ksM&pD(f#mP|(:Bqj6 #"ks`M"ks4,"wkE"
|D}?"wk1d"wks!"&pE"|}?"&p1dMwkk&p.d{DDAk}#

Jdw3FE"
>ZPD|na)H[Z netstat -v |nDdv#|GJmz4;JdwD3FE"(-r),"RqCH
netstat -v |ndvya)D|*j8Ddv(-d)
#

entstat |n

entstat |nT>DGI8(T+xh8}/U/D3FE"#}K;cD3FE".b,C'9ITP!qX
8(*T>D_eh8E"#9C -d !naPvCJdwDNN)93FE","R&C9CC!n47#
T>KyP3FE"#g{;P8(jG,Ma;T>h8D(CE"#

1 netstat |nx -v j>KP1,2awC entstat |n#netstat |n;\9CNN entstat |njG#


# entstat ent0
-------------------------------------------------------------
ETHERNET STATISTICS (ent0) :
Device Type: 10/100/1000 Base-TX PCI-X Adapter (14106902)
Hardware Address: 00:02:55:6a:a5:dc
Elapsed Time: 1 days 18 hours 47 minutes 34 seconds

Transmit Statistics: Receive Statistics:


-------------------- -------------------
Packets: 1108055 Packets: 750811
Bytes: 4909388501 Bytes: 57705832
Interrupts: 0 Interrupts: 681137
Transmit Errors: 0 Receive Errors: 0
Packets Dropped: 0 Packets Dropped: 0
Bad Packets: 0
Max Packets on S/W Transmit Queue: 101
S/W Transmit Queue Overflow: 0
Current S/W+H/W Transmit Queue Length: 0

Broadcast Packets: 3 Broadcast Packets: 3


Multicast Packets: 3 Multicast Packets: 5
No Carrier Sense: 0 CRC Errors: 0
DMA Underrun: 0 DMA Overrun: 0
Lost CTS Errors: 0 Alignment Errors: 0
Max Collision Errors: 0 No Resource Errors: 0
Late Collision Errors: 0 Receive Collision Errors: 0
Deferred: 0 Packet Too Short Errors: 0
SQE Test: 0 Packet Too Long Errors: 0
Timeout Errors: 0 Packets Discarded by Adapter: 0
Single Collision Count: 0 Receiver Start Count: 0
Multiple Collision Count: 0
Current HW Transmit Queue Length: 0

General Statistics:
-------------------
No mbuf Errors: 0
Adapter Reset Count: 0
Adapter Data Rate: 2000
Driver Flags: Up Broadcast Running
Simplex 64BitSupport ChecksumOffload
PrivateSegment LargeSend DataRateSet

ZOfD(fP,zrmk/PZBf8cO:
Transmit Errors
ZCh8Ov=DdvmsN}#bGTG)IZ2~rxgJO<B;I&"MDF}#

xgT\ 275
Receive Errors
Ch8Ov=DdkmsN}#bGTG)IZ2~rxgJO<B;I&SUDN}xPF}#
Packets Dropped
h8"M}/LrSU=E"|,+IZ3)-r;P+Mxh8DE"|}?#
Max Packets on S/W Transmit Queue
x-Zm~"MSPPESDwvE"|Dns}?#
S/W Transmit Queue Overflow
S"MSPPgvDb"E"|}?#
No Resource Errors
IZ1YJ4x;2~>}DSkE"|D}?#bVms-#"z,r*JdwOD"M:exQ
-Cj#;)JdwI\+"M:exDs!h(*IdCDN}#lih8DdCtT(r_ SMIT
oz),0RI\w{E"#
Single Collision Count/Multiple Collision Count
T+xgODe;N}#b)e;ZK&5w,x;GZ netstat -i |ndvD collision PP#

"b,Zbv5}P,T+xJdwDT\\C,bGr*;PSUms#1&Z%M4,Dxg;"M;+
DE"|1,P1alIbVms#b);+DE"|ns<I&X",+T;aG<*"Mms#

g{U= S/W Transmit Queue Overflow ms,r Max Packets on S/W Transmit Queue D5+T&ZKJ
dwD"MSP^F(xmt_que_size) #

":g{Jdw;'Vm~"MSP,b)5ITzm2~SP#g{vV"MSPgv,G4MvS}/D
2~rm~DSP^5#

g{;Pc;DSUJ4,rCiv+I Packets Dropped: 8v,"Ry];,DJdw`M,Out of Rcv


Buffers"No Resource Errors: r_3)`FDF}w2a8vCJb#

{DD1dT>DGSON4;3FE".syCD511dN#*4;b)3FE",k9C entstat -r
adapter_name |n#

TZnF7"FDDI M ATM SZ,9C tokstat"fddistat M atmstat |nITT>`FDdv#

tokstat |n

tokstat |nT>DGI8(D Token-Ring h8}/yU/D3FE"#}Kh8}/E"b,C'9ITP


!qX8(*T>DX(h8E"#g{;P8(NNjG,;aT>h8}/E"#

1 netstat |nx -v j>KP1,2awCK|n#netstat |n;\xP tokstat |nDNNjG#

tokstat tok0 |nzIDdvT0Jb7(kZ 275 3D:entstat |n;Pyv`F#

fddistat |n

fddistat |nT>DGI8(D FDDI h8}/yU/D3FE"#}Kh8}/E"b,C'9ITP!q


X8(*T>DX(h8E"#g{;P8(NNjG,;aT>h8}/E"#

1 netstat |nx -v j>KP1,2awCK|n#netstat |n;\xP fddistat |nDNNjG#

fddistat fddi0 |nzIDdvT0Jb7(kZ 275 3D:entstat |n;Pyv`F#

276 T\\m8O
atmstat |n

atmstat |nT>DGI8(D ATM h8}/yU/D3FE"#}Kh8}/E"b,C'9ITP!q


X8(*T>DX(h8E"#g{;P8(NNjG,;aT>h8}/E"#

atmstat atm0 |nzIDdvT0Jb7(kZ 275 3D:entstat |n;Pyv`F#

no |n
9C no |n0dj>IT>10xg5,2I|D!n#
-a T>yP!nM105(}g:no -a)
-d +!nhX1!5(}g:no -d thewall)
-o option=NewValue(}g:no -o thewall=16384)

XZ no |nyPtTDPm,kNDZ 388 3D:xg!nIwN};#

":no |n4PDliG^6'D#g{9C;}7,no |nIT<BzD53;\Yw#

;)xgtTGKP1tT,ITf1^D#d{GXkZ0k netinet ZK)9.0hCD0k1dtT#

":19C no |n4DdN}1,|D;PZBN53t/.sEaz'#b1,yPDN}<;u<h(
*|GD1!5#*ZKP xP 5100-04 Fv,$|(APAR IY39794)D AIX 5L for POWER™ V5.1
r|gf>D53O@C#fywD|D,k+`&D no |nSk /etc/rc.net D~(}g no -o
arptab_size=10)
#

":ZKP AIX 5.2 r|_f>D53O,*KZTsXB}<1tCM{CX(D no !n,rKE"Xk


fZZ /etc/tunables/nextboot D~P#Z|nPOdk no -r -o <no_optionname>=<value> 44PK
Yw,g no -r -o arptab_size=10#ZsxXB}<1,arptab_size=10 +#VP',r*|+4k
nextboot D~P#

g{zD539CDG Berkeley gqDxgdC,M+b)tTh(Z?| /etc/rc.bsdnet D~D%K#g


{9CDG SP 53,k4U RS/6000 SP: Installation and Relocation VaPyv`- tuning.cust D~#

xgT\ 277
278 T\\m8O
NFS T\
AIX a)KCZZ~qwMM'zOxPxgD~53(NFS)`SMw{D$_M=(#

xgD~53
NFS(xgD~53)Jm;v53ODLr(}0X6L?<xT8w==CJm;v53ODD~#

(#ivB,1~qw}<s,(} exportfs |n9?<IC,&m6LCJDX$Lr(nfsd X$Lr)


2f.t/#`FX,ZM'z53}<}LP4P6L?<D mount Mu</J1}?D NFS i I/O X
$Lr(biod X$Lr)T&m6LCJ#

nfsd M biod X$Lr<G`_LD,b6E?vxLPP`vZK_L#Kb,b)X$Lr9GTw{


D,r*|GyZ NFS n/?44h*4(r>}_L#

B<Y}5wK NFS M'zM~qwKa0Da9#1M'z53PD3v_LT<Ar4;Z NFS SXD


?<PDD~1,ksMaS(#D I/O zFX(rAM'zD;v biod _L#biod _LY+ks"MA
J1D~qw,ZC~qwO,|;Vdx~qwD;v NFS _L(nfsd _L) #Z&mCks1,f0D
biod M nfsd _L<;4PNNd{$w#

< 24. NFS M'z/~qw;%. bE<9>K,SZdMDGMXKa9xgOD=vM'zM;v~qw#M'z A


}ZKP&CLr_L m,dP}];<rA|D;v biod _L#,y,M'z B }ZKP&CLr_L n,"+}
]<rA|D;v biod _L#wTD_L9}])=xg"MA~qw Z,ZbOf,|;Vdx~qwD;v
NFS(nfsd)_L#

NFS {C6L}LwC(RPC)zF4xP(E#RPC ("Zb?}]m>(XDR)-i.O,C-iZ+%


E"MJm;,e5a9Dzw;%E".0+}]*;IU(Dq=#RPC bG;v|,P\`}LDb,
b)}LJm;v>X(M'z)xL8S;v6L(~qw)xL%4P;v}L,wC1MCq>X(M
'z)xLZT:DX7UdZ4P}LwC;y#r*M'zM~qwG=vVkDxL,yT|G;Yh
*,1fZZ,;vom53O#

< 25. Mount M NFS xL. bv<}G;Em,P}P,VpG:M'zP*"M'zM~qw#Z;vM'zP*G


0X#RPC wCSM'z"A~qwDKZ3dLr mountd#Z~vM'zP*Gr*/XU"A/4#M'zD biod
_LM~qwD nfsd _L.dD;%G+rD#

© Copyright IBM Corp. 1997, 2006 279


portmap X$Lr,portmapper G;vxg~qX$Lr*M'za);Vi/T&3;X(LrDKZD
j<=(#1~qwOD~q;ks1,b)~qT;vIC~qwDm]"a= portmap X$LrP#f
s portmap X$Lr,$;Em,mPG<KLrkKZDT&X5#

1PM'zr~qw"p;vks1,|WHCJ portmap X$Lr,i/;B~qyZDKZ#portmap


X$Lr+M'zyks~qDKZE5XxM'z#M'zZSU=KZETs,M\;+KsDyPks
1S"M=yhDGv&CLrK#

mountd X$LrG;v~qwX$Lr,TM'z mount ~qwDdvD~53r?<vvl&#mountd


X$Lr(}A! /etc/xtab D~47(DvD~53IC#mount D_e=hgB:
1. M'zD mount tP~qwD portmap X$Lr,ICxLi/QVdx mountd X$LrDKZE#
2. portmap X$Lr+T&DKZE5XxM'z#
3. ;sM'zD mount |nk~qwD mountd X$Lr1S(E,"+]yh?<D{F#
4. ~qw mountd X$Lrli /etc/xtab((} exportfs -a |n9(,C|nA! /etc/exports)Ti
$yksD?<DICTMmI(#
5. g{3{(}i$,~qwD mountd X$LrC=;vdv?<DD~dz(8rD~53?<)fs
+d+XM'zDZK#

M'zvZ53XBt/sDWN mount ks1Ek portmap X$Lr(E#;)M'zqCK mountd X


$LrDKZEs,KsNN mount ksMIT1S"M=GvKZK#

biod X$LrGidk/dvX$Lr,;ksCZ4PHAs4DYwr_G?<DA!Yw#biod X$
Lr_Lzm NFS M'z&CLrndreU:ex,TK4a} NFS DT\#1M'z53OD3vC'
#{S~qwOD3vD~Ar4k~qwOD3vD~1,biod _L+ks"Mx~qw#BP NFS Yw
;h*9C biod X$Lrx1SSYw53D NFS M'zZK)9(client kernel extension)"Mx~qw:
v getattr()
v setattr()
v lookup()
v readlink()
v create()
v remove()
v rename()
v link()
v symlink()
v mkdir()
v rmdir()
v readdir()
v readdirplus()
v fsstat()

nfsd X$LrGS NFS ~qwa) NFS ~qDP'zm#NN;vSM'za;D NFS -iks;);


SUMh*;v(ED nfsd X$LrD_L4,$,1=ks;zcR&mksDa{MXM'z#

NFS xg+M
TCP G NFS G1!+d-i,+2IT9C UDP#

280 T\\m8O
ITyZ?NSX4!q+d-i#UDP ZM:Xr_'JDxgkl&lD~qwO$wp4HOP'#T
Zcrx"1&Dxgr,SK}Y~qwDxg45,TCP ITa)|CDT\,r*dZZDw?XF\
;n!/xgODXB"MH}1d#

NFS DwV;,f>
AIX 'VZ,;zwO,19C NFS V2 M V3,"RS AIX 5.3 *<,Yw539'V NFS V4#

g{Z AIX M'zO;P8(f>w*20!n,r NFS V3 Lx*1!5#zIT9Cxg+MZ$H2


0y!O!q NFS -if>#

NFS V4
NFS V4 G NFS DnBD-ifq"Z RFC 3530 P;(e#

1|k NFS DT0f>`F1(w*Gf> 3),CBD-iZ;)6'Z(}g2+T"Ib?TMsK}


]\m)a)m`BDv?&\#b)XT9C NFS V4 TZsf#V"D~2m7345G;v|CD!q#

TB|,;) NFS V4 -i&\:


v :5P NFS YwD|D;
v :TCP hs;
v :/Ix(-i;
v Z 282 3D:/I20'V;
v Z 282 3D:DxD2+zF;
v Z 282 3D:zJ/'V;
v Z 282 3D:I)9tT#M;
v Z 282 3D:CJXFm'V;

k"b=SD&\MB-iD4ST<B|`DxL*z#rK,TZm`&CLr,NFS V4 T\I\H NFS


V3 T\|}#T\0lfEz9CDB&\D;,x"zTxDDd#}g,g{zZ NFS V4 M V3 P9
C`,D2+zF,IC NFS V4 D53I\T\T"};)#;x,1+9C+3 UNIX O$
(AUTH_SYS)D V3 DT\k+ Kerberos 5 CZ~=#$(b6Ej+C'}]S\)D V4 DT\xP
HO1,zI\"b=T\OPwTB5#

mbk"bNNkT NFS V3 DwZ(i2JCZ NFS V4#

5P NFS YwD|D:

;,Z NFS V2 M V3,V4 ;I=v RPC }LiI:NULL M COMPOUND#

COMPOUND }LI;vr`v NFS Yw(Z NFS T0Df>;(e*Vk RPC }L)iI#K|DI


\a<Bh*|YD RPC 4(}xg4P_-D~53Yw#

TCP hs:

NFS V4 -i|n+d-iD9C(|(crx73Pa_T\D5{XF)
#

AIX ;'V9C NFS V4 D UDP D9C#

/Ix(-i:

NFS V4 |,(f6'VZD~x(D'V#

NFS T\ 281
;9Cxgx\mw(NLM)-iM`X*D rpc.lockd M rpc.statd X$Lr#*KqCkG UNIX Yw
53|CD%YwT,NFS V4 9'V*E=2m$h,d|,D&\9~qw=(II?Fx(#

/I20'V:

(}-iYw,NFS V4 'VD~5320#

M'z";9CVk20-irk rpc.mountd X$xL(E#

DxD2+zF:

NFS V4 |,T RPCSEC-GSS 2+-iD'V#

RPCSEC-GSS 2+-iJm`v2+zFD5Vx;h**?;v2+zFmSBD RPC O$(e#AIX O


D NFS ;'V Kerberos 5 2+TzF#

zJ/'V:

Z NFS V4 P,T UTF-8 N=`kyZV{.D}],x"GT-<VZ"M#

I)9tT#M:

NFS V4 PDtT#M5VKkG UNIX 5VD|CD%YwT,"9C'mStT(e|S]W#

CJXFm'V:

NFS V4 |,;v ACL tTD(e#

ACL #Mk Windows NT #MD`F.&ZZ:|ZC'riDy!Oa);imI(Mu?`M4Zhr


\xCJ(#

NFS V3
IZ NFS V3 Iv?T\DZZ-i&\,rK?R(i9C NFS V3,xG NFS V2#

4LB?:

ZM'z53OKPD&CLrI\a\ZTXy;vD~P4}]r^DD~DZ]#

&CLrZ3;N1dIT4k~qwOH,f"wD}]?GV<=D~53D4LB?D;vH?8j#
rK4LB?GeVT\D;vX*=f#yPV<=D~53,|( NFS,Xk#$}]2+X4k?jD
~,,1*n!/~qwSYT4LB?yx4D0l#

NFS V3 -i{}K NFS V2 T,=4YwDhs,SxG;Va_4LB?D|Cfz!q,kK,1Bf


>9#tK-f>S|*E(close-to-open)oeDEc#NFS V3 M'z\sLHO5MKT~qwxP4Y
w1DS1,bGIZd+}]w*D~}]4k~qw_Y:f(wZf)P,x;;(4AEL#fs,
NFS M'z"<;v commit(a;)YwksA~qwT#$~qw+yP}]4kH,f"w#KXT,;
F*2+l=4(safe asynchronous writes),\+sXuYr~qw"vDEL I/O ksD}?,SxTx
Xa_4LB?#

byD4Yw.yT;O*“2+D”Gr*ZM'zO#tK}]D4,E",TK48>}]GqQ-;I
&Xf"K#rK,g{~qwZ commit Yw0@#D0,M'z(}i/4,E"+\C*Gqh*Z~
qwV41XBa;4ks#

uYD~tTks:

282 T\\m8O
r*IAD}]P1aIZThsD$ZxZ_Y:fP$t|$D1d,M'zXkliT7#y:fD}
]T;GP'D,2MPO}]GqQ-;m;v&CLr^DK#rK,NFS M'z\ZTXq!D~Dt
T,tTP|,KD~ns;^DD1d#{Cbv^D1d,M'zITPO|_Y:fD}]GqT;P
'#

+TD~tTDks#VZnM^HOIT9M'z|P'R9~qwD:Xn!,byM\a_IluTM
T\#rK,NFS V3 ;hFIZyPYw1<5XD~DtT#bMvSKnBDD~tTfZZ_Y:f
PDI\T,SxuYK%@DtTks}?#

_xmxg<uDP'9C:

Em RPC s!^F9C NFS \|*P'X{C_xmxg<u(}g FDDI"100baseT(100 Mbps)M


1000baseT('W;)T+xT0 SP ;;z),"+sYxK NFS T\Z3rA/4T\=fqCUf#

NFS V2 _P 8 KB Dns RPC s!^F,b^FKxgOI;NT+dD NFS }]?#Z NFS V3 P,


byD^F;EmK#AIX O NFS D1!A/4s!* 32 KB,ns5* 64 KB,b9 NFS \9lOs
}]i,"Z;v RPC E"|P+Mb)i#

uY?<iRks:

j+?<Pm(}g9C ls -l |n)*sS~qwqC?<PmPyPu?D{FMtTE"#

NFS V2 M'z(}iRks4V*i/~qwPyP?<nDD~M?<{PmktTE"#TZ NFS V3,


{FPmMtTE"(} READDIRPLUS Yw;NT5X,9CM'zM~qw<;X4P`vNq#

AIX 5.2 vSKZ NFS M'z?<{FiR_Y:f(4 dnlc)P_Y:f$D~{($Z 31 vV{)D


'V#K&\D5VP{Zua NFS M'zZ9C$D~{1D$w:X,$D~{ZT0xr* dnlc 4
|Px}"}`T~qwD LOOKUP Yw#K`MD$w:X>}P0fa=D ls -l |n#

NFS T\`SMw{
P`u|nIC4`S NFS 3FE"Mw{ NFS tT#

*o=<CD NFS T\,;vh*Z NFS TmZ?9h*ZYw53MWc2~Z?w{"{}?1#Ts


?A/4n/*XwD$w:XT{v53Dw{MdCXptP"Rh*|G#b;?V2|,KPXI\
^(OCXJ& NFS 9CD$w:XD`XE"#

w*;cfr,Z*<w{NNw{d?D5T0,k7#zKb*(}^Db)5h(o=24?D,T0
b)|DI\lID1Z:f0lG24#

NFS 3FE"Mw{N}
NFS U/w` NFS Yw4PivD3FE",a,vmE"MT\8j#

I9CTB|n47(1ZD?1"[lYw53O"zD NFS YwD`M,"w{X(Z NFS DN}#

nfsstat |n
nfsstat |nT>PX NFS M RPC SZ=M'zM~qwZKD3FE"#

#<G=T\ODJb,RPC 3FE"(-r !
K|n9ICZXBu</b)3FE"DF}w(nfsstat -z)
n)GWHh*l4D#NFS 3FE"rz9>K&CLr9C NFS Div#

RPC 3FE":

NFS T\ 283
nfsstat |nT>PX RPC wCD3FE"#

T>D3FE"`M*:
v QSUrQ\xD RPC wCD\}
v S~qw"vDr;~qw\xD RPC wCD\}
v T<SUx^(U= RPC |DN}
v $H}LrfZP17E"D|}
v 3vwC;C;;XB"MDN}
v &pkwC;%dDN}
v 3vwC,1DN}
v 3vwCZM'zdz1&1H}DN}
v O$E";C;;"BDN}

nfsstat |ndvD NFS 3FE"?V;V* NFS V2 M NFS V3 =?V#x RPC 3FE"?V;V*


fr,S(TCP)M^,S(UDP)=?V#

PXX(Z`&wbDdv,kNDZ 291 3D:~qwOD NFS T\w{;MZ 295 3D:M'zOD NFS


w{;#

nfso |n
IT9C nfso |n4dC NFS tT#

|hCrT>k10KPDZKM NFS ZK)9X*D NFS `XD!n#PX nfso |n0ddvDj8h


v,kND6AIX 5L V5.3 |nN<s+,m 47PD nfso |n#

":nfso |n";xP6'li#g{;;}7X9C,nfso |nI\9zD53^($w#

nfso N}0d5I9C nfso -a |nT>,gB:


# nfso -a
portcheck = 0
udpchecksum = 1
nfs_socketsize = 60000
nfs_tcp_socketsize = 60000
nfs_setattr_error = 0
nfs_gather_threshold = 4096
nfs_repeat_messages = 0
nfs_udp_duplicate_cache_size = 5000
nfs_tcp_duplicate_cache_size = 5000
nfs_server_base_priority = 0
nfs_dynamic_retrans = 1
nfs_iopace_pages = 0
nfs_max_connections = 0
nfs_max_threads = 3891
nfs_use_reserved_ports = 0
nfs_device_specific_bufs = 1
nfs_server_clread = 1
nfs_rfc1323 = 1
nfs_max_write_size = 65536
nfs_max_read_size = 65536
nfs_allow_all_signals = 0
nfs_v2_pdts = 1
nfs_v3_pdts = 1
nfs_v2_vm_bufs = 1000
nfs_v3_vm_bufs = 1000
nfs_securenfs_authtimeout = 0

284 T\\m8O
nfs_v3_server_readdirplus = 1
lockd_debug_level = 0
statd_debug_level = 0
statd_max_threads = 50
utf8_validation = 1
nfs_v4_pdts = 1
nfs_v4_vm_bufs = 1000

m` NFS tTGKP1tT(run-time attributes),|GGITZNN1d;^DD#x*^D0k1tT


(load time attributes),g nfs_socketsize,Mh* NFS H#B4xsYXBt/#nfso -L |na)dP?
vtTD|`j8E",|(105"1!5,T0XZ5|D5Jz'1dD^F:
# nfso –L

NAME CUR DEF BOOT MIN MAX UNIT TYPE DEPENDENCIES


--------------------------------------------------------------------------------
portcheck 0 0 0 0 1 On/Off D
--------------------------------------------------------------------------------
udpchecksum 1 1 1 0 1 On/Off D
--------------------------------------------------------------------------------
nfs_socketsize 600000 600000 600000 40000 1M Bytes D
--------------------------------------------------------------------------------
nfs_tcp_socketsize 600000 600000 600000 40000 1M Bytes D
--------------------------------------------------------------------------------
nfs_setattr_error 0 0 0 0 1 On/Off D
--------------------------------------------------------------------------------
nfs_gather_threshold 4K 4K 4K 512 8193 Bytes D
--------------------------------------------------------------------------------
nfs_repeat_messages 0 0 0 0 1 On/Off D
--------------------------------------------------------------------------------
nfs_udp_duplicate_cache_size
5000 5000 5000 5000 100000 Req I
--------------------------------------------------------------------------------
nfs_tcp_duplicate_cache_size
5000 5000 5000 5000 100000 Req I
--------------------------------------------------------------------------------
nfs_server_base_priority 0 0 0 31 125 Pri D
--------------------------------------------------------------------------------
nfs_dynamic_retrans 1 1 1 0 1 On/Off D
--------------------------------------------------------------------------------
nfs_iopace_pages 0 0 0 0 65535 Pages D
--------------------------------------------------------------------------------
nfs_max_connections 0 0 0 0 10000 Number D
--------------------------------------------------------------------------------
nfs_max_threads 3891 3891 3891 5 3891 Threads D
--------------------------------------------------------------------------------
nfs_use_reserved_ports 0 0 0 0 1 On/Off D
--------------------------------------------------------------------------------
nfs_device_specific_bufs 1 1 1 0 1 On/Off D
--------------------------------------------------------------------------------
nfs_server_clread 1 1 1 0 1 On/Off D
--------------------------------------------------------------------------------
nfs_rfc1323 1 0 0 0 1 On/Off D
--------------------------------------------------------------------------------
nfs_max_write_size 64K 32K 32K 512 64K Bytes D
--------------------------------------------------------------------------------
nfs_max_read_size 64K 32K 32K 512 64K Bytes D
--------------------------------------------------------------------------------
nfs_allow_all_signals 0 0 0 0 1 On/Off D
--------------------------------------------------------------------------------
nfs_v2_pdts 1 1 1 1 8 PDTs M
--------------------------------------------------------------------------------
nfs_v3_pdts 1 1 1 1 8 PDTs M
--------------------------------------------------------------------------------
nfs_v2_vm_bufs 1000 1000 1000 512 5000 Bufs I
--------------------------------------------------------------------------------

NFS T\ 285
nfs_v3_vm_bufs 1000 1000 1000 512 5000 Bufs I
--------------------------------------------------------------------------------
nfs_securenfs_authtimeout 0 0 0 0 60 Seconds D
--------------------------------------------------------------------------------
nfs_v3_server_readdirplus 1 1 1 0 1 On/Off D
--------------------------------------------------------------------------------
lockd_debug_level 0 0 0 0 10 Level D
--------------------------------------------------------------------------------
statd_debug_level 0 0 0 0 10 Level D
--------------------------------------------------------------------------------
statd_max_threads 50 50 50 1 1000 Threads D
--------------------------------------------------------------------------------
utf8_validation 1 1 1 0 1 On/Off D
--------------------------------------------------------------------------------
nfs_v4_pdts 1 1 1 1 8 PDTs M
--------------------------------------------------------------------------------
nfs_v4_vm_bufs 1000 1000 1000 512 5000 Bufs I
--------------------------------------------------------------------------------

n/a means parameter not supported by the current platform or kernel

Parameter types:
S = Static: cannot be changed
D = Dynamic: can be freely changed
B = Bosboot: can only be changed using bosboot and reboot
R = Reboot: can only be changed during reboot
C = Connect: changes are only effective for future socket connections
M = Mount: changes are only effective for future mountings
I = Incremental: can only be incremented

Value conventions:
K = Kilo: 2^10 G = Giga: 2^30 P = Peta: 2^50
M = Mega: 2^20 T = Tera: 2^40 E = Exa: 2^60

*T>r|D3vX(N},k9C nfso -o |n#Hg:


# nfso -o portcheck
portcheck= 0
# nfso -o portcheck=1

(}9C -d !nI+N}4;I1!5#Hg:
# nfso -d portcheck
# nfso -o portcheck
portcheck= 0

kT NFS T\D TCP/IP w{<r


NFS 9C UDP r TCP 4Pdxg I/O#

7#&CKZ 213 3D:TCP M UDP T\w{;MZ 241 3D:w{ mbuf XT\;PyvDw{<u#X


pG&C4PTBYw:
v (}KP errpt |n"iRxgh8rxgiJJbD(f4li53msU>n#
v 7# LAN JdwD"MMSUSP<hC*ns5#PX|`E",kNDZ 233 3D:w{JdwJ
4;#
v (} netstat -i |nli Oerrs#b`ms\`I\m>`Xxgh8D"MSPs!;;s#
v 7# TCP M UDP WSV:exs!QJ1dC#nfso |nD nfs_tcp_socketsize IwN}XF NFS y
9CD TCP WSV:exs! tcp_sendspace M tcp_recvspace#,y,nfs_udp_socketsize IwN}XFE
I NFS 9CD UDP WSV:exs! udp_sendspace M udp_recvspace#kq- TCP M UDP T\w{

286 T\\m8O
PhvD<r4hCWSV:exs!IwN}#k#f TCP M UDP w{`,,no |nD sb_max I
wN}5XksZ nfs_tcp_socketsize M nfs_udp_socketsize 5#(#,z&Ca"V AIX P9CD1!5
;;,+|;aTbnli;{#*li UDP WSV:exGq,v^H,kKP netstat –s –p udp |
n,"iRZ socket buffer overflows VNP(fDs?*zD|#
v 7#53PdCKc;DxgZf#KP netstat –m |n,"i4GqPNNkTQ\xrQSY mbuf
Dks#g{GD0,vSxgIC mbuf D}?#PXw{53T{} mbuf JbD|`E",kNDZ
241 3D:w{ mbuf XT\;#
v li#fD7IJb#9C traceroute |n4i4^($OD7I*"rSY#
v g{I\D0,vsVrxOD MTU s!#}gZ 16 Mb 'WT+xO,MTU s!S1!D 1500 V
ZvS= 9000 VZ(^M!)IJm"Mj{D 8 KB NFS Ar4ks,x;CVN#|9|*P'X
{CK mbuf X7Ud,u!K,XDI\T#
v liGqP MTU s!;%d#KP netstat -i |n"liM'zM~qwOD MTU#g{|G;,,r
TE+|GDI,;v}4Jb\q{}#9h*Kb}Yrcrxh8(gzw.dD7IwrxE)
I\aTE"|x;=VNTizwxgN#I\D;vbv=8GTE7(4M?j.dDn! MTU,"
+ NFS SXD rsize M wsize hC|DI3v!Z MTU n!+V8D}#
v 1KPxP TCP D NFS V3 "9C 32 KB(1!5)r|sD RPC s!1,&ChC nfso |nD
nfs_rfc1323 !n#bJm TCP 0Zs!sZ 64 KB,Sxozn!/H} TCP &pD1d#XkZ TCP
,SD?;`(}gZ NFS ~qwMM'zO)<hCC!n#
v li\!DE"|dDSY#\YP5}5wbyzz}Jb#g{~qwMM'z.dP7Iwrd{
2~,rITli2~D54i4GqITdCE"|dDSY#g{IT,r"TSsSY#
v liGqPs?DiJYH;%d#1E"|Z=VYHnp\sDiJOizO,g{|Gu}_Yx
g""TZQ}Yxg,r7IwI\a>}|G#}g17Iw"TS'WT+xOD~qwq!E"
|"+|G"M= 100 Mbps T+xPDM'zO,I\a"zbViv#Z 100 Mbps T+xOI\^(
"vc;lDE"|TzO'WT+x#}Kf;7Iwb,m;vI\Dbv=8G"Hu}M'zk
sYJM/r9CO!DA/4s!#
v Jmxk~qwDns TCP ,S}IIBD nfs_max_connections !nXF#1!5G 0,m>;P^F#
M'zaXUUP1d,}eVSD TCP ,S,1C'Z(1,SIT;XB("#~qwaXUUP1
d,}yVSD,S#
v Yw53a)K;vCZXU NFS y@PD UDP M#i(checksum)&\D!n#I9CF* udpchecksum
D nfso |n!n#1!5* 1,m>tC#iM#XUbv&\sT\aPa"Da},bGT}]Y5
DI\Tvs*z[D#

>}DE"|
!\>}|(#<GHZ NFS M'zOlb=,+f}1}bvDJbGRv|G?9GZDy*'D#E"
|I\GZM'z"~qwrxgODNN;C&>}D#

M'z>}DE"|
\YPE"|GIM'z>}D#

IZ?v biod _L;N;\&m%v NFS Yw,Z"vm;v RPC wC.0,|XkH}4TCYwD


RPC wC&p#bVTw=zFb6E8u;I\,v53J4D^H#ntHDYwI\GAYw,AYw
PI\aP_YJD}]wxkzwP#d;}]?I\\_,+5JD,= RPC wC}`1!,xR?v
biod _L<*&pVdKTmDUd#rK,E"|;M'z>}G\1{D#

(#ivB,E"|*4G~qw>}D,*4GZxgO>}D#

NFS T\ 287
~qw>}DE"|
~qwZXI.B*zE"|P`Viv#
1. xgJdw}/Lr

1 NFS ~qwT`1`Dkswvl&1,C~qwP1aCSZ}/LrdvSP,v^H#(}i4
netstat -i |n(fD3FE"I[lKiv#lijP Oerrs DP"iRyPF}5#?v Oerrs 5<
G;v>}DE"|#b\]W(}vSJbh8}/LrD+dSPs!4w{#IdCSP~,D<
kGz;kC+dSP+$,r*Z&mSP1a<BH}1d#+Gr* NFS ,V`,KZM XID D
tP,yTm;vtPITIZ;vtPD&pDl&4zc#mb,SP&mSYHZ*|DiNBI
NFS }pD UDP X"SY*!C`#
2. WSV:ex

UDP WSV:exG~qw>}E"|Dm;v;C#b)*zDE"|I UDP cF},IT9C


netstat -p udp |n4=b)3FE"#kliWSV:exgv3FE"#

(#,v1~qwPs? NFS 4w?1,NFS E"|EaZWSV:exP>}#NFS ~qw9C;v


k NFS 2049 KZ&sD UDP WSV,yPDdk}]<Zbv UDP KZ;:e#bv:exD1!
s!G 60,000 VZ#zITCC}V}T1!D NFS V3 4E"|Ds!(32786),a"VC:ex;
*S\ 19 v,1=oD4E"|MQ-gvK#

zI\av=TBiv:~qwQxPKw{RWSV:exOr Oerrs }/_7O2;PvVE"|>


}Div,+M'zT;&Z,1MX"4,#boYNV*K=ViN#g{~qw:X}X,I\G
~qwUC}Xx~qwOD nfsd X$LrZ&m}9$w(backlog),Sx<Bl&1d,}KM'z
OhCD1!,15#m;VI\T,g{Q*~qwGUPD,G4Jb`kGE"|MGZxgO>
}D#

xgO>}DE"|
g{~qwOH;PWSVgv,2;P Oerrs msE",xM'zVP\`,1MX"R~qwQ*GUP
D,rE"|\I\GZxgO;>}D#

ZbVivB,xg8DGs?|(iJMxgh8(g7Iw"xE"/Pw)DBoT0ITZM'zM
~qw.d4PE"|+MD+?6'DBo#

1~qw;P,XR;P>}E"|,+ NFS T\nD1r,<ITO*E"|GZxgO>}D#Y,&;


BMITx;=$wb;c"R"Vxg?9Guy+|x>}K#nrcD=(\sLHO!vZomOD
Z|TMICDJ4#

P1~qwMM'zomO.VS|,9C1S,SG#D]W,xg{*)=OsDxNMI\}"Jb#
\T;,g{+=(zw1S`,ITbv-HDJbD0,G4MITE}JbGIZzw>m-rlID
K#IGZ#{DivB,1S,SV;+I\,rKJb9GXkZJ1D;CE\;6q#xgl)w
(network sniffer)Md{$_IC4_Hb`Jb#

kT NFS T\DELS53dC
ZA/4\/M$w:XPn#{D?144.;GELS53dC\n#

Zz2ma<GvT NFS ~qwODELS53xPw{D,1,k"b NFS M'zOdCnDELhCI


\G3)ivBDV5Jb#bVivD>}.;MGP;v$w:XPD3vD~I NFS M'zOD&CL

288 T\\m8O
rS NFS SXDD~534F=CM'zD>XD~53P#ZbVivB,}7w{M'zODELS53
\X*,by>X53D4T\M;aI*?1#kNDZ 149 3D:_-mMEL I/O T\;PhvDw{
<u#XpG*<GTBBn:
v TZ NFS Or%DAr4$w:X,k@@|,*9CDD~53DELDT\#5VKNqD=(GZ
D~53>X4kD~rAvD~#&C9C iostat |n4bTELDLB\&,r*m`bT&CLrZ
jI15JO";P+yP}]<4=ELO#}g,;)}]I\TIZZfP#SB4z(#a+b
vZ>XA/4YwOb(DLB?1wIZ NFS Oo=DT\DOg,r*z;azzk NFS `XDn
b&mMH}1d*z#
v (#ivB,}]CJh*5V\_D"PT#`vM'zr`vM'zxLT~qwO%vD~53D
""CJI\a<BX(h8DEL I/O vVLB??"#zIT9C iostat |n4@@EL:X#Xp
G %tm_act N}m>X(EL&Zn/4,D1dYVH,+GO_D52I\m>`XDELJdw}
X#
v d;kELS53Dw{;1S`X,+5C;aDG,T%vD~D""CJI\a<BTD~D inode x
DyC#`}D~539C;v inode x4.P/TD~DCJ,rxI7#4kCD~D}]D;BT#
;RDG,IZZNN%;D1dc;JmVP inode xD_L4kCD~,bI\aZ`v_LT<""
4k,;vD~DivBOXA-4T\#
v TZsMD NFS ~qw,;c_TG+EL I/O hsyHV<Z!I\`DELMELJdwh8O#Z
;vEL I/O V<<CD53O,I\ao=;v4,,C4,B~qwOD CPU :XI*$w:XT\
D^FrX#

0lT\D NFS sC
\`T NFS DsC"zZBfDiNP:IZKG;Pb6={G*CJDD~GZxgDm;K,*CJb
)D~h*{D:sD(Ez[#

P;)byD}S,gB:
v Z;v53OD&CLrT NFS QSXDbfD~vfzD|B,TK4'Vm;v51Dc[VpGG
&CLr#
v ;v*"73P,?v53OD4zk?<<; NFS SX=C73Pd`D53O,T9*"K1ITG
<=Nb53O%`-M`k$w#bZB5O#$KyPD`kHITS6L53Pq!4zkVIT
+dv4X6L53#
v Z;v53OKP ld |nT+ NFS 20?<PD .o D~*;*,;?<PD a.out D~#
v &CLr"vD4Yw4xP3fTk(page-aligned),}g 10 KB#!Z 4 KB s!D4Yw<Ua<
B pagein(3fwx),"RTZ NFS 45,bv pagein avVZxgO#

I\PKa5b)GT NFS ya)D8wTD}79C#2mD7gK,+Gb)9C=((C,y{DK&


mw1d"Vrxxm"S$Kl&1d#1;v53dC+ NFS CJw*j<Yw#=D;?V1,hF_
&CZ-4<urLqODEFD,1,vC<84VyIKx4DJ4}H{D#
v +yPD}]r4zkE=;v~qwO,x;GE=%@D;v$w>O,DFK4zkDXF"r/
K/PTD8]#
v ;);,D53*CJ`,D}],b19C;v(CD~qwH;vr`v#NM'z~qw+XG+
D534C|P'J#

m;V;&CZ NFS D~53OKPD&CLr`MGG)?kSwCOYN lockf() r flock() D&CL


r#Z NFS D~53O,yPD lockf() r flock() wC(Md{x(wC)<Xk(} rpc.lockd X$L
r#baOX5M53T\,r* lockd X$LrI\^(Z;kSZ&mO'vx(ks#

NFS T\ 289
^[M'zM~qwDT\]?Yu4s,yPf0= NFS D~x(DYwa<BCK^(]LD}Y#bZ
<uOITC\`-r4bM,+yPD-r<yZ;vB5,GMGg{;vD~;x(,FX*(|`D
*zCZZA41TD~D,=xP&m#bb6EM'zO;\:fPNNDD~}],|(D~tT#y
PDD~Ywd*j+,=#=x;PK:e#g{Z NFS OKPD;v}ZxPxgD~x(D&CLrT
>v\nDT\,uAHKPZ,yDM'z/~qwTODd{&CLrT\9n,bGnKQT`ED#

~qwOD NFS T\`S


Z$w:Xn/Zd,&CZ NFS ~qwO9C vmstat M iostat |nli CPU 9CJ"I/O n/MZf
9Civ,Ti4~qwD&mw"ZfM I/O dCGqc;#

IT9C nfsstat |n4`S~qwOD NFS KPn/#

nfsstat -s |n
NFS ~qwT>rO$DX5xSU=D NFS wC}(calls)M\xD NFS wC}(badcalls),"T>
yxPDwVwCDF}MYVH#

BfD>}T>KI -s !n8(D nfsstat |ndvD~qw?V:


# nfsstat -s

Server rpc:
Connection oriented:
calls badcalls nullrecv badlen xdrcall dupchecks dupreqs
15835 0 0 0 0 772 0
Connectionless:
calls badcalls nullrecv badlen xdrcall dupchecks dupreqs
0 0 0 0 0 0 0

Server nfs:
calls badcalls public_v2 public_v3
15835 0 0 0
Version 2: (0 calls)
null getattr setattr root lookup readlink read
0 0% 0 0% 0 0% 0 0% 0 0% 0 0% 0 0%
wrcache write create remove rename link symlink
0 0% 0 0% 0 0% 0 0% 0 0% 0 0% 0 0%
mkdir rmdir readdir statfs
0 0% 0 0% 0 0% 0 0%
Version 3: (15835 calls)
null getattr setattr lookup access readlink read
7 0% 3033 19% 55 0% 1008 6% 1542 9% 20 0% 9000 56%
write create mkdir symlink mknod remove rmdir
175 1% 185 1% 0 0% 0 0% 0 0% 120 0% 0 0%
rename link readdir readdir+ fsstat fsinfo pathconf
87 0% 0 0% 1 0% 150 0% 348 2% 7 0% 0 0%
commit
97 0%

RPC dvD~qw?V(-s)gB:
calls SM'zSU=D RPC wC\}
badcalls
; RPC c\xDwC\}
nullrecv
;O*&CSU=xB5O;P6qIC RPC wCDN}

290 T\\m8O
badlen
|XOr|p5($H!Zn! RPC wCj<$HD RPC wC})
xdrcall
(7^(I)9}]m>(XDR)bkD RPC wC}
dupchecks
X4ks_Y:fPQiR}D RPC wC}
dupreqs
Q"VDX4 RPC wC}

dva{P9,1T>Kw`wCD}?MwTDYVH#

X4TliG*G);\Z=N4PP5X,;a{DYwxa)D#b=f-dD}SG rm |n#Z;v
rm |n2mI&K,+Gg{&p*'K,M'z+aX"bv|n#RG#{byDX4ks\qCI&,
K1X4_Y:f;i/,g{"VG;vX4ksr`,D(I&D)a{;w*Z~vX4ksDa{5
X,MCqGIZ;vksyzzDa{;y#

(}i4;,`MYwwC(}g getattr()"read()"write() r readdir())DYVH,ITv(+9CNV


`MDw{#}g:g{ getattr() wCDYVHG#_D0,rw{tTD_Y:fGI\aP'{D#g{
write() wCDYVH}_D0,rELM LVM w{MTCX*K#g{ read() wCYVH}_,r9C|
`DZfCT:eD~M\a_T\#

~qwOD NFS T\w{


~qwOX(Z NFS w{d?w*(} nfso |nCJ#

\D45,;*5V!1,w{X(Z NFS D!nIToz&mgBBn:


v uYxgOM NFS ~qwOD:X
v Cd(=(bvxgJbMM'zDZf9C

XhD nfsd _L}


NFS ~qwOP;v%@D nfsd X$LrG`_LD#bb6EZ nfsd xLPP`vZK_L#_L}G
TRw{D,r*X$LrayZ NFS :X4h4(MF5_L#

IZbVTRw{\&,"RIZ1!Dns nfsd _L}(3891)GZNNivB<JmDns}?,rK


8u;h*|Dbv5#;x,IT(} nfso |nD nfs_max_threads N}4w{53PD nfsd _LDn
s}?#

~qwODA4s!^F
IT9C nfso |nD nfs_max_read_size M nfs_max_write_size !n4VpXFCZ NFS A&pM NFS
4ksDns RPC s!#

Z 295 3D:M'zOD NFS w{;ZP|,KI\JOTA4 RPC s!xPw{DivD`XE"#(#,


|;Z4Pw{DM'zO#+G,bV;ZM'zOD^Db)5D73I\QT\m,-$w,b)~q
w nfso !n\PC#

D~}]w{Dns_Y:f
NFS ^TmD(C:exC4_Y:f4T NFS <vDD~53PD~D}]#

NFS T\ 291
w*zf,ibZf\mw(VMM)XFEb)D~3fD_Y:f#g{;v53d1(C NFS ~qw9
C,rI`&mI VMM 9CyhD!I\`DZf4xP}]_Y:f#TZ<v JFS D~53D~qw,
bn$w(}hC maxperm N}4jI,CN}XF JFS D~3fTZfDns<CYVH,n_Io
100%#(} vmo |nhCCN}#Hg:
# vmo –o maxperm%=100

Z<vv?M JFS D~53D~qwO,XkhC maxclient M maxperm =vN}#maxclient N}XFM'


N3f(client-segment page)TZfnsD<CYVH,xv?M JFS D~}]MGZM'N3fP;_Y:
fD#k"b maxclient 5;\,} maxperm 5#Hg:
# vmo –o maxclient%=100

Z3)ivB,g{ZfP_Y:fK+`DD~}],B5ObI\G;\6-D#PXgN9CF*sM
EDzF4e}&CLr;sI\Y9CDD~}]D5w,kNDZ 195 3D:D~53T\;#

RPC SXX$Lrw{
rpc.mountd X$LrG`_LD,1!ivBIT4(`o 16 v_L#

Z}H9C automount X$LrT0vV51D automount X$Lr,1D73P,gBvSns


rpc.mountd _L}I\aPbe:
# chsys -s rpc.mountd -a –h <number of threads>
# stopsrc -s rpc.mountd
# startsrc -s rpc.mountd

RPC x(X$Lrw{
rpc.lockd X$LrG`_LD,1!ivBIT4(`o 33 v_L#

Z RPC D~x(n/51"zDivB,;) rpc.lockd X$Lro=dns_L},r|MI\I*;v


?1#1o=ns51,NNsxDksXkH},ba<Bd{,1D"z#ITw{ rpc.lockd _L},
ns;,} 511#BfG;v}S:
# chsys -s rpc.lockd -a <number of threads>
# stopsrc -s rpc.lockd
# startsrc -s rpc.lockd

M'zOD NFS T\`S


Z$w:Xn/Zd,&CZ NFS M'zO9C vmstat |nli CPU 9CJMZf9Civ,Ti4M
'zD&mwMZfdCGq;C#

IT9C nfsstat |n4`SM'zD NFS KPn/#

nfsstat -c |n
NFS M'zT>KQ"MM;\x NFS wC},,1T>KQSUM'zdzDN}(clgets)Mw`wC
F}0wTDYVH#

BfD>}T>9C -c !n*M'z8(D nfsstat |ndv:


# nfsstat -c

Client rpc:
Connection oriented
calls badcalls badxids timeouts newcreds badverfs timers
0 0 0 0 0 0 0

292 T\\m8O
nomem cantconn interrupts
0 0 0
Connectionless
calls badcalls retrans badxids timeouts newcreds badverfs
6553 0 0 0 0 0 0
timers nomem cantsend
0 0 0

Client nfs:
calls badcalls clgets cltoomany
6541 0 0 0
Version 2: (6541 calls)
null getattr setattr root lookup readlink read
0 0% 590 9% 414 6% 0 0% 2308 35% 0 0% 0 0%
wrcache write create remove rename link symlink
0 0% 2482 37% 276 4% 277 4% 147 2% 0 0% 0 0%
mkdir rmdir readdir statfs
6 0% 6 0% 30 0% 5 0%
Version 3: (0 calls)
null getattr setattr lookup access readlink read
0 0% 0 0% 0 0% 0 0% 0 0% 0 0% 0 0%
write create mkdir symlink mknod remove rmdir
0 0% 0 0% 0 0% 0 0% 0 0% 0 0% 0 0%
rename link readdir readdir+ fsstat fsinfo pathconf
0 0% 0 0% 0 0% 0 0% 0 0% 0 0% 0 0%
commit
0 0%

RPC dvDM'z?V(-c)gB:
calls r NFS "vD RPC wC\}
badcalls
; RPC c\xDwC\}
retrans
IZH}~qwl&x,1X"wCDN}#bvJCZ^,S+dPD RPC#
badxid
S~qwSU=l&+G;PNN;v4jIwCk.%dDN}#bb6E~qwI\CK}`D
1dx;\&p#
timeouts
H}~qwD&p1wC,1DN}
newcreds
O$E";C;;"BDN}#
badverfs
IZl&P;}7D#i(verifier)x<BwC'\DN}#
timers wCD,11$sZrHZ8(Dn!wC,15DN}#
nomem
IZZfVd'\x<BwC'\DN}#
cantconn
IZ^(,S=~qwx<BwC'\DN}#
interrupts
wCZjI0;3vEEPODN}#

NFS T\ 293
cantsend
IZ^(,S=M'zx<B"M'\DN}#

dva{P9,1T>Kw`wCD}?MwTDYVH#

*xPT\`S,nfsstat -c |na)KPXxgGq}Z*z UDP |DE"#g{;vxg^(&m3v


|,rI\a>}|#E"|;>}IITBrX}p:xg2~Dl&1d"xgm~Dl&1dr~qw
O,:XD CPU#;>}D|";Pf}D*',r*;vfzksa*d"M#

RPC 3FE"PD retrans PT>KIZH}l&x,1X"Dks}#bViNMk>} UDP |PX#g


{ retrans 5;r,}Z;PPwC\}DYV.e1,MmwfZJb,~qwQ-;Y\zch*K#IZ
~qwO9C vmstat M iostat |nli:X#

\sD badxid }?b6Eks;"=;,D NFS ~qwO,+G~qwIZ:X}Xx;P\;ZM'zD


RPC wC,1X".0xhl&#?1T&Q"MDksU=X4Dl&1,badxid 5v;#?v RPC ks
ZyP+d\ZP<#tTmD XID 5#}`DX"ksT~qwzzKnbD9&,x;=9l&1dS
$#g{ badxid 5M,1N},}K\wC}D 5%,k9C smitty chnfsmnt |nvs NFS 20!nD
timeo N}#g{ badxid 5* 0,+ retrans 5M,1N}`1s,rk"T9C mount |nD rsize M
wsize !n5M NFS :exs!#

g{X"M,1D}?S|Z,;v51,IT7(|}Z;>}#|\YZM'zK;>}#PXx;=D
V[,kNDZ 287 3D:>}DE"|;#

Z3)ivB,&CLrrC'av=\nDT\,;xZli nfsstat -c |ndv14T>;Pr;P\Y


D,1MX"#b5wM'zS~qwSUl&DYHkksDYHG;ylD#b1,WH*liZM'z
OKPD biod X$LrD}?GqJ1D#Cli1;v&CLr}Zx(6LD~1T;Ib#16LD
~xSZ;v}~qZ NFS DD~O1,M'z+XUyPCD~Z_Y:fOD}]MtTx*k;Vj+
,=DYw==#a{M<B\}D4PT\,;RDGbViv9.VDUi#(}iR NLM ksIZ
ipreport dvPj6x(|#

nfsstat -m |n
nfsstat -m |nT>~qw{FMX7"20j>"10DA4s!"X"F},T0CZM'zO?v NFS
20D/,X"D(1w#

BfG;v}S:
# nfsstat -m
/SAVE from /SAVE:aixhost.ibm.com
Flags: vers=2,proto=udp,auth=unix,soft,intr,dynamic,rsize=8192,wsize=8192,retrans=5
Lookups: srtt=27 (67ms), dev=17 (85ms), cur=11 (220ms)
Reads: srtt=16 (40ms), dev=7 (35ms), cur=5 (100ms)
Writes: srtt=42 (105ms), dev=14 (70ms), cur=12 (240ms)
All: srtt=27 (67ms), dev=17 (85ms), cur=11 (220ms)

O}dva{P2(EZD}VG5J1d,%;GAk#d{D5GYw53ZK#t,$D^%;D5#
zITvTb)^%;D5#O}VpT>vKiR"A"4MyPb)YwiOZ;p(+?)Dl&1
d#dvPC=Dd{(egB:
srtt =,y51d(smoothed round-trip time)
dev @F+n(estimated deviation)
cur 109%,15(current backed-off timeout value)

294 T\\m8O
M'zOD NFS w{
X(Z NFS Dw{d?w*I(} nfso M mount |nCJ#

Z*<w{w{d?D5.0,7#zKbzk*(}^Db)5o=24?D,T0b)|DI\aPNV
1ZD:f0l#

2I(}^DT&X(D~53D /etc/filesystems Z4hC mount !n,by,1D~53Z}<1xP


20s,b)5+z'#

\D45,;*5V!1,w{X(Z NFS D!nIToz&mgBBn:


v uYxgOM NFS ~qwOD:X
v Cd(=(bvxgJbMM'zDZf9C

XhD biod _L}


NFS M'zOP;v biod X$LrG`_LD#bb6EZ biod xLPP`vZK_L#_L}GTRw
{D,r*X$LrayZ NFS :X4h4(MF5_L#

IT{C biod mount !n4w{?NSX1Dns biod _L}#biod _LD1!}?* 4(TZ NFS V3


M NFS V4 20)M 7(TZ NFS V2 20)
#

IZ biod _L;N&m;vAr4ks,"R NFS l&1d<K\l&1dDns;?V,rKIZ1Y


biod _Lx9&CLrh{GCK^(S\D#

7(nQD nfsd M biod X$Lr}G;v44D}L#BfPvD<r;G;vOmDpc#dC biod


_LD;c"bBngB:
v vS_L}";\C4V9M'zr~qwD&mw\&MB"Zf;cT0~qwELxmD;c#Z
|D_L}.0,z&CHC iostat M vmstat |nli~qwMM'zDJ49CLH
v g{ CPU rELS53QS|%MLH,G4vS_L}";ax4|CDT\#
v ;PA4YwE(} biod _L
v 1!5;c<GOJDp<c,+Gg{P`v&CLr_L,1ZCJ3vSXcODD~,rvSC
SXcD biod _L}G5CvDBi#}g,zI\*@F+,1xP4YwDD~}#7#?vD~A
YP=v biod _L4'V$A(read ahead)rs4(write behind)n/#
v g{P;(lYM'z$w>k;(O}D~qw`,,G4I\;C;^FM'zzI NFS ksDYJ#
;VI\Dbv=8GuYM'zOD biod _L},"T?vM'zD$w:XMl&1d*sD`TX
*TxhJ1X"#vSM'zOD biod _L}aT~qwT\zz4wC,r*b+JmM'z;N"
M|`Dks,Sxx;=vSKxgM~qwD:X#ZM'zYH,}~qwYHDivB,I\P
X*+ biod _L}uY* 1#Hg:
# stopsrc -s biod

Ov>}9CM'z;#B biod ZKxL9ZKP#

A4s!w{
nPCD NFS w{!nP|( rsize M wsize !n,|GVp(eCZA4D?v RPC E"|Dnss
!#

TB-rEvK*N*|DA4s!5:

NFS T\ 295
v ~qwI\^(&m+MA/4E"|1LPD}]?MYH(NFS V2 G 8 KB,NFS V3 M NFS V4 G
#bI\Gr* NFS M'z+ PC Cw NFS ~qwlID#C PC I\;PP^DZfICZ
32 KB)
:fsE"|#
v g{A/4s!5uY,f.x4DI\GIwCzID IP ,O}uY#g{}Z&mPJODxg,r
wC/&pTjI=vE"|D;;HXkI&;;_vE"|DI\T|s#,yD,g{zZ`vx
gO"M NFS E"|,xb)xg>mVP;,DT\Xw,K19*syPDE"|,OZ!Z IP ,
O,15D1dZ=oG;+V5D#

u! rsize M wsize 5ITZ;v57DxgO(}r?v NFS A&pM4ks"MOLDE"|,Sx


a_ NFS T\#+G,byYwD1wCGh*|`DE"|ZxgO"M}],SxvSKxg\w?T0
~qwMM'zOD CPU 9CJ#

g{ NFS D~53G(};v_Yxg(g'WT+x)SXD,rOsDA4E"|Ia_ NFS D~53


DT\#TZ NFS V3 M NFS V4,g{xg+dIC TCP ==,G4I+ rsize M wsize 5n_hC*
65536#1!5* 32768#TZ NFS V2,rsize M wsize !nDns5* 8192(2G1!5)
#

w{ NFS D~}]D_Y:f
VMM XF NFS M'zOD NFS D~}]ZM'zVN3fPD_Y:f#

g{ NFS M'zKPD$w:X8uC;E$wN3f,rITJ1Jm VMM 9C!I\`DIC53Z


f4xP NFS D~}]_Y:f#(}hC maxperm M maxclient N}IjIbvYw#maxclient D5X
k!ZrHZ maxperm D5#TB>}+ICZD~_Y:fDZf?hC* 100%:
# vmo –o maxperm%=100
# vmo –o maxclient%=100

NFS }]_Y:fTALB?(read throughput)D0l


ZM'zObCD NFS 3rALB?hz VMM $AM_Y:fzFC=Ka_#

$A(read ahead)Jm NFS ~qwT NFS M'z&CLrksD}]wv$bs,+D~}]S NFS ~


qw+M=M'z#1&CLrks&m}]1,G)yh}]I\Q-ZM'GCZfOK,rxks\;
"4zc#VMM _Y:fJmTD~}]xP21XA,;*;+}]SM'zZfwvM;h*S NFS ~
qwYNlw}]K#

1\`&CLrI\SM'zO NFS }]D VMM _Y:fqf1,;)&CLr(g}]b)I\4PT


:DD~}]_Y:f\m#4PT:DD~}]_Y:f\mD&CLrI\Z9C NFS OD1S I/O(r
DIO)1qf#(} mount |nD dio !n,r(}T open() 53wC8( O_DIRECT j>,ItC DIO
over NFS#

TBPmjvK DIO DEc:


v \bK VMM M&CLrTD~}]lI=N_Y:f#
v r* DIO /}F*K VMM zk,yTzITZD~A!M4k1a_ CPU 'J#

4PT:DD~}]_Y:f\mMD~CJrP/D&CLr(g}]b)I\Z9C"" I/O(r CIO)


1qf#}K DIO DEc.b,CIO ;P+AD~CJM4D~CJrP/,byMJm`v_L,1T,
;D~xPAYwr4Yw#

":9C CIO r DIO I\5M_H@5Z VMM D~_Y:fD&CLrDT\,"0l*a_53T\


xxPD$A!Ms4k VMM E/#

296 T\\m8O
9IT9C CacheFS vS;(D1&4zcT$tZM'z>XEL_Y:fPDD~}]DA!ks,Sx
x;=a_ZM'zZfP^"D~G#sM/rxNYH}D73PDALB?#PX|`E",kNDZ
299 3D:_Y:fD~53;#

IZ NFS }]_Y:fndKZf,yTTsD~3rAD}]_Y:fI\<BO`D3ff;n/#S x
P 5300-03 D AIX 5.3 *<,IT(}9CA!sME"rbr"mount !nr NFS V4 D nfs4cl setfsoptions
N}4\b3ff;n/,Sxa_T\#TZsD~D3rA,13rALxxP1,+MECZH0A!
D5Zf#

g{ rbr mount !n*<ME;C+YN9CDZf,rIT9C nfso |nD nfs_auto_rbr_trigger I


wN}4zf#1A!sME!nz'1,nfs_auto_rbr_trigger IwN}(TWVZ*%;)d1A+FP
5#}g,g{ nfs_auto_rbr_trigger IwN}hC* 100 MB,r3rAD~DZ;v 100 MB ;_Y:
f,xD~D#`?V+SZfPME#

NFS }]_Y:fT4LB?D0l
g{zT<9C NFS V3 r NFS V4 TsZM'zZfDD~4P3r4Yw,rIT9Csa;4a_T
\#

T+esZM'zZf?DD~4P4Ywa<BM'zOD3ff;n/`151#bI\a<BT4kD
?;3}](}_74Pa;Yw#sa;xvK;V|_t=TD_-,4+M'z3fa;=~qwOD
H(f"w,|X*DGY9b)3f5X=UPPm#

(}T mount |n8( combehind !n,ITZ20D~531tC“sa;”#9h*9C mount |n


* numclust d?hC;vJ1D5#bvd?8(KibZf\mw(VMM)D3rs4c(y&mD 16 KB
/:D}?#g{ I/O #=*3r#=,rT numclust !n9COsD5TcZwH|GxP I/O .0Z
RAM P#t|`D3f#g{}Z9CVnD_-mrELsP,rh*vs numclust !nD5#

NFS D~tT_Y:fw{
NFS Z?vM'z53O*n|CJ}D?<MD~,$;v_Y:f#

I9C mount |nhC`vN}4XFx(Dn*Z_Y:fP#t`C#b)N}gB:


actimeo
ZD~M?<u?;|Bs,*ZD~tT_Y:fP#tDxT1d#g{8(KN},rC52
GsfD *min M *max 5,5JO+|G+?hC* actimeo 5#
acregmin
ZD~u?;|Bs,#tDnL1d#1!5G 3 k#
acregmax
ZD~u?;|Bs,#tDn$1d#1!5G 60 k#
acdirmin
Z?<u?;|Bs,#tDnL1d#1!5G 30 k#
acdirmax
Z?<u?;|Bs,#tDn$1d#1!5G 60 k#

?ND~r?<;|Bs,S_Y:fPF}AY*H acregmin r acdirmin k#g{GZ~NrsxD|


B,u?n`;#tD1dAYHZn|=N|B.dDdt1d,+G;a,} acregmax r acdirmax
k#

NFS T\ 297
NFS 2SX(hard NFS mounts)r NFS mSX(soft NFS mounts)
DT\FO
dC NFS SXD?<1P;v!nGz#{IC2(-o hard)SX9Gm(-o soft)SX#

ZI&SXs,1;vTmSX(soft-mounted)?<DCJvm1((#G;v,1),bvms;"4(
fx-Hks6LCJDGvLr#1;vT2SX(hard-mounted)?<DCJvm1,NFS XT-4DY
w#

;vCJ2SX?<}pD@CTmsI\a}6I*;V\luC=DT\Jb,r*1!DXTN}G 1000
N,1!D,15G 0.7 k,YSOP;vc(\9,xXT.dD,15vS,b;Pb6E NFS +Lx
"T%jIbvYw#

uYXTN}"vS,15,r_0=_<v=,bZ<uOGI\D,;*9C mount |nD!n#;R


DG,^Db)5d;cT%}H0TT\DIluD0l,+GPI\a<B;X*D2~ms(f#w*
;Vfz,IT9C intr !n4 mount 2SX?<,b11P3vxLxkKXT-7rJmC'9C|L
+dPO#

d;mSX?<}pDmsIT;|lX=b=,+G|*0OXD}]Y5DgU#rK;c45,A/4
?<&CC20X#

;X*DXB"M
2SXMmSX=_Dv|C,bvJbX|ZZ*Z;vx(DxgdCO0sOJD,1Vx1d#

g{~qw,:XKP,kM'z.dtE;vr`vxE"xX,Vr_(};vcrx(WAN)kM'
z`,,rK11!D,1j<MTC;P5JK#g{GbyD0,~qwMM'z<+:X;X*DX
"#}g,|ngB:
# nfsstat -c

(f\sD timeouts M badxids }V(}gsZ\}D 5%),rIT9C mount |nvs timeo N}#

7(k*|DD?<,"Z NFS TIMEOUT POdk;vB5(T.V.;k*%;)


#

1!1d* 0.7 k(timeo=7),+GC5GZ NFS ZK)9Py]wC`M4w{D#}g,TZAwC,


C5S6I 1.4 k#

*qCTYw53 V4 M'zD timeo 5DXF,Xk+ nfso |nPD nfs_dynamic_retrans !nhC


* 0#I+ timeo 5|D*|_r|M,+GZNNx(DiNB,;P;V|D=rG}7D#+,15S
$9GuL,DVG}7D=8b!vZ|;PZQVdD1dZ=oD-r#

g{|vvGm=K;)+nU9G=oK,G4zrm&C+ timeo d?DC|$;),by\ZksX"


.09&pPza\5X#

;x,g{|;>}Kr@6;a=oM'z,G4CY$D1dH}l&2;\GKQ1d,b1z&Ck
=+ timeo d?DL#

IT@@&S\Dv!nD;V=(Gi4M'zD nfsstat -cr Ddv,TKbM'zGq(fKs? badxid


F}#badxid 5m>3v RPC M'zSU=;vd{;,wCD RPC wCl&,xG->&CU=Dl&#
;civB,bb6EM'zU=DG;vH0X"}DwCDX4&p#rx|M=oCmK,&CC timeo
5d$#

298 T\\m8O
mb,g{zV7PxgVvG,MITC|4b(=W"zK=VivPDD;V#49;PCGw,z2
IT(}T=TX+ timeo !nw_wM4D;Va)K|CD\eT\#Z;)iNB,KP4,";G<
Ug;D#zDnE!qMGRv|SY/|>}Df}-r"bv5JDJb,xJb;cMZ~qwh8
rxgh8O#

TZ(}xE,SDwvVrx(LAN-to-LAN)45,ITTE+5hI 50(T.V.;k*%;)#TZ
WAN ,S,ITE+5h* 200#AYHO;lsY4li NFS D3FE"#g{3FE"mwT;P}`
DX",r+ timeo 5vS 50% sXT#z9*"bli~qw$w:XT0yf0=DxEMxXOD:
X,l4|GPDNN;vi~Gq;d{Dw?<CxwZ%M#

4C}D NFS ACL 'V


g{$w:X;9CZSXDD~53P'VD NFS CJXFPm(r ACL),G4zIT(}8( noacl
!nS;(LHOuaM'zM~qwOD$w:X#

KYwIgBxP:
options=noacl

+bv!nhCIM'zOD /etc/filesystems PDPXD~53G;NPD;?V#

READDIRPLUS YwD9C
Z NFS V3 P,D~dzMtTE"(} READDIRPLUS Ywk?<u?;@5X#by9CM'z;Xs
T} NFS V2 GykT?vu?%@i/~qwTqCCE",rx2M|P'J#

;x,Z3)xPs?<D73B,IZM'z;9C\!D?<u?S/DE",rK NFS V3
READDIRPLUS YwI\<BT\MB#ZbVivB,nsfo |nD nfs_v3_server_readdirplus !nIC
Z{C READDIRPLUS#+G,;civB";Fvbyv,r*b;{O NFS V3 j<#

_Y:fD~53
I9C_Y:fD~53(r CacheFS)4a_6LD~53(g NFS)r}Yh8(g CD-ROM)DT\#

1_Y:f;v6LD~53s,S6LD~53r CD-ROM PA!D}]Mf"Z>X53D_Y:fP,


rK\bKYNCJ,yD}]1TxgM NFS ~qwD9C#CacheFS ;hFI;vVcD~53,b6
E|a)K+;vD~53(NFS D~53,VFs(D~53)_Y:f=m;vD~53(>XD~53,
VF0(D~53)OD\&,gB<y>:

NFS T\ 299
< 26. _Y:fD~53(CacheFS). Ce<T>K(}xg,SD;vM'zM;v~qw#~qwODf"iJ|
,Ks(D~53#M'zODf"iJ|,K-}_Y:fDD~53r0(D~53#

CacheFS gB$w:
1. ZM'z53O4( CacheFS D~53s,I8(*Z_Y:fPSXD)D~53#
2. 13vM'zODC'T<CJs(D~53PD?VD~1,G)D~a;Ek_Y:f#_Y:f"
;h*;nd1=PC'ks*T;vr`vD~xPCJ#rK,CJD~Du<ksDYH+GUi
D NFS YH((}xg),+GsxDT,;D~DCJYH+G>XD JFS YH#
3. *K7#_Y:fZD?<MD~<U#VnB,CacheFS \ZTXli_Y:fPD~D;BT#bG(
}HO10^D1dkH0^D1d45VD#
4. g{=v^D1d;,,`X?<rD~DyP}]MtT<S_Y:fe},BD}]MtTSs(D
~53P!X#

JOC CacheFS D>}GZ CAD 73P,dPf<i~Dw1>(master copy)IT#fZ~qwO,_


Y:fD1>Z9C1f=M'z$w>O#

CacheFS ;JmA4sZrHZ 2 GB s!DD~#

CacheFS T\Uf
r* NFS }];)S~qwAkM;:fZ>XELO,yTkT09*(}xgYNq!}]`H,NFS D
~53DAksIT;|lDzc#

y]Zfs!T0M'zD9C4v,vP;!?VD}]ITZZfOf!,yTZELO_Y:f}]D
;vf&MG\&CZ|`D}](|(G);\;#fZZoD}])#m;vf&GZ53XzsEL_
Y:fPD}]2\;#t,x:fZZfPD}]ZXBt/s;\YNS~qwO!XK#

d{D1Z NFS ?1|(:}Yr1&DxgM~qZ`v NFS M'zDuT\~qw#rK,SM'z5


3T~qwDCJMI\\}#CacheFS ";\\bz(}xgS~qwOZ;NA!}],+GIT*z\
bTsYN(}xgA!`,D}]#

g{|`DAksITZM'zOD>XELPM;zc,rT~qwD NFS CJ}?+FXauY#bMb


6E~qw+P\&*|`DM'za)~q,gK;4,M'z/~qwHJ(client per server ratio)Ma
O}#

xgO|YDAks+uaxgD:X,rKIT9\1&DxgME;)J4v4rZvUdCT+dd{
D}]#

300 T\\m8O
"GyP&CLr<\S CacheFS qf#r* CacheFS ;\SlAYHT\,yPw*GG)T,yD}]
Ps?44AksD&CLrE\S CacheFS qf#SsD CAD &CLr^I\S CacheFS Pqf,r*
-#h*0kP\sD#MC4Fc#

T\bTT>S CacheFS D~53O4P3rAYw*HS NFS ~qwDZfrELOAlK 2.4 = 3.4 6#

CacheFS T\0l
CacheFS ;aa_T NFS D~53D4T\#;x,20 CacheFS 1,P;)4Yw!nI!* mount |
n -o!nDN}#|Ga0lsxT}]AYwDT\#

4Yw!ngB:
write around
F4(write around)==G1!==,|Tk NFS ;yDYw==&m4Yw#4YwkTs(D~
53xP,\0lDD~+S_Y:fPe}#bb6EF4a9_Y:f*U,B}]XkZ4Y
w4PsS~qw!X#
non-shared
1z7E;aPKy_Y:fD~53Z4}]1,ITIC non-shared ==#ZK==B,yPD
4YwH4k0(D~53V4ks(D~53,"RD~T;tZ_Y:f#bMb6ETsDA
CJIT=_Y:fP44P,x;h*%CJ~qw#

P;)!DAYwI\\G#tZZfP(y]zTZfD9C4v),K149+}]_Y:fZELO2
;aP24f&#_Y:ffzAYwyAD;,}]iG;PbeD,}Gz*T,;}]44XCJ#

u<DAks9GXk"=~qwO%,r*;P13vC'Ts(D~53OD?VD~xP}CJs,G
)D~EavVZ_Y:fP#TZu<DAks,z+P\=DGUiD NFS YH#;PT,;}]Dsx
CJzEaP\=>X JFS CJDT\#

TZ:f}]D;BTvvGt;N1dEli;N#rK:f-#;^DD}]G#UD#CacheFS vCZ
;ArID4D;A(read-mostly)}]#

_Y:fD NFS D~53OD4T\Z NFS V2 M NFS V3 PGPxpD#T\bTT>:


v TZZ NFS V2 OD;vBD~xP,xD4Yw,4k CacheFS SXc(mount point)H1S4kSX
c*}YV.~.e#
v ,yDiN,TZZ NFS V3 OD;vBD~xP,xD4Yw,4k CacheFS SXcH1S4kSXc
*}y6#

dC CacheFS
CacheFS ";G1!;5VD,2;GZ4( NFS D~53sMt/D#XkT=8(D)D~53+20
=_Y:fP#

*8(D)D~53+20=_Y:fP,k4PTBYw:
1. 9C cfsadmin |n4(>X_Y:fD~53:
# cfsadmin -c -o parameters cache-directory

OfDN} X8J4N},_Y:f?<G8+_Y:f4(=Gv?<D?<{#
2. +s(D~53SX=_Y:fP:
# mount -V cachefs -o backfstype=nfs,cachedir=/cache-directory remhost:/rem-directory local-mount-point

NFS T\ 301
OfD6L?<8}]yZD6LwzMD~53{,>XSXc86LD~53&CZM'zODDv
SXcSX#
3. r_,I9C SMIT |n(9C smitty cachefs lY76)\m CacheFS#

;)N}ITZ CacheFS 4(1;hC,gB:


maxblocks
hCZ0(D~53Z CacheFS ;JmjkDnsi}#1!5 =90%#
minblocks
hCZ0(D~53Z CacheFS ;JmjkDn!i}#1!5 =0%#
threshblocks
hC;vi},|8(KZ CacheFS jk`Z minblocks }?Di.0XkVdxM'z;KD JFS
D~53Di}#1!5 =85%#
maxfiles
CacheFS y\9CDnsD~},T0(D~53PD i-node \}DYVHN=mo#1!5 =90%#
minfiles
CacheFS <U;Jm9CDn!D~},T0(D~53PD i-node \}DYVHN=mo#1!5
=0%#
maxfilesize
CacheFS Jm:fDnsDD~s!,%;:WVZ(MB)
#1!5 =3#

NFS N<
P\`k NFS `XDD~"|n"X$LrMS}L#

PXj8E",kND6xgk(E\m7M6AIX 5L V5.3 |nN<s+7#

NFS D~Pm
P\`k NFS X*DD~#

TBG NFS D~Pm,|(dCE":


bootparams
PvKITC4t/D^ELM'z
exports
PvKIT<v= NFS M'zD?<
networks
|,KrXxODxgE"
pcnfsd.conf
* rpc.pcnfsd X$Lra)dC!n
rpc |,K*6L}LwC(RPC)a)D}]bE"
xtab PvK10Q-<vD?<
/etc/filesystems
PvKT<Z53XBt/1; mount DyPD~53

302 T\\m8O
NFS |nPm
P\`k NFS X*D|n#

TBG NFS |nPm:


chnfs t/8(}?D biod M nfsd X$Lr
mknfs dC539dKP NFS "Rt/ NFS X$Lr
nfso dC NFS xg!n
automount
T/SX NFS D~53
chnfsexp
^D NFS <v(NFS-exported)?<DtT
chnfsmnt
^D NFS SX(NFS-mounted)?<DtT
exportfs
<v?<= NFS M'zT0XU(unexport)?<
lsnfsexp
T>I NFS <vD?<Xw
lsnfsmnt
T>QSX(mounted)NFS 53DXw
mknfsexp
9C NFS <v;v?<
mknfsmnt
9C NFS SX;v?<
rmnfs #9 NFS X$Lr
rmnfsexp
S~qw<vPmP>} NFS <v(NFS-exported)?<
rmnfsmnt
SM'zSXPmP>} NFS SX(NFS-mounted)D~53

NFS X$LrPm
P\`k NFS X*DX$Lr#

TBG NFC x(X$LrPm:


lockd (} RPC |4&mx(ks
statd * NFS ODx(~qa)@#V4(crash-and-recovery)&\

TBGxg~qX$LrM5C$_DPm:
biod "MM'zDA4ksA~qw
mountd
&p4TM'zDTD~53D mount ks
nfsd t/CT&mM'zTD~YwksDX$Lr

NFS T\ 303
pcnfsd
&m4T PC-NFS M'zD~qks
nfsstat
T>zwSUwCDT\E"
on Z6LzwO4P|n
portmap
+ RPC LrKZE3d*rXxKZE
rexd SUKP6LzwOLrDks
rpcgen
zI C zkT5V;v RPC -i
rpcinfo
(f RPC ~qwD4,
rstatd 5XSZKqCDT\3FE"
rup T>>XxgOD;v6LwzD4,
rusers
(fQG<=6LzwODC'Pm
rusersd
l& rusers |nDks
rwall "M{"AxgODyPC'
rwalld &m rwall |nDks
showmount
T>yPQSX6LD~53DM'zPm
spray "M8(}?D|=;vwz
sprayd
SUI spray |n"4D|

TBGxg2+X$LrM5C$_Pm:
chkey ^DC'DS\\?(encryption key)
keyenvoy
a)C'xLk\?~qw.dDPi
keylogin
b\"f"C'D\?(secret key)
keyserv
f"+PM=P\?
mkkeyserv
t/ keyserv X$Lr,"!{"M /etc/rc.nfs D~PD`&u?
newkey
Z+P\?D~P4(;vBD\?
rmkeyserv
#9 keyserv X$Lr,""Mt /etc/rc.nfs D~PT&Z keyserv X$LrDu?

304 T\\m8O
ypupdated
|BxgE"~q(NIS)3qPDE"

TBG^ELM'z'VdCD~:
bootparamd
a)^ELM'zt/yhDE"

TBG NFS S}LPm:


cbc_crypt()"des_setparity() r ecb_crypt()
5V}]S\j<(DES)}PLr#

NFS T\ 305
306 T\\m8O
LPAR T\
>wba)KTVx(ZyZ POWER4 D53OKP)OD AIX T\xP<G"`SMw{D{bM<r#

PXVx0d5VD|`E",kND AIX 5L Version 5.3 AIX Installation in a Partitioned Environmentr


Hardware Management Console Installation and Operations Guide#

_-VxDT\"bBn
ITCwV==dCyZ POWER4 D53,g POWER4 CPU b0*`>,#i(MCM)DOs53,r
_ POWER4 CPU b0*%>,#i(SCM)DO!53#

&C$w:Xr53DT\Xc;,x;,#

1&Cm~;\Zs?&mw.dOCXlu,r_h*VxinT1,LPAR Ia)Z2~9CODinT#
Zb)ivB,Z`v!VxOKP;vLrD`v5}HKP;vsD5}\zz|sDLB?#}g,g
{;v&CLrhF*;v8u;P_LD%;xL,r|+Z 2 7r 4 753OKP<C,+GZOsD
SMP 53KPI\a\=^F#+bvLrKPZ!D CPU Vx"P/*EZXBhFbv&CLrTcd
V{Cs?D CPU#

Zvj8D!d/Vv1&C<G_-VxD~,T\#53\mLrML~F\Zf3d"VxD CPU M
Jdw#&CLr";*@VxZfD;C,Di CPU ;8(,rDvJdw}Z9C#ZT\`SMw{
1T&CLr45Pm`"bBn,|Gf0ZfT CPU D;C"2m L2 M L3 _Y:fT053\mL
r\m53ODVx73D*z#

LPAR Yw53"bBn
PX LPAR Yw53,P`vJbh*<G#

yZ POWER4 D53ODVxIZTBYw53OKP:
v x 32 ;ZKD AIX 5L#
v x 64 ;ZKD AIX 5L#AIX 5L 64 ;ZK*KP 64 ;&CLrxxPKE/,"(}Jm&CLr9
CVdxCVxDOsomZfa_IluT#
v x 64 ;ZKD Linux®#

;v53D?vVxIKP;,6pDYw53#VxGhFCZtkKPZ;,VxDm~D#bVtk|
(@9}#Dm~POMqbDm~%wrF LPAR AO#;IgVxCJ}],2;IT(}}#Dxg,
SCJ}]#;vVxDm~@#,|(&Cm~@#M53m~@#,;a<Bd{VxDF5#9C2m
Wc2~J4DVx;\;xd{Vx9Cb)2mJ4Dza#}g,2m PCI EDVxM;\^^$x(
PCI \_#

53i~
`V53i~Xk-,KPT5VM'V LPAR 73#

&mw"L~MYw53.dDX5h*?vi~<'VX(D/}#rK,LPAR 5V";vvGyZm~"
2~rL~,9yZb}viIIV.dDX5#POWER4 "&mw'Vv?N=D53wC(F*
Hypervisor™ ==),|JmqCX(DLrCJ3)2~h8#OvD'V2|(T&mwPDG)h8D#

© Copyright IBM Corp. 1997, 2006 307


$#bV#=Jm&mwCJK&mwyZVx.bD53E"#Hypervisor 759C!?VD53 CPU M
ZfJ4,rKZHO9C Hypervisor M;9C Hypervisor KPD$w:X1,(#aT>3)"!D0l#

yZ POWER4 D53IS`VVxdC}<,gBy>:
v 4KP LPAR 'V"rx Hypervisor 24KPD(C2~53#bF*j+53Vx#
v ZKP Hypervisor D53OKPDVx#

`FT_-Vx
3) yZ POWER D=( 53\;4(W5T_-Vx#bVXT@]?vVxyZD`Tom;C,T/
v(K?vVxy9CD53 CPU MZfJ4#

2~\mXF((HMC)+53V*xP 4 &mwr 8 &mwVxDTF LPAR,b!vZ\m1Z20}


LPD!q#&mwMZfZ MCM _gOX*p4#bVhF953I*;i_P`,/:ZcD/O,I
TF<$w:Xa)T\ODE/#g{53TbV#=t/,r;\TmSM>} CPU MZfD==TJ
4xPw{#$w:XKPZ`FT_-VxOHZU(_-VxOIqC|`DT\#

":AIX ZfW5TZ LPAR ==B;IC#

VxPD$w:X\m
AIX PD`,$w:X\m$_fZZ?v AIX VxP#

ZVxZKPDAIX $w:X\mw(4 WLM);a4=NN;,#WLM ;agVx\m$w:X#KP


&CLr_I\x-+ CPU rZf8(x$w:X,"Z{Vx2Iby#+GZVxP,+ CPU Vdx
?vVxG$w:X\mw&y;0D,rK,+;i CPU SX(D MCM 8(xX(D$w:XG;IP
D#$w:X\mwM bindprocessor |nTI+H0VdD CPU s(=X($w:X#

ZVxM$w:X\m.d!q
Z*;WXbD$w:X"&CLrrbv=8!q9CVx9G9C:X\m1,P`Viv*<G#

(#ZvVTBiv1,O*VxGHOJ1D\m==:
v h*Yw53D;,f>r^)6pD&CLr`XT#
v wV2+*s,4h*;,DyP_/\m1"tP}]D?tkr=_.dfZxg@p=DV<=&
CLr#
v ;,DV4}L,}g HA /:M&CLrJO*F,r;,DVQV4}L#
v h*?sDJOtk,TBZ&CLrrYw53JO;a`%0l#
v h*T\tk,TBZ$w:XDT\Xwv;aIE2mJ4#

Z'VVxD53O`Srw{&CLr$w:X1,T\tk\X*#$w1g{9h*,1&md{X|
$w:X,r("P'D AIX $w:X\mXFI\"GWB#`SMw{`X&CLrZtkDVxo|P
O5J#;)#HJ4I;Vdxb)Vx#

LPAR T\0l
Z LPAR PKPkZ SMP ==BD`F&mwOKP,=_D0l;PTxDxp#

308 T\\m8O
Z LPAR ==D53PKPD53\mLr&\(#vSK}#ZfM I/O YwD;= 5% D*z#,1K
P`vVxTd{Vx;c;P240l,+P)!OBa0lT\#53\mLr\mibZfax4;)
nbD*z#bTs`}$w:X45&C";X*,+d0lafE3f3dn/6'DvSxvS#Z&
CLrMsM SMP 53;\CX%d1,VxIT+:X?Ftk=wTDVxOSxa_T\#

#b|!D53
#bY?ZfDOC=(GuYICZVxDZf?#

ZyZ POWER4 D MCM 53O9C1,rmss |nS53OVdZf,xkCZf&Z MCM D24;


C^X#j8DX(T\XwI\y]ICDZfMVd=VxDZfD;,x|D#}g,g{C rmss |
n#b{C>XZfD 8 7Vx,r5JVdDZf;{CMGn?| MCM DomZf#5JO,8 v&
mw2;;(G MCM OD 8 v&mw,xGSICPmPVdD#

1!{dCyZ MCM 53OD CPU 1,53\mLrInX~=9C MCM MZf.dD76#b)T


\0l!1,ax_eDT\Vvx48"Dnp#

VxPD"&mw
"&mwIVd= LPAR#

QVdD"&mw
*i4Vdx LPAR D"&mwPm,k!q HMC OD\\53(CEC)Ts"i4dtT#

dPP;vj)T>KyPVdxKPVxD&mwD10Vd4,#AIX 9CL~a)D`E,b)`E9
z\;(}i4"&mw`EM AIX ;Ck,SVxP6pvQZ9CD&mw#

i$Vdx+&mwVxD"&mw4,,dv+Ng:
> lsdev -C | grep proc
proc17 Available 00-17 Processor
proc23 Available 00-23 Processor

{C"&mwD0l
ZyZ POWER4 D MCM 53O{C"&mw1,Z{v53OT;fZE(}VP"&mwxPDXFw
7IMZfICJT#bI\a0l$w:XD\eT\#

VxPDib&mw\m
S AIX 5.3 *<,ZKwHLrQC=v?,IaOVxD410k/,vSMuYib&mwD9C(bI
T(}VxDom{CJ4@@) #

ZKwHLr?k<@@&C$nDib&mwD}?TzcVxDom{CJ#g{C}?<Bib&mw
D9C}\_,rvSyhDib&mwDy>}?T9$w:X\;)9#IT9C schedo |n4ks|
`Dib&mw#C5C47(Gqh*tCr{Cib&mw,r*wHLr?k;w{}Z9CDib&
mwD}?;N#rK,g{FcvD}VsZ10$nDib&mwD}?,r$nib&mw#g{C}
V!Z10$nDib&mwD}?,r#Cib&mw#

1ib&mw#C1,|G;aq DLPAR GySVxP/,}%#ib&mw;YHrEKPrSU4s(


D$w,+|T;ITKPs(w5#TC'M&CLrI{D*z_-&mwM*zib&mwD}?;a
|D#T53OKPDPd~r&CLr2;P0l,r*n/M;n/Dib&mwG53Z?a)D#

LPAR T\ 309
IT9C vpm_xvcpus IwN}tCM{C[~ib&mwDib&mw\m&\#vpm_xvcpus IwN}D1
!5G 0,m>tCK[~&\#bb6Eib&mw}S\\m#I9C schedo |n4^D vpm_xvcpus
IwN}#PX|`E",kND6AIX 5L V5.3 |nN<s+,m 57PD schedo |n#

TB>}{Cib&mw\m&\:
# schedo -o vpm_xvcpus=-1

*7(GqtCKib&mw\m&\,zIT9CTB|n:
# schedo -a vpm_xvcpus

*+}Z9CDib&mwD}?vS;v,IT9CTB|n:
# schedo -o vpm_xvcpus=1

?vib&mwn`I<C;vom&mw#yhDib&mwD}?G(}Fcom CPU 9C}k


vpm_xvcpus IwN}5DM47(D,gTBH=y>:
yhDib&mwD}? =
om CPU 9C} + *tCD|`ib&mwD}?

g{yhDib&mwD}?!Z10QtCDib&mwD}?,r#Cib&mw#g{yhDib&m
wD}?sZ10QtCDib&mwD}?,rtCQ{CDib&mw#,S=Q{CDib&mwD_
LT;\;ZC&mwOKP#

":&C\G+TOH=FcvD5rO!{*B;v{}#

TB>}hvKgNFc*9CDib&mwD}?:

O;v1ddtZ,Vx A T&mwD9C}* 2.5#vpm_xvcpus IwN}hC* 1#9COfDH=,


om CPU 9C} = 2.5
*tCD|`ib&mwD}?(vpm_xvcpus) = 1

yhDib&mwD}? = 2.5 + 1 = 3.5

+FcvD5rO!{*B;v{}HZ 4#rK,53Oh*Dib&mwD}?G 4#yT,g{Vx A


KP1P 8 vib&mw,r{CdP 4 vib&mw,mbDvT;tC#g{tC SMT,r?vib&
mw+zI 2 v_-&mw#rK,{C 8 v_-&mw,"tC 8 v_-&mw#

ZTB>}P,JH$w:X(KP1;PtC[~&\)<CKnY?Dib&mw(QVdxVx)#B
fDdvGZx 4 vib CPU D53OI mpstat -s $_zID,|8vKib&mwM=vk.`X*
D_-&mwD{CJ:
Proc0 Proc2 Proc4 Proc6
19.15% 18.94% 18.87% 19.09%
cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 cpu6 cpu7
11.09% 8.07% 10.97% 7.98% 10.93% 7.93% 11.08% 8.00%

1tC[~&\1,53+9COfDH=4FcyhDib&mwD}?#;s,FcCvD5aC4+i
b&mwD}?uY=KPJH$w:XyhD}?(Z;5MT\DivB) #BfDdvGZx 4 vib
CPU D53OI mpstat -s $_zID,|8vKib&mwM=vk.`X*D_-&mwD{CJ:
Proc0 Proc2 Proc4 Proc6
54.63% 0.01% 0.00% 0.08%
cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 cpu6 cpu7
38.89% 15.75% 0.00% 0.00% 0.00% 0.00% 0.03% 0.05%

310 T\\m8O
}gzSTOD}]y4=D,{CJDuYM,$(z&mwT$w:XPf,"R1$w/PZ;vib
&mwO1avS`FT#+G,1$w:X\X1,[~&\;a0l9CyPDib CPU(g{h*)D
\&#

&CLr"bBn
TZk LPAR X*D&CLr,z&"bk.PXD8c#

(#,&CLr;ab6=|Z LPAR PKP#z*@P;)8"Dnp,+|GI&CLrZGp4#}K


b)"bBnb,AIX ZVxZKPMZ%z~qwOKP,d==G`,D#^[S&CLrDGH9Gz
DGH44<;P24;,#LPAR TZ AIX &CLrMs`} AIX T\$_G8wD#Z}=&CLr;
h*(}3v AIX 6pDO$#

KPZ LPAR PD uname |n


9C uname |nq!53PX LPAR DE"#
> uname -L
-1 NULL

“-1”m>53;G(}NN_-VxKP,xGZj+53Vx==BKP#

TB>}]>K uname |ngNa)I HMC \mDVxEMVx{:


> uname -L
3 Web Server

Z@@8"DT\np1,Kb&CLrGZ LPAR PKPD,+a\Poz#

ibXF(
?vVxO";PomXF(#

d;om.ZIVdxVx,+?N;IZ;vVxP9C#vZoOMa)XF({"dvD?D,KL~
5VKI AIX S*j< tty h8Dib tty#ib tty Ddvwr HMC#AIX oOS539Cib tty w
*53XF(#ST\GH42,g{s?}]4=53XF((HMC XF(I`S=b;iv),rA HMC
D,Sa\=.PgB,SD^F#

Uz1S
?vVx<PT:DUz1S5,rKb)VxIT$wZ;,D1x#

?vVx.d`%(ED(;=(G(}j<xg,S#1S53OD?vVxi4zYrP1dADE"
1,?v1dAGarVxdC==D;,x;,#

53rPE
uname -m |na)K(eVx1DwV53E"#

xvDrPEG53DrPE,wvVx<;y#IT?vVxP4=,;53rPE#

Zf"bBn
&mZf1P`vJbh*<G#

LPAR T\ 311
(eVx1*8(“X8”"“Z{”M“n!”Zf?#Z@@53XB}<PDdDT\u~1,*@ZfM CPU
DVdI\y]WcJ4DICTxd/G\X*D#,12*G!S HMC VdxVxDZf?MGyVd
D\?#ZCVxZ?,?VomZfI53\mLr3fmD*;'VCtK#

ZfG@]53VdD#VxoD&CLr;\v(ZfDomVd#

PTX "bBn
PX PTX P`v*<GDBn#

IZ?v LPAR Z_-OIS*xP;, IP X7D@"zw,rK PTX `Sw+Q?v LPAR 1w;,


Dzw#?v LPAR Xk0P PTX zmLr xmservd,Ta) LPAR 3FE"#PTX \mw xmperf I
+ LPAR S*{e,r_a) LPAR Zwv&mwD#H|8DS<#xmperf r\XF(QhC*a)b
)S<,+ LPAR |{}Lh*STbM,T9C'I!q}7D LPAR 0C LPAR PD&mw#

PTX 3dmon i~|BsIT>;4wGKPZ%v53ODVxD**#k xmperf Yw`F,3dmon i


~+?v LPAR S*%@D SMP zw#4VdDwz{!q LPAR#

312 T\\m8O
/,_-Vx
DLPAR ZyZ POWER4 D System p 53("k|BUZ* 2002 j 10 Br|m)OIC#ITKPY
w536p;,DwVVx,+G;\ZKP AIX 5.2 r|_6pDVxO9C DLPAR#

Z5V DLPAR .0,zXB}<K;vVxT+=SJ4mS=53P#DLPAR JmSn/_-VxP/


,mSM}%&mw"Zf"I/O e[M I/O )9},Sxa_KxP_-VxD53DinT#zITYV
d2~J4"9dJ&;Od/D53]?hs,x;a0lVxDICT#

IT DLPAR 4PTBy>Yw:
v +J4S;vVxF=m;vVx
v SVxP>}J4
v rVxmSJ4

104VdxVxD&mw"ZfM I/O e[fZZ“UPX”P#53OVPDVxG4;=C53rUPX


PDd{VxD#9C DLPAR,1Sn/VxP}%&mw1,53+Q|ME=XP,;sC&mwITY
mS=n/VxP#1;v&mwmS=n/VxP1,|_PT{vVxZf"I/O X7UdM I/O POD
j+CJ(#&mwITj+VmCVxD$w:X#

zITZ 256 MB DZfxrriPmSr>}Zf#>}ZfTZ AIX VxPKPD&CLrD0lQI


AIX ZK8uj+Tib==KPDB5u!=nM^H#&CLr"ZK)9Ms?VZK<9C(;D;
vibZf#1>}Zf1,VxI\at/3fwH#IZ AIX ZKDm`?VGIV3D,bI\a9T
\56#>}Zf1,Xk`Sw33FE"T7#;a}pw3#

Irn/VxmSrSn/Vx>} I/O e[,}gxgJdw"CD ROM h8rExz#byI\bZh


8>m;#C1;C;:rT020X4Dom}/w4]I`vVx#kmSr>}&mwrZf;,,X
BdC I/O e[h*ZmSr>}n/VxPDh8.04P;) PCI HeN}L#HeN}L(} SMIT
IC#

2~\mXF((4 HMC)k53`,,"RI9z4P/,XBdC(DR)Yw#HMC XkKP R3V1.0


r|_f>T'V DLPAR#*qCk DLPAR PXD HMC YwDPm,kND The Complete Partitioning
Guide for IBM eServer pSeries Servers#

53\mLrG;v\!Dm~c,|a)2~\m\&T0TKPZ%vom53ODibz(Vx)Dt
k#XFVxdJ4F/D|nI(} HMC <NC'gfr(} HMC |nP+x LPAR 53\mLr#
;\;v53\mLrD5}ZKP,"R;P53\mLrEP\&i4kVdJ4#DLPAR ;a#0Vx
D2+T#ITZVx.dF/DJ4xPXBu</,9C;aEtNNP`}]#

DLPAR T\be
a_r5M DLPAR T\P`Vbe#

IZ`v_-ZfiPmSr>}Zf#1SVx}%Zf1,jI DLPAR YwyCD1dk*}%DZf


i}PX#}g,;vSUPVxO>} 4 GB ZfD DR Vx*( 1 = 2 VSD1d#+G,/,Vx
DsZf3fG;\'VD#;\>}|,s3fDZfxr#

`FT_-VxdCyZ`>,#i(MCM)_gTL(#=Vd CPU MZfJ4#HMC ZW5TVxO


;a) DR &mwrZf'V#1KP`FT_-Vx1,;P I/O JdwJ4EIT/,XXBdC#

© Copyright IBM Corp. 1997, 2006 313


(}9&CLrMPd~\;6p DLPAR,9IT{C/,J4VdMME#bb6E&CLrITw{Tm
Ds!4J&BD2~J4#AIX 5.2 a)K DLPAR E>M API,C4/,w{)&L&CLrs!#IZ
6AIX 5L V5.3 (C`LEn7D:DLPAR;;ZP,R=XZ9Cb)E>r API D8>E"#

DLPAR w{$_
P`V$_ICZ`SM'V DLPAR#

9C DLPAR,*z&mwD}?I/,|D#*KzY53PD*z&mw}MI\Dns&mw}.dDn
l,IT9CTBN}:
_system_configuration.ncpus
i/*z&mw}
_system_configuration.max_ncpus
a)53PI\Dns&mw}

AIX 'VzYR3 38F TtCzY$_46q&mwMZfDmSk>}#

T\`S$_(}g curt"splat"filemon"netpmon"tprof M pprof)4hFI\&m DR n/#|G@


5Z2,D&mwrZf}?#Z3)ivB,1}ZKPD$_;azzNN1wC1+4P;v DR Yw,
}g9C tprof M pprof $_#+G,g{9Cd{$_(g curt $_),DR YwI\<B;w7DP*
r9KsbDa{#

P`V$_'V DR Yw#b)$_;hFI\6pdC|D"`&w{d(f#a) DLPAR 'VD$_g


B:
topas 4DdSZ,2;TdvxPbM#4P DR Yw1,topas $_+6pJ4DmSr>},"Ra
yZBDJ4/O4(fJ1D3FE"#
sar"vmstat M iostat
4DdSZ,2;Tb)|nDdvxPbM#4P DR Yw1,a"M;u{"(*zdC"zd
/#;sb)$_yZBDJ4/O*<(fJ1D3FE"#
rmss 4DdTK|nDwC,T0g{Z rmss $_KPD,1"z DR Yw,|Ta4Z{DGyLx
$w#

mS"&mwrZfD DLPAR <r


P`V=(I7(N1vVZfr&mw;cr_N1XkmS I/O e[#

SVxP>}Zfs,49;Pc;DIComZf4:evVZf,DR Yw2\I&4P,0aG;*IT
9Cc;Dw3Udx;GomZf#rK,Z DR >}0s`SVxD3fwH3FE"G\X*D#ib
Zf\mwd8K&m3fwHD\&,+G}HD3fwHI\<BT\56#

IT9CZ 109 3D:ZfT\;MZ 87 3D:"&mwT\;Pa)D<r47(N1avVZfr&m


w;c#I9CZ 213 3D:xgT\;Pa)D<r47(N1XkmS I/O e[#2IT9Cb)<r4
@FuY3;VJ4yx4D0l#

314 T\\m8O
"Vx
_-Vx9zITZ,;53OKP`vYw53x;aPIE#Z AIX 5.3 .0,G;\Z;,DVx.d
2m&mwD#S AIX 5.3 *<,IT9C2m&mwVx,4 SPLPAR(2F* Micro-Partitioning)
#

Micro-Partitioning B5
Micro-Partitioning+ib&mw3d=om&mw,ib&mw;8(xVx(x;Gom&mw)
#

IT9C Hypervisor 48(<m2mVx<CD&mw9CJYVH,bGw*;VZ(4(eD#&mwZ


(Dn!5* 10%#

9C Micro-Partitioning I5VBPC&:
v nQDJ4{CJ
v B~qwDlY?p
v &CLrtk

Micro-Partitioning Z System p5 53OIC#ITKPYw536p;,DwVVx,+G;\ZKP AIX 5.3


r|_DVxO9C Micro-Partitioning#

g{9C IBM eServer p5 ~qw,rITS2~\mXF(r HMC !qTB`MDVx:

(C&mwVx
g{9C(C&mwVx,r{v&mw<a8(xX(_-Vx#

Kb,VxOD&m]?\=CVxPdCD&mwD\&m]?D^F,|;\,}\]?,}Gz9C
DLPARYwrVxZmSK|`D&mw#

2m&mwVx
g{9C2m&mwVx,rom&mw+;ib/,;s8(xVx#

ib&mwD]?6'Dn!5*om&mwD 10%,ns*{v&mwD]?#rK,53ITP`vVx,
b)Vx2m`,D&mw"Zb)&mw.d.V&m]?#?vVxDib&mw}?Dns5* 64#P
X|`E",kNDZ 309 3D:VxPDib&mw\m;#

Micro-Partitioning D5V
k LPAR ;y,I(} HMC (e Micro-Partitioning PDVx#

BmPvKICZ Micro-Partitioning D;,`MD&mw:

m 12.
&mw`M hv
om&mw om&mw5JOG2~J4,|zm(;D&mwKDD}?,x;G&mw>,D}?#?
v>,<|,=v&mwKD#ZyZ POWER5 D53O,om&mwDns}?* 64#
_-&mw _-&mwG\\&mw%*DYw53S<#_-&mwDns}?* 128#
ib&mw ib&mwGzmI;,DVxy2mD_-&mwYVHD%*#ib&mwDns}?* 64#

© Copyright IBM Corp. 1997, 2006 315


14(Vx1,zXk!qG*4(2m&mwVx9G(C&mwVx#Z;vVxP;I\,1_P2m
&mwM(C&mw#*tC&mw2m,XkdCTB!n:
v &mw2m==:\^r^^1
v &m]?:(X2
v ib&mwD}?:yhD}?"n!}?Mns}?

":\^==b6E&m]?;,}8(D]?,^^==b6E12m&mXPICDJ41IT,}&m
]?#

":&m]?Gy]&m%*}(&mwv}+7=!}cs=;)8(D#rK,}g,*Vd&mw;k
D&m\&,rZ HMC OXk8( 0.50 D&m%*#

Micro-Partitioning T\be
zI\av= Micro-Partitioning TT\D}fr:f0l#

Micro-PartitioningDC&G|Jm(};&C?vVxyh*DXh&mwJ4?4a_53J4D{e{C
J#+GIZ,$*zib&mwa<B`XD*z,yTZ!qtT51*<G]?*s#

*Ko=nQT\,k7#4(DVxnY,byIuYwHib&mwD*z#

CPU \/M&CLr(g_T\Fc&CLr)I\;JOZ Micro-Partitioning 73#g{&CLrZ4P


Zd9Cs?VQZ(D&m]?,z&C9C(C&mwVx4&m&CLrD*s#

316 T\\m8O
&CLrw{
Z(Qs?D,&DFLrT\.0,9C>ZPD<uPzZ7(dT\ITDx=NVLH,"R=E/
kw{+ZLrDD)=fx4nsf&#

(#,E/}L|(Bf8v=h:
v 3)w{f0|D4zk,}g,TodMmo=XBEr#bV=(F*V$w{#
v TZ FORTRAN M C Lr,E/$&mwIC4w{"Z`k4zk.0TdmP*;#b)$&mwD
dvG-}E/D FORTRAN r C 4zk#
v FORTRAN r C++ `kw+4zk*;I;VPdoT#
v zkzIw+Pdzk*;IzwoT#zkzIwITE/nUDI4Pzkx9dSY,b!vZy
!D`kw!n#WH(}V$w{r$&m,zITvSb;=P4PDE/u~D}?#

P=VrX0lYHvS:
v &CZLrDvp?VDE/u~}?
v LrDG)?VZKP1D9C5J

g{%v}L4Ps`}$wD0,SYC}LI\a9LrKPYHTxSl,m;=f,g{C}L+Y
wC"R^[gN<;a<C\$1d,r|I\T\eT\;aP+sDDx#Z@@T\<uM}]1k
NGb;c,byzcIT++&/PZTzD$wnP[5D<uO#

PXb)<IDj!V[,kND Optimization and Tuning Guide for XL Fortran, XL C and XL C++#mk


NDZ 72 3D:P'DLrhFM5V;TKb|`a>M<I#

`kwE/<I
E/`kwP`V<I#

E/4zkD}vw*=fgB:
v `L<I,|G{CE/`kwM53e5a9#
v BLAS G“y>_Tz}S}L”b#g{z*&mDG;v}]\/DLr,b)S}LITTxa_dT
\#BLAS D)9G ESSL,4“$LF'S}Lb”#}K BLAS bDS/Tb,ESSL 9|(d{/'"
$L'"om'=fD_T\}'}L#SMP zwP;v"PD ESSL(PESSL) #
v `kw!nMng KAP M VAST $&mLr,bIIZ}=)&La)#

}Kb)4zkw{<ub,fdpr LrIw{Tszk#fdpr LrZZ 100 3D:C fdpr LrX9I4PL


r;PPv#

xE/D`k
C=_T\LrDZ;=GdV{C`kw>mDy>E/XT#

xE/D`kIa_YH(bVaY4TLrw{),"RI\b4P3)w{#

(i

4Bf8OE/Lr:

© Copyright IBM Corp. 1997, 2006 317


v !q -O2 r_ -O3 -qstrict !n`kNNz76D FORTRAN"C"r_ C++ Lr#TZ_T\D
FORTRAN(HPF)Lr;*!q -qstrict !n#
v T519C-7r}ioTDLr9C -qhot!n#T HPF LrnC!q -qhot !n#
v ZS|*"\Zax1,g{`k1d;Gw*<GDJb,rk!q -qipa !n#

-qipa !n$nr(FF*}LdVvD;`E/#bv -qipa !nP8vS!n,Z`kwVaPPj8i


\#|ITBf=V==9C:
v Z;V==GZ`kM,SWNM -qipa !n;p`k#Z`k}LP,`kwZ .o D~Pf"Lr.d
DVvE"#Z,S}LP,!q -qipa !nSB`k{v&CLr#
v Z~V==G*C=E*VvD~M -p/-pg !n;p`k(I*I;* -qipa),T(CD}]KP#a{
}]Y<ksf!q -qipa !nD`k}LP#by`kwM/PE/519CDLrDZ~?V#

!q -O4 !n`1Z!q -O3 -qipa T/zI=(De5a9ME/!n#!q -O5 !n`FZ -O4 }


G -qipa= level = 2#

1z9C`kwE/sIo=BfD'{:
V'DE/
XBw{LrzkTn!/V'_-"aOomO@"Dzki#
zkDKP
ZFc1g{-7P9CDd?Z-7Zd54Dd,rFcIZ-7b4PRa{IZ-7Z9
C#
+2Smo=D{}
Z+2mo=P,`,D5ZsfDmo=PVYc;N#9C0fFcD5I{}X4Dmo=#
#?D+]
mo=PD#?iOI;vBD#?#Z{M#?M!cM#?.dxP~=*;#
^'zkD{}
{}D);PC=Drda{ZsfDKPP;PC=Dzk#
^'f"D{}
Zf"D5;Y;}CD1r{}b)f"Z]#}gg{,;X7D=vf"5;P`%SX,r
;X*#tZ;vf"5#
+VDfwDVd
9C“graph coloring”c(xDfwVdd?Mmo=#
6k<u
T5JDLrzkzf/}
8nDwH
XE8nTuY4P1d
Lr.d`%X5DVv
R>/}wC"{}:X"f"M;\(}1SE/=({}D@F.dDX5#
zkgvD;d?
S-7P>};dD*;zkTC=d{I\DE/#
E*D~}/D4!
>}D4Pa{CZa_u~*;M514PzkNDE/LH#
X*O XE}iBmmo=DFc3r,zI|JK{}+2mo=Da{#

318 T\\m8O
f"D4P
+f"8nwv-7e#
?HDr/
T_'8nf;M'8n#}gZ}iBjP,TS(8nb;K(8n#
5D`E
|(#?+]"{}mo=08nr/#

N1xP^E/D`k

;!qcT<C{EwTwwTDLrD -O !n,x;\zGq!q -g !n#;xr* HPF LrDE/


\X*,yT!q -O3 -qhot !nuAZwTD}LP#

E/wXBw{c`oT8n,xvS%;8n3d=4zkDQH#g{c!q -g !nxP`k,9C{
E`kw`k1+<Bu<6Dywms4P#

g{c!q -O !n`k1C=msa{,lizDLr4G;Gr*Z}L}CP^bXl}K;,Dd?#

kTX(2~=(D`k
ZkTX(2~=(xP`k.0,P8c&C<G#

53I9C`V`MD&mw#(}9C -qarch M -qtune !n,IkTb)&mwDXb8nMXp&m


\&E/Lr#

(i

4Bf8O`kX(2~=(DLr:
v g{LrvKPZ%v53rKPZ&mw`M`,D;i53O,r9C -qarch !n8(&mw`M#
v g{LrKPZ;,`MD&mwD53ORzIT7(DV`MD&mwGnX*D1r,k!q!1
D -qarch M -qtune !nDhC#XL FORTRAN M XL HPF C'IT!q xxlf M xxlhpf |n,T;
%==hCN}#
v g{#{LrITKPZyC`MD&mwD53O,x;#{LrKPZ3;X(D&mw53,;*
!q -qarch r -qtune#

kT!cT\D`k
zITDd,OD!c!nTa_!c\/MLrDT\#

dPD;)!nI\a0l!cj<D;BT#!(b)!nI\aDdFcDa{,+Z\`ivB<Gv
Sa{D<7T#

(i

kq-BP<r:
v T POWER 5PM POWER2™ =(OD%+HLr,IT(}!(Bf!c!nZ#$<7TD,1a_
LrDT\#
-qfloat=fltint:rsqrt:hssngl

g{%+HLr;Gf"wS?MD(}g;\f!HICD_Y:fUdsD}]),ITo=|CD
T\"|_D+H,;*wgBh(:
-qfloat=fltint:rsqrt -qautodbl=dblpad4

&CLrw{ 319
T;|,%+Hd?DLr,;*h(:-qfloat=rsqrt:fltint#"b -O3 ;|, -qstrict T/h(
-qfloat=rsqrt:fltint#
v %+HLr;cH++HLr'J_,rK+,OD REAL 5h* REAL(8) a5MLrT\#h( -qfloat
S!n:

8(_Y:fs!
g{LrKPZX(DzwrdC,IT(}`kw9LrMf"wD<C`-w,b;*!( FORTRAN
-qcache !n4I#

Xk,1hC -qhot !n* -qcache T9LrP'#-qhot !n(} -qcache !nDE"Tv(OJDZ


f\mE/#

P}V`MD_Y:fw:}]M"8nTMlOM#ME;cV*=V:}]M8n_Y:fw;%;D}
]/8n_Y:fw#TYPE S!nIT7( -qcache !n8DGG;`_Y:fw#

bv -qcache !n2CZ7(~6:fDs!MaOT,T07(*;s8:ew(TLB),bGCZiRn
|DZf3f}CDm#Z`}ivB,;X8( -qcache !nD TLB kZ,}GLr9CD}]UdsZ
512 KB#

P1h(MD SIZE tTITa_T\,b!vZKP1D53:X#

)9Z*}LwC
6k<u |(4F}CD}L=;}CD}LP%#6k<u{}KZ*LrDwC*z"9E/w4Pd{
DE/<u#

T FORTRAN M C LrIT8( -Q !n(,1!( -O2 r -O3)T+Lr6k=}C{GDX=#

6k<uZ3)LrPI\aa_LrT\,Zm;)LrPI\a5MLrDT\#6kLrr*OsDz
kx<B_Y:fD*'M13JO,r_Gr*Z;)*OLrPIZ53;Pc;DDfwTZ;)}L
P]IyPDV?d?,SxdC:}#

g{9C -Q !n,k<UT(};,==`kDCf>LrDT\xPli,dP;vG`k1!( -O3 M


-Q !n,m;vG`k1v!( -O3 !n#!( -Q !nDLrT\I\aTxa_,2I\a5Mr_G
;P24d/#

`kwy]Z*LrDs!47(Gqek=LrP#zIT(}9Cd{D6k<r4a_&CLrDT
\#(#ZLrD4P}LP,G);-#}CD}L(gvm&m"wTLr)I(}!( -Q-names !n
P!qX{9LrDZ*#ZHcZ}CDLr,IT!( -Q+names !nT7#b)LrT;Z*#

N19C/,4SM2,4S
Yw53a)KzIM9C/,,S2mbD$_#&CLr}CDZ2mbP(eDb?{E(}/,,S
ZSXD1r;&m#1C'`k9CK2mbDLr1,+aT,OD==/,,S=C'DLrP#

2mbD<kG;#f;v-#9CD}L"f"Z(;D2mbzkNP#b)+2}LITTx5MI4
PLrDs!SxZ!ELUd#

I9C/,4SuYLrs!,+(#a0lLrDT\#2mbzk;G#fZELDI4P3qD~P,
xG#fZ;vV*DbD~P#2mbzk;NSX=2mbNZ"*yP}C|DLr~q#rK/,,

320 T\\m8O
SbuYKLrDibf"Ud,10KPD`v&CLr(r,;&CLrD;,f>)IT}C/,,S
bPDLr#/,,Sb2uYKLryhDELUd,Z,;v53Pf"D8v;,&CLr2m,;v
/,b#/,bDd{EcgB:
v IZ2mbzkTZf"wP,SxuYSX1d#
v IZYw53uYKjw`v&CLrr,;&CLrD;,f>9CD2mbzkx;Gv;%;&C
Lr}CDzkD3}D8J#SxuYK13JOD"z#
v Z&CLr0Xs,bPDLrG/,x;G2,X,S=&CLrP#b9&CLr^hXB`krs
(MT/X+LrDd/LP=/,bP#

/,,SD1cgB:
v ST\DGH4,I4PLrCJ2mf"Nh*“3*zk”#Z?N}C2mbPDLrh*Kvzw\
Z1a0lKPDT\#9C/,,SbDLr(#H9C2,,SbDLr}#
v m;v|"!D0lG“}C(;”D5M#cI\;C=bPD;)Lr,+b)LrV"f"ZbDib
X7UdP#byC'h*f!LrD3f}TxHyPb)Lrs(=I4PLrPD3f}`#by
D0,g{cGb)bLrD(;C',1c+b)LrwkZf1|PI\zz3fms#mbIZ*
(h|`D3f,avS8n*/s8:ew(TLB)*'DI\T#
v 1&CLrP^}CbPD}L1,|,}CLrDbPD?;v3fXkVp=kZfP#g{Lr\
!,9C2,,Sa9Z;,b3fPDLr,I;v%;3f,byD0/,,SavS3fSx5M
LrKPT\#
v /,,SLr!vZ;vf]D/,b#g{/,b"zKd/(}g"<BD`kwaDd/,b),
I\*D4&CLrTf]Bf>D/,b#g{53>tK/,b,9CK/,bDLrM;\}#K
P#

Z2,,SLrP,yPDLrzk|CZ;vI4P#iP#r*bLr2,,S=&CLrP,bD}C
'J|_#2,,SvS&CLrD~Ds!,g{53,19KPd{D&CLr1,2,,S2avSZ
fPzkDs!#

bv cc |nG,OD2mb!n#Z`k&CLrzI?jD~1,h( -bnso !nI2G,ODhC:


cc xxx.c -o xxx.noshr -O -bnso -bI:/lib/syscalls.exp

bv!n?F,Sw+&CLr}CDbLrek=LrD?jD~P#bv /lib/syscalIs.exp D~|,&C


LrS53PSXDbLrDLr{#2,,SXk8(bvD~#b)LrD{VZ/,,SPI libc.a D
~T/SX,rKZ/,,SP^h8(bvD~#PXb)!nDx;=j8E",kNDZ 353 3D:ld |
nDP'9C;M Id |n#

7(G2mbGqPzZT\
7(2mb=(TzD&CLrGqP'D;v=(G9CG2m!nXB`kzDI4PLr#

g{k*Txa_LrT\,IT<G~|2mbDd{Ec#;x*7ET\b(Du~Df5T#G2m
DLrZ:X;_DzwOKPI\al;)#P)bLr,1;`v&CLrwCD1rI\avSZfD
*z45M\D$w:X#

$0k2mb
LDR_PRELOAD M LDR_PRELOAD64 73d?9xL$0k2mbI*I\#LDR_PRELOAD 73d?CZ
32 ;xL,x LDR_PRELOAD64 73d?CZ 64 ;xL#

&CLrw{ 321
Z{EbvZd,+WHQwC73d?PPvD$0kb,TiR?;v<kD{E,v14R={E1E
a9C#fQw#9$0kbPD{E<H,bT AIX 1!4SMKP14S<pwC#SYD{Ebv;
d#

PXb)73d?D|`E",kNDZ 374 3D:d{IwN};#

8(4S3r4uYsLrD3fwH
ZLr`kD4SWN,4SLr*a_}CV?TxXB7(Lr%*D;C#

}gg{;v}L}CKm;v}L,4SLra+}Lt$ESX#i,byIT9}CM;}C}L8r
,;vibZf3f#bIuY3fwHD*z#1Z;v}LZ;N;}CD1r,53+|,|D3fw
kZf,byZ}CZ~v}L1^hnbD3fwH*z#

Z51wCfELrzk3fDsMLrP,C'&?FZ4SLrPSX4SD3rE"#C'IT(}2
EXFxrM!( -bnoobjreorder !nT@94SLrXBEr#;vXFxrr CSECT G?j#i
(XCOFF)Pn!DIf;zk%*r}]%*#PXx;=Dj8E",kND:AIX 5L Version 5.3 Files
Reference#

;x,Zf08(4S3rD1aP;)gU#NND,SNrXBEP\atzE;vT\bTLrTR>
BD,STLrDKP'{H-4D,SC#Z("T:D4S3r0k<GTB8c:
v Xk7(&CLrPyP CSECT D4S3r#CSECT XkTC'#{D4S3r<k4SLrP#ZsM
DLrP,&COf<GbyD,&,r*byyavm#
v Lr`41PDT\s4I\a;PK,r*DdzkDs!a}p CSECT 4EZ,;3fPDzkV"
*c"D3f#
v XBEPITDd8n_Y:f_7e;D5J#Z_P8n_Y:fraOK}]M8nD+r*S_
Y:fD5VO,LrD?;Pzk;\f"Z_Y:f=u_7DdP;u#g{}vr}vTOD`
%@5DL}L_P`,D:f;BT`M,8n_Y:fD53_$a5MT\#XBEPa}pS;
"z}D_Y:f_7e;#|2IT{}14!( -bnoobjreorder 1y"zD_Y:fPe;#

g{C'kE/&CLrD4SNr,Z;vl$D$w73;d{Lr<C+?f"wD53PbTT\#
;vKP:X\!DH(53PKPD4SNrKPZ;v1&D53P1a<B53D3f53_$#

wC BLAS M ESSL b
“y>_Tz}S}Lb”(BLAS)ZXs - Xs"Xs - r?"r? - r?_Tz}=LKc=fP\
CDT\mV#$LkF'S}Lb(ESSL)|,|*+fDS}L/,yPb)S}L<QkT yZ
POWER D 5P"POWER2 M PowerPC e5a9wKw{#

BLAS M ESSL S}L*C'E/m`}'KcZ!\`+&,xRHV/w{rV4}'KcDT/E/D


T\C#C'ITS FORTRAN b"C bM C++ LrPwCb)}L#

BLAS bU/KZWce5a9P;_HE/}Dy>_Tz}S}L#ZYw53(/lib/libblas.a)PTx
BLAS S/#

C'xPXsMr?KcD1r&CwCb)/}b,r*b)/}Q;E/=C'vK;I\o=DLH#

BLAS S}LG* FORTRAN LrDwCxhFD,+2I; C LrwC#Z}CXs1&"bLroTD


xp#}g FORTRAN TPEHf"}i,+ C GTPEHD-rf"}i#

*|, BLAS b(fZZ /lib/libblas.a),kZ`kwodP9C -lblas !n(xlf -O prog.f -lblas)


#g
{S C LrwC BLAS,r9*|,m> FORTRAN bD -lxlf !n(cc -O prog.c -lblas -lxlf) #
322 T\\m8O
ESSL G;vc:&CZ$L'"/'"om'D_6}'/}b#

9C BLAS r ESSL S}LDEcgB:


v BLAS M ESSL S}LwC`4H|Gyf;DYw]W#
v BLAS M ESSL S}LZ;,D=(dGIF2D#S}L{MwCNrQ-j</#
v BLAS zkZyP=(O<ITKP#}LDZ?zk(#G=(X(D,rKzkMe5a9DT\Xw
Pt\*5#

Z>}LrPDBfEP FORTRAN zk:


do l=1,control
do j=1,control
xmult=0.d0
do k=1,control
xmult=xmult+a(i,k)*a(k,j)
end do
b(i,j)=xmult
end do
end do

CBf;PwC BLAS S}LD FORTRAN zkf;:


call dgemm (`n’,’n’,control,control,control,1,d0,a, control,a,1control,1.d0,b,control)

C=BfDT\a_}]:

}i,} MULT p' BLAS p' H}


101 x 101 .1200 .0500 2.40
201 x 201 .8900 .3700 2.41
301 x 301 16.4400 1.2300 13.37
401 x 401 65.3500 2.8700 22.77
501 x 501 170.4700 5.4100 31.51

bv>}R>K;vwXsK(KcDLru4y|CX9C 3 6 BLAS }L4a_T\#k"bT\fE


}is!DvSxa_#

E*Vv(rD4!
PDF G;v|ncNODLrE/!ng}<DfwVd"8nwHMy>zklXi#

9C PDF 1k4gBYw:
#-lpdf !nZ4SWN2h*!(#d{y
1. `kLrPD4D~1!( -qpdf1(/}main() 2Xk`k)
PC=D`k!nZZ 3 =2C=#
2. <UTdM}]/KPLr#1LrKv1,|+E*VvE"G<=;v{* .__BLOCKS DD~P,
KD~;Z PDFDIR 73d?y8(D?<,g{4hCCd?,r;Z10$w?<#zIT`NT;
,D}]/KPLr,E*VvE"+}[B4Ta)`Cq!V'04PzkiD<7N}#ZLrD
dMKPP9CPzmTD}]\X*#
3. TZ;=D`kw!nh(XB`kLr+*+ -qpdf1 D* -qpdf2#G! -LM -l G4Sw!n,+I
TD|G,HOXpDGITvT-lpdf!n#ZZ~N`k1,}[DE*VvE"+CZE/D"w#
zIDLr;|,NNE*Vv*z,xTnlDYHKP#

P=v|nCZ\m PDFDIR ?<:

&CLrw{ 323
resetpdf pathname
>}yP76{?<DE*VvE"(+;*>}}]D~) #g{;P8(76{,rZ PDFDIR ?
<P;r_g{;PhC PDFDIR,rZ10?<#ZcD/&CLrRXB`k;)D~1,b)D
~DE*VvE"+T/XBhC#ZxPTxD/(I\a0l;PXB`kDLr?VD4PF
})s,kKP resetpdf |nT4;{v&CLrDE*VvE"#
cleanpdf pathname
S76{r PDFDIR r10?<P>}yPDE*D~#g{DdLr,rk>}E*D~E"Tu
YKP1*z,;sYN4PyPD PDF }L#!( -qpdf2 !n`ksKPLr#

fdpr |n
|n fdpr ZQ`kDI4PLrZXB2Ezk3rTa_*;T\,SLrHcP>}\Y9CDzk,
4Pd{D+VE/#

x\`u~bTDsLrr"*D\Y}C}LD_Ha9/LrKPDHOC#Z 100 3D:C fdpr LrX


9I4PLr;PhvK fdpr |n#

* FORTRAN M C E/$&mw
T\bTmw;civB,ZE/!nhC`,D1r,-}$&mLr&mDH;-}$&mLr&mD;
zLrDKPT\IC= 8%—10% Da_#

FORTRAN `kwD KAP M VAST $&mwITXB9l FORTRAN 4zk,T|CX9C POWER 5


P"POWER2 M PowerPC &m%*J40ZfcNa9#P;vf>D KAP $&mLr2ITDd C o
T4zk#$&mLr4PE/Zf\m"z}*;"6k<u"PdzkVv0d{a_ FORTRAN r C &
CLrT\DE/Yw#

KAP M VAST $&mLrT<+44,DKc(r*;InP'X{C`kwDE/\&DKc(r#$&


mLr,1zI7(y4P*;DM{94P*;zk;CDPm#$&mLrVv4zk"4PIa_Lr
T\D*;#

$&mLr4PDNN*;,y2I(}V/w{5V#$&mLrHV/w{DEFgB:
v Z\`ivB,-}$&mw&mdvDLrAYMV/w{C=DLrT\`,,R;vSLr1\`
D1d#g{c9C$&mw,z^h9WmbLrDa90>id{X=V[}Dw{<u#
v T;)Lr,zvv(}!(;)|nP$&mw!n0Z4LrPmSY?Da>MIC=_HE/D
zk#Z;\(}$&mLrTxa_LrDT\1,hz$&mLrPmIT7(4LrP;\;E/
DzkN#
v $&mLr4PD;)*;I\as?vS4Lrzk,;xvSDb)zkaa_zDLrDKP'
J#(}V/w{5VI\avSc(msM!"ms"5M4zkDIAT"vSLr,$D'Q#
v $&mwITzI(*X(e5a9dCxw{Dzk,uAG POWER 5P"POWER2 M PowerPC 5
3O;ICDzk#IT,$%vf>D4zk,"zI(*;,D POWER 5P"POWER2 M PowerPC
MEr(*_Pd{_Y:fM&mwXTDzwxw{D*;f>#
v $&mLr-#ITDFV/w{Dzk#z2IT(}V/==+Lrw{=M$&mLrD'{n;
`DLH,+(}V/==5VDG#4SD*;w##azzmsDzk#

324 T\\m8O
zkE/<I
r*f"wMEL.dDYHnlH_Y:fkf"w.dDYHnlsC`,M'9Cf"w<BDT\B
5HM'9C_Y:f1DsC`#

zkE/<I|(:
v *u!LrDzk$w/,+-#KPDzkS;-#KPDzkPVkv4"&sZ;p#;d05,
;*+$iDvm&mzkEZ;pR;*51SXwC#i#
v *u!}]$w/,+-#9CD}]/PEZ;p"\b51}C3f#bI(}wC malloc() S}L
x;GwC calloc() S}L5V,|Z9C}]0u</}]R#$Z;h*9C}]D1rMEQVdD
f"Ud#
v *9k=f"n!/,+b)#tzkb0Z@"D#iP#7E*9C#tzk#3)53a9(g mbuf
pools)#tZf"wP,;*K*vS|GDZ]#
v 2I9C51<I,g plock()S}L+zk#tZf"wP,dEH6M setpri() S}LPX#

3dD~
3dD~D9CG;VzkE/<I#

&CLrIT4P shmat() r_ mmap() 53wCTX7==f!D~,x;C`vA453wC#r*5


3wC*{DJ4,yT!?Y4P53wC#shmat() r mmap() wCH(#D read() r write() 53w
CT\a_ 50 6#*9C shmat() S}L,r*;vD~"5XD~hv{(fd),MCq9C read r write
53wC#;v shmat() wC5X3dD~Df"X7#h(8k8rB;vD~PDX7,x;G`N4P
AwCSD~AkXs#

bv mmap() wCJmZf3d=;fN_g#;vC'sEP 10 v3d=f"wDxr#mmap() /}a


)3f6Df"w#$#%v3fPT:DAYwr4Yw,r_|G;h*f!JmhC#mmap() wC'
V;vD~D%3f3d#

/} shmat() wCZ;vD~3d=`vNPD1r'V`N3d#

BfDLr5wgNCA!odS;vD~PA!}]:
fd = open("myfile", O_RDONLY);
nptr = (signed char *) shmat(fd,0,SHM_MAP | SHM_RDONLY);
for (i=0;i<cols;i++) {
for (i=0;i<cols;i++) {
read(fd,&n,sizeof(char));
*p++ = n;
}
}

9C shmat() S}L,r;PTBDA!yw2I5V,yDa{#
fd = open("myfile", O_RDONLY);
nptr = (signed char *) shmat(fd,0,SHM_MAP | SHM_RDONLY);
for (i=0;i<cols;i++) {
for (i=0;i<cols;i++) {
for (i=0;i<cols;i++) {
*p++ = *nptr++;
}
}

&CLrw{ 325
9Cw7D3dD~D(;1cG4Yw#53X4&\(\ZTX+^DCD3fT,xiDN=3r4=
D~P)Z&CLrwC shmat() r mmap() S}LD1r;\5V#;Zibf"\mw(VMM)ksU
dD1rfzX4/Pf"Zf"wPD^D}D3f#bViv#a}p!f#D4ELYw,Sx<B CPU
MELDM'9C#

326 T\\m8O
Java T\`S
P`V=(ICZZ Java &CLrPtk?1Mw{T\#

Java GI Sun Microsystems, Inc. *"DfrTsD`LoT#|T C++ *#M,hFCG#!xr%,"


RZ4zk6pM~xF6pOIg=(MYw53F2#Java Lr|, applet M&CLr,rKITZ20
K Java ibz(JVM)DNNzwOKP#

Java DEc
Java Hd{NNoTM73<PTxDEF,b9C|8uJOZNN`LNq#

Java DEcgB:
v Java ]W'0#

Java hFI]W9CDoT,rKHpd{`LoT||WZ`4"`k"wTT0'0#
v Java GfrTsD#

bJmc4(#i/LrMIXCzk#
v Java G@"Z=(D#

Java nTxD;vEFMG|IT\]WXS;vFcz53F2=m;vFcz53#Zm`;,53O
KP,;LrD\&Tr,xm~AXX*,Java Zb=fDI&ZZ|Z4zkM~xF6pO<G@"
Z=(D#

IZ Java D!3T"9C=c"g=(D\&M2+TXc,|QI*Ka)@g6'ZrXxbv=8D!
qoT#

Java T\<r
IS`v=fa_ AIX OD Java T\#
v 1xP}`DV{.YwT\b;X*X4(G)nUXk-z,xU/DTs1,I9C StringBuffer &
\x;GV{."C#
v \b}`4k Java XF(TuYV{.Yw"D>q=/T0dvD(Q#
v X*1(}9Cd?D-o`M4\bTs4(MYwD(Q#
v T#CTsxP_Y:f,TuYXkD,xU/?,"\bKXB4(Ts#
v ZI\DivBT>zYwViTuY Java >zSZ(JNI)wCD}?#
v v1Z JVM MYw53PXk^F`Nq1E9C,==(#
v }GX*\bwC,xXUw#g{zXkwC|,;PZUP1dr;)GX|WNYbyv#
v !I\9C{Mx;G${M,r* 32 ;YwD4PlZ 64 ;Yw#
v !I\yw=(* final#JVM IOCX&m final =(#
v Z4(#?TuYh*u</d?DN}1k9CX|V static final#
v \b;X*D“casts”M“instanceof”}C,r* Java PD}]`M*;GZKP1jID#
v 1}iITzc*s1!I\\b9Cr?#
v +nmS=r?2?rSr?2?>}n#

© Copyright IBM Corp. 1997, 2006 327


v C -O !n`k Java D~#
v \bZ-7PVdTs#
v 9C:ex I/O "w{:exs!#
v 9C,SXM<8:fywxP}]bCJ#
v 9C,SX,S=}]b"XC,Sx;GX4r*MXU,S#
v ns/Mn!/_L4(MzY\Z#
v n!/2mJ4DyC#
v n!/Lz|\ZTsD4(#
v \b6L=(wC#
v 9CXwT\bh{6L=(wC#
v \b4(vCZCJ=(DTs#
v #V,==(&Z-7b#
v Z}]bPT Unicode N=f"V{.MV{}]#
v T CLASSPATH XBEr9Cn#CDbHvV#

Java `S$_
P;)$_IC4`SM6p Java &CLrPDT\VFrX#
vmstat
a)wV53J4D`XE"#|(fKKPSPT0H}SPPZK_LD3FE""Zf9C"
3fwHUd"EL I/O"PO"53wC"OBDP;T0 CPU n/#
iostat (fj8DEL I/O E"#
topas (f CPU"xg"EL I/O"$w:X\mw MxLn/#
tprof T&CLrxPE*Vv,TiwNNI\O*PT\JbDn/}Lr=(#
ps -mo THREAD
T>3vxLr_Ls(xDv CPU#
Java E*Vvw [-Xrunhprof,Xrunjpa64(64 ;ZK),-Xrunjpa(32 ;ZK)]
7(D)}Lr=(9Cn*51#
java -verbose:gc
li,xU/T&CLrzzD0l#|(fK,xXUy(D\21d,=y?;N,xXU(Q
1d,=y?;N,xXUU/DZfT0=y?;N,xXUPDTs}#

AIX D Java w{
AIX P;ikT Java 73DFvN}#
AIXTHREAD_SCOPE=S
Cd?D1!5* P,m>xL6DyCwCr(M:N)#TZ Java &CLr,z&C+bv5hC
* S,|m>536'DyCwCr(1:1)
#
AIXTHREAD_MUTEX_DEBUG=OFF
,$n/%bTsPmT)wTw9C#
AIXTHERAD_COND_DEBUG=OFF
,$u~d?PmT)wTw9C#

328 T\\m8O
AIXTHREAD_RWLOCK_DEBUG=OFF
,$;vn/%bx"u~d?MA4xPm,T)wTw9C#1u</3vx1,g{PmP;
Pbvx,|MSk=CPmP#KPmT4mN=5V,rK1Pmds1(}Qw|47(xG
qfZM5,KT\Jb#JbGKPmIx#$DB54OxID,bvxZQwYw}LP;1
VP#T pthread_mutex_init() S}LDd{wCXkH},1=QwjI*9#*qCnQT\,
&C+K_LwT!nD5hC* OFF#|GD1!5* ON#
SPINLOOPTIME=500
;vxLZh{.0ITZ1&xOT}DN}#bv51!hC* 40#g{ tprof |ndvmw
check_lock }LD CPU 9CJ\_,"Rg{x(#ZL1dZIC,r&C(}+5hC* 500
r|_4S$T}1d#
,y,*zD Java 73FvTBhC:
ulimit -d ;^F
ulimit -m ;^F
ulimit -n ;^F
ulimit -s ;^F

Yw53Z3)73N}MhCITC4w{ Java T\#Kb,9Pm`w{53i~(g CPU"Zf"x


g"I/O HH)D<uITa_ Java DT\#*7(D)73N}I\JOZzDiv,kN<X(wbTq
C|`E"#

*qC!I\nCD Java T\MIluT,k9CYw53M Java T041(JIT)`kwDnBICf>#

,xXUT Java T\D0l


k Java `XDn#{T\Jbk,xU/zFPX#

g{ Java Q+s,rQXk$tZwZf.b#ba<Bw3n/vS,Sx0l Java T\#

,y,;vsDQI\(\`k%nd#bb6E49,xU/\Y"z,k,xU/`XD]#N}2av
S#

*w{ Java ibz(JVM)Q,k9Cx -ms r -mx !nD java |n#9C,xU/3FE"4oz7


(nQhC#

Java T\`S 329


330 T\\m8O
9CzY$_xPT\Vv
Yw53DzYLrG;v?sD53[l$_#

CzYLr6=;v_P1dAD53B~rPw,a)K;vXZ53n/+86pD8Z#B~Z1dr
PMpDB~OBDPT>#zYLrG;v[l53M&CLr4PDP[5D$_#;sd{;a) CPU
{Civr I/O H}1dD$_,zYLr)dKE"Tozmb24B~}Z"z"-TK:p"B~24
1r"z"|G0l53D-rM==#

Yw53D9lGC4*53KPa)#fI{T#C'IT(}ek=SB~Ma)q=/fr4+I{T
)9={GD&CLrP#

CLrDhFM5VWNTdxP,$,?DG9zY}]U/_',TK(}$nzY9C53T\MwD
Ddn!#rK,w*;vT\Vv$_MJb7($_,zYLrG#PC#

j85wzY$_
zYLrH+3DCJMxv53,$D3FE"53`S~q|in#

|";P$HY(h*243FE",`4,zYLra)KB~w"JmC'v(a!24E"#k+3`
S~q`H,}]{m(53B~r3FE"D*;)ssvSK53lb#}g,m`53(}[lNq A
DKP#fdn!"nsT0=yKP1d"Jma!b;E"#

zYLr";aTxXxlbSX}]{m,xGa)K;VzYB~G<w((#u4* events)
#;PX*
BHv(h*243FE";}]{m\sLHO@"Zlb#C'ITSB~wP!qv(Nq A Dn!"
nsM=y1d#+G2PTBI\:
v 1Nq A ;xL B wC1a!Nq A D=y1d
v 1u~ XYZ ,1vV1a!Nq A D=y1d
v FcNq A KP1Dj<n
v 7(d{;)(}B~w6pDNqTd\a|Pbe#

b;inTTZoOT\r&\Jb;P[5#

}Ka)XZ53n/Dj8E".b,zYLrJmlb&CLr"+|GDzYB~U/=53B~P#
zYD~f4|,K;u_P}7DrPM+7D1dAD&CLrM53n/Dj{G<#

zY$_5V
;vzYR3G;v+;`SDX(B~#;v(;D}V;8(xGvB~,bv(;D}V;Fw;vR
3j6#trace |n`Sb)R3#

trace |nzIXZC'xLMZKS53D3FE"#b)~xFE";4kZfPD=v8C:eP#trace
xL;s+E"+M=ELODU>D~P#bvD~lYv$#trace LrTxL==KP,|IT(} ps
|n`S#trace |nTX$LrN=KP,`FZGJLr#

TBZ]5wKzYLrD5V}L#

© Copyright IBM Corp. 1997, 2006 331


< 27. zYLrD5V. b)pv5wKzYxL#ZCxLP,C'xL(ZKS53)rj* A M B DzY:ex
"MzYR3wC#|G+zY}/LrSb):ex+]=C'ZKDzYU>D~#

9C53J4`SLr#mkivB,*z&1c;!T;awT0l53KP#1 trace Lrn/1,CPU


*z!Z 2%#1zY}]dz:exxXk4=U>P1,h**D~ I/O vS CPU *z#(#b;*z
!ZYV.e#r* trace Lrh*<C:eUd,rKg{73PZfP^1,bMdCHOX*#*"b
zYU>M(fD~I\dC\s#

^FzY}]U/?
zYLrzIs?}]#b)}]Zf"h8OgTs;I\6==#

P=VP'9CzYLrD=(:
v zYLrIT(}`V==4r*MXUT6=53n/#5CD==MG*sx&m6=53n/8k
=8V#bN1dc;C4qCw*&CLr&m}Lr;n$1dNqPK$?VDXw#
v zYLrITdCI+1dw(r*j<dv#bJm;v51xL,S=B~w"1B~;G<1a)
}]{m,;s4($Z`S\&#;v(E`bD_-)9MG+}]w(r=ITf"s?}]ra
)/,}]{mD(zh8#bV<u;T\$_ tprof,pprof,netpmon,T0 filemon 9C#

t/MXFzY
zYLra)}V;,9C==:
S|n==
(} shell |nt/zY(trace)"(}S|nxC'T>T0r#yzYD$w:XXkId{xL
a),r*nuD shell xL}Z9C1P#
|n==
9C shell |n(trace -a)t/zY,|nP|,8(l=KPzY$_Dj>#nuD shell xL
ITTIKPMzYXF|n;f4PDU(|n#
&CLrXF==
C trcstart() S}Lt/zY"(}S&CLrxPS}LwCg trcon() M trcoff() 4XFzY#

q=/zY}]
trcrpt |na)K;vzI#f?DDzY(fDVN#

K(fLr";Pa)}]{m&\,xG+-<~xFB~w*;IIAD ASCII kPm#}]IT;DA


w1[Xa!,rIT*"x;=uY}]D$_#

(fLr4UzYq=D~Pa)Dfr*?;vB~T>D>M}]#1!zYq=D~G /etc/trcfmt,|
T?vB~j6|,;Z#B~DZ+KB~Dq=/fra)x(fLr#b;<uJmC'rLrPmS
{GT:DB~"Zq=D~Pek`&DB~ZT7(BB~&1gNq=/#

332 T\\m8O
i4zY}]
1zY}]q=/1,;vx(B~DyP}](#EZ;P#

=SPIT|,5wE"#@?y|,DVN,q=/DPITaW,} 80 vV{#nCi4;BXZ'V
132 Pdvh8D(f#

zY$_9C>}
dMzYf0q!"q=/"}KMA!zYD~#

":g{dkD~;P:fZ53ZfP,bv}S|Pbe#!qNb;vs!,} 50 KB "Rn|;P
C}DD~w*4D~#

q!y>zYD~
zY}]D~v$\l#!I\+}]U/^(ZPK$xr#byvD;v<IMG+m`|nZ;PP"
v#

Hg:
# trace -a -k "20e,20f" -o trc_raw ; cp ../bin/track /tmp/junk ; trcstop

6= cp |nD4P#RGQ-9CK trace |nD=vXw#-k ″20e,20f″ !nh9S lockl() M unlockl()


/}U/B~#b)wCZ%&mw53Ps?fZ,+GZ SMP 53P";fZ,"R;h*xRG=S
E"MITr(fPmSm#-o trc_raw !n9-<zYdvD~4=RGD>X?<P#

q=/y>zY
9C trcrpt |nq=/zY(f#
# trcrpt -O "exec=on,pid=on" trc_raw > cp.rpt

bv(fj+^FK*KPDD~{M8(x|DxL ID#

bv(fD~f_RGZzYPfZs? VMM 3VdM>}B~,MsBfDrP:


1B1 ksh 8526 0.003109888 0.162816
VMM page delete: V.S=0000.150E ppage=1F7F
working_storage delete_in_progress process_private computational

1B0 ksh 8526 0.003141376 0.031488


VMM page assign: V.S=0000.2F33 ppage=1F7F
working_storage delete_in_progress process_private computational

RGTbv1L VMM n/j8E"bv6pDE"";PK$,rKRGgBXBq=/KzY:


# trcrpt -k "1b0,1b1" -O "exec=on,pid=on" trc_raw > cp.rpt2

-k ″1b0,1b1″ !nVFKZq=/dvP;X*D VMM B~#|9RGbZ*KVF;X*DB~x;H


XBzY$w:X#g{RGO*I\h*Z3v1di4;BxDn/,G4I\9CK trcrpt |nD -k
&\(x;G9C trace |nD -k &\)%VF lockl() M unlockl() B~#g{RG;T;!?VB~/
PK$,RGI\Q-+ -d″ hookid1,hookid2″ C4zz;TG)B~zID(fK#r*R3j6Z(fD
ns_;P,zITlY`k;v|,r;|,DR3Pm#;v+fDzYR3j6(eZ
/usr/include/sys/trchkid.h D~P#

9CzY$_xPT\Vv 333
DAzY(f
zY(fD7?Vf_z:zYZN1N&4P,T0CZzICzYD|n#

BfGy>7?V:
Thu Oct 28 13:34:05 1999
System: AIX texmex Node: 4
Machine: 000691854C00
Internet Protocol Address: 09359BBB 9.53.155.187
Buffering: Kernel Heap

trace -a -k 20e,20f -o trc_raw

g{Tc;!DVe4T>,(f}D4p4gB:
ID PROCESS NAME PID ELAPSED_SEC DELTA_MSEC APPL SYSCALL KERNEL INTERRUPT
101 ksh 8526 0.005833472 0.107008 kfork LR = D0040AF8
101 ksh 7214 0.012820224 0.031744 execve LR = 10015390
134 cp 7214 0.014451456 0.030464 exec: cmd=cp ../bin/track /tmp/junk pid=7214 tid=24713

Z cp.rpt2 PzIT4=gBE":
v fork() M exec(),T0 cp xLD13JOn/#
v r*dkD~TxPA!,T0 /tmp/junk D~D4(
v 53,xwC read()/write() jI=4$w#
v 1xL cp H} I/O jI1|;h{,"RH}xL;"M#
v _-mksgN-kIommks#
v D~;3dx;G;:fZ+3DZK:exP,ACJ<B13JO,b;JOXkIibZf\mw
bv#
v ibZf\mwlbrPCJ"*<$!D~3#
v $!Ds!fErPCJDVxxvs#
v I\D1r,ELh8}/LrO"`vD~ks*;vr}/w"vD I/O ks#

zYdv;*<4p4P;c;I9\#bG;voz'0DCD>}#g{z\;e~Ovn/,z+\;
l79CzYLroO53T\Jb#

}KzY(f
zY}]Dj{j8E"I\";h*#zI\!qT>X(DPK$DB~#

}g,;vX(B~"zN}P1\PC#*KXp“Z=4D>}PP`Y open ;r*?”bvJb#WHi


R open() 53wCDB~j6#KYwIgBxP:
# trcrpt -j | grep -i open

z&C\;4=B~ ID 15b * OPEN 53wCB~#VZ,4UBv=4>}%&m}]:


# trcrpt -d 15b -O "exec=on" trc_raw

(f;4=j<dv,zIT7("zD open() }L}#g{;k4= cp xL4PD open() S}L,k


9CBfD!nYNKP(f|n:
# trcrpt -d 15b -p cp -O "exec=on" trc_raw

334 T\\m8O
S|nPt/MXFzY
TzYLrxPdCM}]U/P!qTXt/IT(}9C trace |n4jI,dj8o(hv{6AIX 5L
V5.3 |nN<s+,m 57#

19C trace |nTzYdCjITs,IT(}XF%*X}]U/T0#9zYLr(trcstop S|n#


9 trace "ME:f)
#zIT(}gB==wCXF:S|n"|n"S}L#b)S}LSZZZ 336 3D
:SLrt/MXFzY;Phv#

S|n==BDzYXF
g{ trace }L4C -a !ndC,rTS|n==KP#

1TS|n==(x;G}# shell a>{)KP trace }L,+T>“->”a>{#ZbV==P,TBS|n


IT6p:
trcon t/rXt/B~}]U/
trcoff ]RB~}]U/
q r quit
#9B~}]U/"ax trace }L
! |n KPX( shell |n
? T>IC|n

Hg:
# trace -f -m "Trace of events during mycmd"
-> !mycmd
-> q
#

(}|nzYXF
P`V|nICZXF trace }L#

g{ trace }LdC*l=KP(trace -a),rIT(}BP|nXFzY:


trcon t/rXt/B~}]U/
trcoff ]RB~}]U/
trcstop
#9B~}]U/"ax trace }L

Hg:
# trace -a -n -L 2000000 -T 1000000 -d -o trace.out
# trcon
# cp /a20kfile /b
# trcstop

(}8( -d(SYzY1=dkK trcon S|n)!n,I^FT trace |n>mxP`sLHDzY#g


{48( -d !n,rzY"4*<,"RI\+ trace |nu</TmZf:exDB~GkU>#(#i
vB,RG#{zY} trace |n>m.bDNNZ]#

1!4,B,ZK:exs!(-T !n)I\A`GU>:exs!(-L !n)D;k#g{z9C -f j>,


:exs!IT`,#

9CzY$_xPT\Vv 335
g{ZK)953wCh*;zY1,-n !n\PC#

SLrt/MXFzY
(};vS}LwC,zYLrITS;vLrt/#CS}L* trcstart() "R;Z librts.a bP#

trcstart() S}LDo(gB:
int trcstart(char *args)

dP args GQ* trace |ndkD!nDPm#1!4,B,53zY((@ 0);t/#g{*t/;c


zY,rZ args V{.P|, -g !n#g{I&ax,trcstart() S}L5X(@j6#TZ;czY,b
v(@j6ITC4G<-<;c(@#

1CCS}L`kLr1,XkXpksT librts.a bD4S(9C -l rts w*`k!n)#

9C trace S}LwCDzYXF
T trace }LDXFw* librts.a bPDS}La)#

1S}LI&ax15Xc#S}L*:
int trcon()
t/rXt/zY}]U/#
int trcoff()
]RzY}]U/#
int trcstop()
#9zY}]U/"ax trace }L#

9C trcrpt |nq=/(f
zY(fLrA!zYU>D~,q=/zYkZ,"4v(f#

trcrpt |ny]zYq=D~(/etc/trcfmt)Pa)DfrT>?vB~DD>M}]#q=D~PDZ*B~
rR3a)q=/fr#+R3mS=LrPDC'IZq=D~PekT&DB~ZTr!dzY}](k
NDZ 337 3D:mSBDzYB~;) #

trcrpt Lr;azzNN**(f,+GzIT9C awk |n(}x;=&m trcrpt Ddv44(r%**#

trcrpt |nDj8o(Z6AIX 5L V5.3 |nN<s+,m 57PwKpv#

q=/`,53OD(f
trcrpt |nq=/|,ZzYU>D~PDzYB~}](f#

9Cbu|nzIT7(Z(fP+*|,(r!T)DB~,T0v(dvDT>#

dkTB SMIT lY76I9C53\mgf$_(SMIT)4KP trcrpt |n:


# smitty trcrpt

*+zY(f4(= newfile D~P,kdk:


# trcrpt -o newfile

336 T\\m8O
q=/;,53OD(f
RG-##{Zmb;v53OKP trcrpt |nx;GZzYU/D53O#

I\PwV-rbyv,}g:
v zI\^(T*zYD53KP trcrpt |n,"RzYI\GI6L>cD53\m1rd{KU/D#
v ;zYD53Tz42+&TAZ;\KP trcrpt |n#
v ;zYD53;P#`c;DD~53Ud4]I;vG#sD trcrpt D~#

zITZ;v53OKP trace |nxZm;v53OTGvzYD~KP trcrpt |n#*K$w}#,z


YKPD53h* trcnm |nDdv#KP trcnm |nX(rdv=;vD~DYwgB:
# trcnm > trace.nm

g{*+zYD~CZd{T\$_(tprof"pprof"netpmon M filemon),rKP gennames


Gennames_File |n#

;sTCD~9Cx -n j>D trcrpt |n,gBy>:


# trcrpt -n trace.nm -o newfile

g{48( -n,r trcrpt |nSKP trcrpt |nD53OzI;v{Em#

Kb,4T\zY53OD /etc/trcfmt D~D1>I\PC,r*C53DzYq=ZI\;,Zr`ZKP


trcrpt |nD53#trcrpt |nI9C -t j>48(zYq=D~(1!ivB9CKP trcrpt |nD53
OD /etc/trcfmt D~)
#Hg:
# trcrpt -n trace.nm -t trcfmt_file -o newfile

q=/4T trace -C dvD(f


g{9C -C j>KPzY,azI;vr`vzYdvD~#

}g,g{zYD~{8(* trace.out,"RT 4 7 SMP 8(K -C all,razI trace.out"trace.out-1"


trace.out-2"trace.out-3 M trace.out-4 D~#KP trcrpt |n1,k8( trcrpt -C all,"+ trace.out
8(*D~{,raA!yPD~,gBy>:
# trcrpt -C all -r trace.out > trace.tr

bv trace.tr D~;sI;Cwd{|nDdk(|+|,S?;v CPU C=DzY}])


#-C j>EZz
YPD-rGr*zY\;ZG)P`v CPU(}g,} 12 v)D53OzY?;v CPU Dn/#m;v
-rG1z9C -C all j>1?;vzY:exs!G;v CPU D:exs!#

mSBDzYB~
Yw53(}X|B~xPlb#C';h*$nzY46=Yw53DB~w#&CLr*"_Z*"}L
P*KwTD?DI\kbT{GD&CLrzk#b;B~wa)x{GnkKb{GD&CLrgN,5
3;%Dza#

*KmS;vzYB~,zXkhFIzDLrzIDkzYSZf(;BDzYG<#z;sZOJ;Cr
LrmSzYR3j#zY;s\;(}NNj<wCMXFzY(|n"S|nrS}LwC)==;S
U#*K9C trcrpt,Lrq=/zDzY,h*rzYq=D~mShv?;vBzYG<M|Dq=/*
sDZ#

9CzY$_xPT\Vv 337
zYB~G<I\DN=
;vB~I;vR3V"`vI!}]VM;v1dAGiI#

gB<y>,TZB~G<IICD?VN=,(eK;vD;D`M#dkVNIG<}L?FdkTcZ
1&m}]1,49zYq=D~PDq=frTZKB~;}7r*',(fLr\GITZB~dT}b
;VN#

< 28. zYB~G<q=. K5w*;v|, 7 PDm#Z;PPD%*Vpj* 12 ;R3j6"4 ;`MM 16 ;}


]VN#SB4D 6 Pj*}]V 1 =}]V 5,ns;Pj* 32 ;1dAG#Z 1 PD;PjbGR3V(*
s)#B 5 PjG* D1(I!)"D2(I!)"D3(I!)"D4(I!)"D5(I!)#ns;Pj* T(Xh)#

B~G<&1!I\L#m`53B~;9CR3VM1dA#$q=JmC'G<;v}]Dd?$H#Z
bv$m%P,R3VD 16 ;}]VN;*;*;vhvB~G<$HD$HVN#

zY(@
zYLrITn`]IKvzYR3n/D,1(@,|GS 0-7 `E#

(@ 0 \GCZ53B~,x&CLrB~2IT9C|#mb_v(@Pv;c(@,ITCZzY&CL
rn/#

1zYt/1,1!9C(@ 0#trace -n channel_number |nt/T;c(@DzY#;c(@D9CP;


)^F:
v ;c(@DSZH(@ 0 DSZ(QO`D CPU 1d,bGr*h*Z=V(@.dVfT0;c(@G
<d$HG<#
v (@ 0 OG<DB~M;c(@OG<DB~I\;Z1dAO`X,x;GrPO`X,rKI\fZ;
\xpD;vB~H"zDiv#

CZG<zYB~Dj
CZG<?VI\`MDB~G<DjZ /usr/include/sys/trcmacros.h D~P(e#

B~j6(eZ /usr/include/sys/trchkid.h D~P#ZNNG<zYB~DLrP|,b=vD~#

CZG<(@ 0 ODB~(=x1dAG)DjgB:
TRCHKL0T(hw)
TRCHKL1T(hw,D1)
TRCHKL1T(hw,D1)
TRCHKL2T(hw,D1,D2)
TRCHKL3T(hw,D1,D2,D3)
TRCHKL4T(hw,D1,D2,D3,D4)
TRCHKL5T(hw,D1,D2,D3,D4,D5)

Z xP 5300-05 <u6pD AIX 5L V5.3 .0D AIX f>O,9CBPjG<(@ 0 ODB~(;x1


dAG):

338 T\\m8O
TRCHKL0(hw)
TRCHKL1(hw,D1)
TRCHKL1(hw,D1)
TRCHKL2(hw,D1,D2)
TRCHKL3(hw,D1,D2,D3)
TRCHKL4(hw,D1,D2,D3,D4)
TRCHKL5(hw,D1,D2,D3,D4,D5)

Z xP 5300-05 <u6pD AIX 5L V5.3 0|_f>O,^[9C24j,yPzYB~<SP1dAG#

zYB~G<D`MVNhC*T&ZyCjD5,x;<G hw N}PDG)D;5#

;P=vjG<B~=;c(@(1-7)PD;v#b=vjgB:
TRCGEN(ch,hw,D1,len,buf)
TRCGENT(ch,hw,D1,len,buf)

b)jZI(@N}(ch)"R3V(hw)"}]V(D1)8(DB~wPxPG<,+FC'}]N(S buf
8(D;C*<)len VZ#

B~j6D9C
Z;vzYG<PB~j6mwCG<tZ;vX(G<`#B~j6GzYzFG<rvTzYR3Dy
!,,12G trcrpt |nZq=/(fP|,rE}zYG<Dy!#

TZ;vI\D 4096 vj6,B~j6G 12 ;(};.yxF})


#*K\bX4,G);#tMkzkZ
;pDB~j6;@CVd#*KJmC'Z{GD73Pr*"}LP(eB~,S.yxF 010 =S.y
xF 0FF 6'DB~j6*KY19Cx;#t#C'Z{GT:D73PITTI9Cb;6'ZD ID(4
ZNNC'<89CD53hCP7#,;vj6;P;`N9C)#

":X*DG9CbvB~6'DC';*Czkk*{GD73#g{zvTTzkCY1R3j6T;v
z;PXFj69CD73xPbT,zI\P,d{Q-ZGv73P9C,;j6DLre;D#
U#

B~j6&1;#t,r*|G\Y,+|GIT(}9C 16 ;}]VNx)9#byT?;v}=DR3
j6MI\zz 65536 v;,B~#5P@;^~j6D(;D-rMG;vj6&ZU/M(f}KZzY
LrPICD6p#

g{ZX(zYq=D~PfZCB~DZ,;vC'mSDB~I\; trcrpt |nq=/#zYq=D~*


I`-D ASCII D~(kNDZ 341 3D:zYq=D~PZDo(;)
#

`LMq=/B~D>}
zYB~ICZTLr-7D4PxPF1#
#include <sys/trcctl.h>
#include <sys/trcmacros.h>
#include <sys/trchkid.h>
char *ctl_file = "/dev/systrctl";
char *ctl_file = "/dev/systrctl";
int ctlfd;
int i;
main()
{
printf("configuring trace collection \n");
if (trcstart("-ad")){
if (trcstart("-ad")){
perror("trcstart");
exit(1);

9CzY$_xPT\Vv 339
}

printf("opening the trace device \n");


if((ctlfd = open(ctl_file,0))<0){
perror(ctl_file);
exit(1);
}

printf("turning trace on \n");


if(ioctl(ctlfd,TRCON,0)){
perror("TRCON");
perror("TRCON");
exit(1);
}

for(i=1;i<11;i++){
TRCHKL1T(HKWD_USER1,i);

/* The code being measured goes here. The interval */


/* between occurrences of HKWD_USER1 in the trace */
/* file is the total time for one iteration. */
}

printf("turning trace off\n");


if(ioctl(ctlfd,TRCSTOP,0)){
perror("TRCOFF");
perror("TRCOFF");
exit(1);
}

printf("stopping the trace daemon \n");


if (trcstop(0)){
perror("trcstop");
exit(1);
}

exit(0);
}

1z`kbvy>Lr1,Xk4gB==,S librts.a b:
# xlc -O3 sample.c -o sample -l rts

HKWD_USER1 GB~j6 010 .yxF(zIT(}li /usr/include/sys/trchkid.h D~4#i|)#}


GzYq=D~Pa)fr,qr(fLr";q=/ HKWD_USER1 B~#TB;v HKWD_USER1 ZD
>}IC:
# User event HKWD_USER1 Formatting Rules Stanza
# An example that will format the event usage of the sample program
010 1.0 L=APPL "USER EVENT - HKWD_USER1" O2.0 \n \
"The # of loop iterations =" U4 \n \
"The elapsed time of the last loop = " \
endtimer(0x010,0x010) starttimer(0x010,0x010)

dk>}Z1,;*^Dwq=D~ /etc/trcfmt,xG4F;v1>,"+d#fZzT:D?<P(Yh{
#1zKPK>}Lr1,IZ;Px trcstart() S}L8(d{U>D~,-<B~}]Z1
* mytrcfmt)
!U>D~P;6==#zIT}Kdv(f4;C=zDB~#*Kbyv,KP trcrpt |ngB:
# trcrpt -d 010 -t mytrcfmt -O "exec=on" > sample.rpt

zIT/@ sample.rpt D~4a{#

340 T\\m8O
zYq=D~PZDo(
zYq=/D~*?;vB~j6a)Kdv}]MT>Z{}]Dfr#bJmBDB~Z;Dd(fLr
Du~B;q=/#

BB~Dfr;r%S=q=/D~P#Kfro(Z}]T>=fa)KinT#

;vzYq=ZIT4hvNNXpB~frD*s4v($H#ZIT(}Z)2S ’\’ V{ax10P4


Sx=B;P#VNhvZ AIX 5L Version 5.3 Files Reference P#

Z /etc/trcfmt D~PD"MhvKd{q=MjDI\T"hvK;vC'gN\;(e=Sj#

9CzY$_xPT\Vv 341
342 T\\m8O
(fT\Jb
g{z`EzQ-ZYw53P"VK;vI\DT\Jb,zIT9C$_MLr4(fbvJb"a)J
bVv}]#b)$_?DG7#zZzD?VTn!D,&M1dqC;va>M+7Dl&#

b?y_
T\Jb-#fE532~rm~D;)d/x;"L(f#}GP;vd/0Dy_@@,{C|HOd/
sDT\,^(TJbxP?/#

NNgBDDdI\0lT\:
v 2~dC - mS">}rDddC,gELgN,S
v Yw53 - 20r|B;vD~/,20 PTF,^DN}
v &CLr - 20Bf>M^4
v &CLr - dCrDd}]EC
v &CLrw{
v w{!nZYw53"RDBMS r;v&CLrP
v NNd/

nCD!qMG?;Nd/0s@[73#fz=(MGTfrDdtxP@[(}g,;vB;N)"#f
dv#1Jb;"V1,H0D6=I;C4HO#5CU/;5Pdv,?DG'VI\DT\JbDo
O#

*Kns^HXxPT\oO,1T\I\I*Jb1,U/;v$wU";\r;vBDwvWN}]#}
g,zI\PgB$w:X_e:
v OgDPdN*zC'`
v n9KPz&mZd
v BWD&mZd
v s?}]:X&mZd

9C@[VN4*?;vb)$w:X_eU/}],r*;vT\JbI\;a<BZb)WN.;vVJ
b,x;aZd{1dvVJb#

":NN@[<aT;b53DT\zzew#
AIX T\ PMR(perfpmr)}]U/$_GU/y_}]DW!=(#CJb)$_IT(} Web
ftp://ftp.software.ibm.com/aix/tools/perftools/perfpmr#k4U?<(kz+xP@@D AIX f>`%d)PTv
D~oD8>E"q!M20b)$_,"U/53OD}]#

24GT\Jb
'VK1h*4v(241r(fDJbG&\TDJb9GT\TDJb#

1&CLr"2~53rxgP*;}#1,4F*&\Jb#}g,_PZf96D&CLrr53P&\
TJb#

© Copyright IBM Corp. 1997, 2006 343


P1r&\TJb<BT\Jb;}g,&\ITjI,+G&\DYHO}#Zb)}SP,Hpw{5
3,|X*DGv(JbDy>-r"bv|#mb;v}SG,1(Eu}1,bI\Gr*xg,r_G
{V~qw1z#

T\Jbhv
'VK1h*-#aU=Jb(f,(fP8v3Z53OKPT\Jb,(f,1a)K;)}]Vv#b
vE"TZ+7v(;vT\JbD>J";;dV#}]I\8vYV.;YD CPU {CM;v_DKP
SP,+GGI\k0RT\Jb-r^X#

}g,53I\PS-}m`7IDxgD6LUK4DC'DG<#b)C'(f53YH\}#}]I\
8>v CPU ;1XX9C#+G5JJbI\GZ{GDUKO,V{Z-}$1dDSYsE;T>#b
GIZE"|ZxgOD*'(bI\GIZ'\D7Ir:X}XDxglID)#bVivI\kzwO
CPU 9Civ^X#m;=f,g{'9G53Oz&mw5Z(\$1d%KP,G4 CPU {Cr I/O x
mI\kK`X#

Z<8U/rVv}].0,\G*qC!I\`D8Z,IT(}JgBXZT\JbD;)JbC=8
Z:
v (}KPXb|nrXB(";vB~rP,Jb\;$wp?(}g:ls /slow/fs r ping xxxxx)
#g{
;\,hvJbDnYzw:>}#
v :}T\GOOxxDp?|-#d},+fs{';N1d?|?l"z;(N}9Gk;)X(n/
`X?
v ?~B<}9G;P3)B?
v 24=f}?}g,4&;vV{D1d,rjI;NBqD1d,r-A;D1d?
v 241rJb*<zz?iv;yp,TS53Z;N;20rJbzz?ZJbzz.053PNNd
/p(gmS|`DC'rF2=SD}]=53)?
v g{GM'z/~qw53,1Z~qw>XKP}#1JbavVp(xg9G~qwJb)?
v g{kxg`X,xgNGgNdCD(|(xm,g 10 Mb/sec r 9600 (X)?ZM'zM~qw.d
PNN7Iwp?
v 24)&L&CLrZ53O}ZKP,G)&CLrf0=T\Jbp?
v T\JbTC'DewG24?

(fT\Jb
&1+Yw53T\Jb(fx IBM 'V#9Cz(#Dm~Jb(f(@#g{z;l$zyZi/D}7
DJb(f>6,rkrzD IBM zmI/#

13I AIX PT\Jb1,AIX T\ PMR(perfpmr)}]U/$_GC4U/T\}]DnC=(#I(


} Web qCb)$_,X7* ftp://ftp.software.ibm.com/aix/tools/perftools/perfpmr#k4UTvD~(Zk*
b?D AIX f>%dD?<P)PD8>E"4q!"20b)$_,"U/53OD}]#r* PMR s,
dP9a)KPXgN+}]"M= IBM 'VT)VvD8>E"#

13K(fT\Jb1,|";c;ITC4U/}]"Vv|#g{;*@T\JbD>J,zI\KQ\
`1d4Vvk(fDJb^XD}]#

Zzr'VK1(fJbT0,BH*<8*sa)DTcZJbwiDE"#zD>X'VK1+T<1S
,z;plYbvzDT\Jb#

344 T\\m8O
}Vx;=DzITozJbHOlYbvD=(G:
1. a);]e~DXZJbD;vr%X}Dif5w,+G*7#Sm["<kMzT:Da[PVkJ
OVsMB5#(f“the system is slow”D PMR *sc:Dwi4v(zy8D:}b6E24,|gN
bCT024GIS\DT\#
2. a)XZ53PZJbvVT08\ZQ-DdDyP?VDE"#)t;)DdDE"I\h{;vI
\Dwi76,b+;aSYRvbv=8#g{yPDB5<IC,T\!iIT\l{};`XD+
w#
3. 9C}7Dzwa)E"#ZG#sD>cP,\]W<;U/=XZmszwD}]#b9CwiJb
dC\'Q#

1z(fJb1,a)gBy>E":
v ;vJbhv,|IT;CZQwJbz7}]bT4Gq`FJbQ-;(f#
v zDVvD24=f9zCva[JbGIZYw53D;v1]}pD?
v Jb}Z"zD2~Mm~dCG24?
– JbG^Z;v%53,9G|0l`v53?
– ;0lD53DME"Zfs!,T0ELD}?"s!G24?
– 24`MD LAN Md{(EiJ;,S=53?
– {edC|,G)*d{Yw53vDhCp?
v }-zJbDLrr$w:XDXwG24?
– C time, iostat, M vmstat |nxPDVvmwG CPU \^F9G I/O \^F?
– }ZKPZ\0l53OD$w:XG$w>"~qw`C'"9G,S?
v ;P5VDT\?jG24?
– u<?jGXZXF(rUKl&1d"LB?"r51l&Dp?
– ?jGSd{53D@[IzDp?g{G,|DdCG24?

g{bGJbDZ;](f,z+U=;v PMR E,C47(NNza)D=S}]MCZ+4N<#

1'VE"M perfpmr a)x PMR D}]GZ;N;U/1,|,yPgBn:


v YNzzJbD=(
– g{I\,]>CJbD;vLrr shell E>&1;|,#
– AY,JbzzDu~Dj8hvGXkD#
v &CLr-zJb:
– g{&CLrG,r@5ZNNm~z7,z7D7Pf>M"Pf&1;7(#
– g{C'`4D4zk&CLr;\;"P,rC44(I4PLrD7PD`kwN}/&1;G<
kD5#

(fT\Jb 345
346 T\\m8O
`SMw{|nT0S}L
53a)K`vT\`X|nMS}L#

5373DT\$_;cV*=`:;`f_z}Z"z24n/,;`CzkTKn/4v)&m#;)$
_fP=`&\#PXo(M|n/}Dj8E",kN<6AIX 5L V5.3 |nN<s+7#

kT\`XD|nb0*D~/ perfagent.tools"bos.acct"bos.sysmgt.trace"bos.adt.samples"
bos.perf.tools M bos.perf.tune D;?V,b)D~/f“y>Yw53”;pa)#

cIT(}KPBP|n.;47(Q-20KyPT\$_:

TZ AIX 5.2:
# lslpp -lI perfagent.tools bos.sysmgt.trace bos.acct bos.perf.tools bos.perf.tune

TZ AIX 5.1:
# lslpp -lI perfagent.tools bos.sysmgt.trace bos.acct bos.perf.tools bos.adt.samples

TZ AIX 4.3 0gZf>:


# lslpp -lI perfagent.tools bos.sysmgt.trace bos.acct bos.adt.samples

T\(fMVv|n
T\(fMVv|n*za)PX53;vr`v=fT\DE"r_;vr`v0lT\DN}#

|ngB:
|n &\
alstat (fTkl#F}
atmstat
T>“l=+d==”(ATM)Jdw3FE"
curt (f?vZK_LD CPU {CJ(S AIX 5.2 *<)
emstat
(fBf8nF}
entstat
T>T+xh8}/LrMh83FE"
fddistat
T> FDDI h8}/LrMh83FE"
filemon
9CzYh8(fomm"_-m"vpD~M“ibZf\mw”D I/O n/
fileplace
T>Zi$tDomr_-mPiID~DiDomr_-EC#
gprof (fLrS}LPDXFwM?vS}L{DD CPU 1d?
ifconfig
dCrT>9C TCP/IP DxgDxgSZN}

© Copyright IBM Corp. 1997, 2006 347


ioo hC I/O `XDw{N}(S AIX 5.2 p,|M vmo ;pfzK vmtune)
iostat T>BPh8D{CJ}]:
v UK
v CPU
v EL
v Jdw(S AIX 5.1 *<)
ipfilter
S ipreport dvD~Pi!;,DYw(7"CmqT>|G
ipreport
S8(D|zYD~PzI;v|zY(f
iptrace
*xJ-ia)SZ6pD|zY
locktrace
r*xzY(S AIX 5.1 *<)
lsattr T>0lT\D53tT,}g:
v &mwYH(S AIX 5.1 *<)
v _Y:fDs!
v 5ZfDs!
v i I/O :ex_Y:fPDns3}
v mbufs PJmDZfDns'VZ}
v EL-I/O w=D_/M.!jG
lsdev T>53Ph8T0|GDXw
lslv T>PX_-mDE"
lsps T>3fwHUdDXw
lspv T>PXmiZommDE"
lsvg T>PXmiDE"
mtrace
S4+`cc%76r!=SU=
netpmon
9CzY$_4(fxgn/iv,|(:
v CPU {D?
v }]J
v l&1d
netstat
T>s6'DdCE"M(En/D3FE",}g:
v mbuf XPD104,
v 7Im
v xgn/D[F3FE"
nfso T>(r|D)NFS !nD5

348 T\\m8O
nfsstat
T>“xgD~53”(NFS)D3FE"M“6L}LwC”(RPC)D~qwMM'KDn/
no T>(r|D)xg!nD5,Hg:
v 1!DU"WSV:exs!
v CZ mbuf M/:XDnsDZf\?
pdt_config
t/"#9r|D“T\oO$_”(Performance Diagnostic Tool)DN}
pdt_report
zIyZ10z7}]D PDI (f
pprof (f;N1d\ZZyPZK_LD CPU 9Civ
prof T>?jD~E*D~}]
ps T>PX53PxLD3FE"M4,E",Hg:
v xLj6
v I/O n/
v CPU 9CJ
sar T>Yw53n/D3FE",Hg:
v ?<CJ
v A453wC
v IzM4P
v 3fwHn/
schedo
hCCZ CPU wHLrDw{N}(S AIX 5.2 p,C|nfzK schedtune)
smitty T>(r|D)53\mN}
splat x(yCVv$_(S AIX 5.2 *<)
svmon
(f53"xLMN6pDZf4,
tcpdump
r!v|7
time, timex
r!4P|nyCD1dM9CD CPU 1d
topas (fy!D>X533FE"
tokstat
T>nF7h8}/LrMh83FE"
tprof 9CzY$_(fZK~q"bS}L"&CLr#iM&CLr4zkwPD CPU {D
trace, trcrpt
4BG<53Zn/D+73rDD~
traceroute
r! IP |+=xgwzD7I
vmo hC VMM `XDw{N}(S AIX 5.2 p,|M ioo ;pfzK vmtune)

`SMw{|nT0S}L 349
vmstat
T> VMM }],}g:
v IVdrH}DxL}
v 3fwH!"UmDs!
v 13JOn/
v CPU 9CJ

T\w{|n
AIX 'V`vJm|D53D;vr`vT\`X=fD|n#
|n &\
bindprocessor
+ZK_LDxLs(A&mwrb}s(
chdev |Dh8DXw
chlv v|D_-mDXw
chps |D3fwHUdDtT
fdpr C4DF4P1dMC'6&CLr5Zf{CivDT\w{h8
ifconfig
*9C TCP/IP DxgdCrT>xgSZN}
ioo hC I/O `XDw{N}(S AIX 5.2 p,|M vmo ;pfzK vmtune)
migratepv
+VdDomVxS;vommF=;vr`vd{omm
mkps +;v=SD3fwHUdmS=53
nfso dC“xgD~53”(NFS)Dxgd?
nice ZOMrO_EH6KP|n
no dCxgtT
renice |DKPxLD nice 5
reorgvg
XBi/miDomVxVd
rmss Bf;v_P;,s!Zf4xP&CLrT\bTD53
schedo
hCCZ CPU wHLrDw{N}(S AIX 5.2 p,C|nfzK schedtune)
smitty |D(rT>)53\mN}
tuncheck
Cw{N}54i$ZD~(S AIX 5.2 *<)
tundefault
+yPw{N}4;A|GD1!5(S AIX 5.2 *<)
tunrestore
SZD~PV4yPw{N}5(S AIX 5.2 *<)

350 T\\m8O
tunsave
Z;ZD~P#fyPIwN}5(S AIX 5.2 *<)
vmo hC VMM `XDw{N}(S AIX 5.2 p,|M ioo ;pfzK vmtune)

T\`XS}L
AIX 'VICZ`SMw{T\D`vS}L#
bindprocessor()
+ZK_Ls(=&mw
getpri()
7(;vKPxLPDwHEH6
getpriority()
7(KPxLPD nice 5
getrusage()
lwPX53J49CDE"
nice() vS10xLD nice 5
psdanger()
lwPX3fwHUd9CDE"
setpri()
+KPxLDEH6|D=;vL(EH6
setpriority()
hC;vKPxLD nice 5

`SMw{|nT0S}L 351
352 T\\m8O
ld |nDP'9C
s(Lr(w*`kDns;=wCr1SI ld |nwC)_PZdMD UNIX 4SLrPR;=D&\#

g{4{CYw53s(LrD|`\&,KivI\a<BO$D4S1d#>ZhvK|P'X9Cs(
LrD;)<I#

>}

TBG}YP'9C ld |nD;v>}:
1. *$s(;vb,kZ9uD5D~P9CTB|n:
# ld -r libfoo.a -o libfooa.o
2. FORTRAN Lr something.f D`kMs(gBy>:
# xlf something.f libfooa.o

k"b:$s(b1wm;vU(DdkD~,;_P#Cb6po((-lfoo)
#
3. *Z^4mssXB`k#iMXBs(I4PDLr,k9CTBod:
# xlf something.f a.out
4. ;x,g{ms^4Q-<BTbP;,S}LDwC,rs(a'\#BP Korn bGLrE>bTJO
5Xk"STV4#
# !/usr/bin/ksh
# Shell script for source file replacement bind
#
xlf something.f a.out
rc=$?
if [ "$rc" != 0 ]
then
echo "New function added ... using libfooa.o"
xlf something.o libfooa.o
fi

IXBs(DI4PLr
s(LrD}=D5G8s(Lr+I4PLr(;v0k#i)w*dkD\&#

{CK&\ITssDxxPm~*"$w:XD53D{eT\,2\uL%v ld |nDl&1d#

Zs`}dMD UNIX 53P,ld |n\GS\;i|,TsTkDD~w*dk,b)D~ITG`v%


@D .o D~,r_G .o D~Di5b#|n ld ;sZb)D~Pbvb?}C"+4v1!{F*a.out
DI4PLr#a.out D~;\;4P#g{Z a.out D~|,D3v#iP"Vms,rbNP1]D4z
k+C=|D"XB`k,;sXkX4{v ld xL(Sj{D .o D~/*<) #

;x,ZbvYw53P,s(Lr\S\ .o M a.out D~w*dk,r*s(LrZI4PD~P|,b


vD“b?{EJd”(External Symbol Dictionary,ESD)MX(;Jd(Relocation Dictionary,RLD)DE"#
bb6EC'\;XBs(VPDI4PLrTf;%v^DsD .o D~(x;GXB*<9(BDI4PL
r)#r*s(xL{Df"wM&mw\Z,bZ;(LHOkCJD;,D~D}?T0TXkbvD{
ED;,}CD}?IH},yTC;vBfD#iXBs(;vI4PLrHS]fD~Xs(|*l\
`#

© Copyright IBM Corp. 1997, 2006 353


$s(S}Lb
Zd9C0s({vS}LbD\&Z;)73PG,HX*D#

53S}Lb(Hg libc.a)5JOGTs(LrdvDq=a)D,x;Gw* .o D~D9uD5D~a


)D#bZ+&CLrMXhD53bs(Z;p1*C'Z<s?D&m1d,r*XkbvDvvGS&
CLr=bS}L.dD}C#53b}L>mdD}CZ539(xLPQ-xPKbv#

;x,\`Z}=DS}Lb(#T,-< .o D~;yD9uD5q=a)#1C'+&CLrkb`bs(
Z;p1,s(LrXkZ?Ns(&CLr1bv{vbD{E#Z&CLrkOsMbs(Z!zwOD
73P,b<B\$Ds(1d#

s(bM4s(bDT\nlxp\s,HdGZn!dCDivB#

354 T\\m8O
CJ&mwF1w
b?O!1ddtD"T-#\=w*Yw53;?VDd*s(n/T0531d}L{DD&m1dDh
Sx'\#bvKJbD;v>6G1SCJ&mwF1w47(b?dtD*<MaxD1d,"KPX4
b?,;s}Ka{T}%POIE1D1dN#

vZ AIX 5.1 O\'VD POWER M POWER2 e5a9+&mwF1ww*;TXbC>DDfw5V#


“yZ POWER D”e5a9(eK;v{* TimeBase D 64 ;Dfw#;Pc`oTLrITCJb)Df
w#

":&mwF1wb?D1dGRSDxT1d#g{TF1wwCJdzzKPO,rFcvDVx1d+
|(PO&m1dMXF5XxF1Dzk0I\VIxd{xLD1d#4T&mwF1wD1dG-
<1dR;&CZ;)OmDbTP#

;i}vbS}L9CT TimeBase DfwDCJke5a9^X#b)S}LgB:


read_real_time()
bvS}L|,4TOm4D101d"+|f"*=v 32 ;5#
read_wall_time()
CS}LS`&D4q!-< TimeBase Dfw5,"+dw*=v 32 ;5f"#
time_base_to_time()
bvS}L7#1d5TkMIkDN=m>,4PNN4T TimeBase DXhD*/#

1dI/M1d*//}GVt*D,bG*K91dI/D*zo=n!#

BfD>}]>gN9C read_real_time() M time_base_to_time() S}L4b?X(zkNDDC1d:


#include <stdio.h>
#include <sys/time.h>

int main(void) {
timebasestruct_t start, finish;
int val = 3;
int w1, w2;
int w1, w2;
double time;

/* get the time before the operation begins */


read_real_time(&start, TIMEBASE_SZ);

/* begin code to be timed */


printf("This is a sample line %d \n", val);
/* end code to be timed */

/* get the time after the operation is complete


read_real_time(&finish, TIMEBASE_SZ);

/* call the conversion routines unconditionally, to ensure */


/* that both values are in seconds and nanoseconds regardless */
/* of the hardware platform. */
time_base_to_time(&start, TIMEBASE_SZ);
time_base_to_time(&finish, TIMEBASE_SZ);

/* subtract the starting time from the ending time */


w1 = finish.tb_high - start.tb_high; /* probably zero */
w2 = finish.tb_low - start.tb_low;

© Copyright IBM Corp. 1997, 2006 355


/* if there was a carry from low-order to high-order during */
/* the measurement, we may have to undo it. */
if (w2 < 0) {
w1--;
w2 += 1000000000;
}

/* convert the net elapsed time to floating point microseconds */


time = ((double) w2)/1000.0;
if (w1 > 0)
time += ((double) w1)*1000000.0;

printf("Time was %9.3f microseconds \n", time);


exit(0);
}

*K9SF1w}LxPwCM5XD*zu=n!,zITTis(G2my<(kNDZ 320 3D:N1


9C/,4SM2,4S;)
#

g{bGf5T\y<,ra44b?zk#s?,xDX4YwIO"F1,"IKFcYwD=y1d,
+Gb)1dI\|(PO&m1dr_d{b?n/1d#g{Ts?X4YwxPpvF1,rITli
wv1dTPOdOmT,+G?Nb?I\|(F1}LD*z##{z\9C=V<u"HO|GDa
{#NNivB,Z!q=(1<h*<Gb?D?D#

X(ZyZ POWER De5a9DF1wCJ


POWER 5PM POWER2 &mwe5a9P|(=v|,_VfJF1wDXbC>Dfw(;v_;Df
wM;vM;Dfw) #

":TBV[vJCZ POWER 5PM POWER2 e5a9(T0 601 &mw>,)#zk>}+ZyZ


POWER D53O}7KP,+G3)8n+GBfD#r*CJ&mwF1wD?DG(\MD*zq
C_+HD1d,yTBfa9a{DICTdn#

POWER 5PM POWER2 &mwe5a9D_;Dfw|,%;*kD1d,M;Dfw|,%;*IkD


k!}?VF}#W?DfwD1dD5J+H!vZd|B5J(X(ZME) #

CZCJ yZ POWER D F1wDfwDc`Lr}L


c`oT#i(timer.s)a)CZCJF1w_;MM;DfwD}L(rtc_upper M rtc_lower)
#
.globl .rtc_upper
.rtc_upper: mfspr 3,4 # copy RTCU to return register
br

.globl .rtc_lower
.rtc_lower: mfspr 3,5 # copy RTCL to return register
br

a)+H*kD1dD C S}L
second.c #i|,;v C }L,C}LwC timer.s }L4CJ_;MM;DfwDZ]#

|5X;v1dD++H55(+H*k)
#
double second()
{
int ts, tl, tu;

ts = rtc_upper(); /* seconds */
tl = rtc_lower(); /* nanoseconds */

356 T\\m8O
tu = rtc_upper(); /* Check for a carry from */
if (ts != tu) /* the lower reg to the upper. */
tl = rtc_lower(); /* Recover from the race condition. */
return ( tu + (double)tl/1000000000 );
}

S}L second() \;S C }Lr FORTRAN }LwC#

":y]`n|;N534;D1d$H,second.c #iI\zz;,s!D+H#534;sD1d=$,
}VD{k?V{DD+H;}=s#=<Z;?VPyi\D<u(}Z*;*!c04P;Nu(4
q!yCD1d5,byM\bKOvJb#

CJ PowerPC 53PDF1wDfw
PowerPC e5a9|,;v 64 ; TimeBase Dfw,|Z_-OV* 32 ;_M=x(TBU M TBL)
#

TimeBase DfwD]v5Jk2~5VMm~5VPX,"Ra;1d/#+4T TimeBase D5*;*kH


Z yZ POWER D e5a9PxPKNq|*4S#*qC PowerPC 53PD"1d5,k9C
read_real_time()"read_wall_time() M time_base_to_time() SZ#

second S}L>}
LrI9C second() S}L#
#include <stdio.h>
double second();
main()
{
double t1,t2;

t1 = second();
my_favorite_function();
t2 = second();

printf("my_favorite_function time: %7.9f\n",t2 - t1);


exit();
}

9C second() S}LD FORTRAN Lr>}(main.f)gB:


double precision t1
double precision t2

t1 = second()
my_favorite_subroutine()
t2 = second()
write(6,11) (t2 - t1)
11 format(f20.12)
end

*`kM9C main.c r main.f,kCTBod:


xlc -O3 -c second.c timer.s
xlf -O3 -o mainF main.f second.o timer.o
xlc -O3 -o mainC main.c second.o timer.o

CJ&mwF1w 357
358 T\\m8O
7("&mwYH
>Zhv7("&mwYHD}L#

19C AIX 5.1 0dsx"Pf1,BPzk5XCUH(Hz)m>D&mwYH:


lsattr -E -l proc0 | grep "Processor Speed"

19CgZ AIX 5.1 D"Pf1,k9C|n uname#KP uname -m |n+zzTBN=Ddv:


xxyyyyyymmss

dP:
xx 00
yyyyyy
(;D CPU j6
mm MEj6(C47("&mwYHD}5)
ss 00(SME)

(}+ uname -m dvPD mm 5kBmxP;f}C,I7(&mwYH#


MEj6 zw`M &mwYH e5a9
02 7015-930 25 Power
10 7013-530 25 Power
10 7016-730 25 Power
11 7013-540 30 Power
14 7013-540 30 Power
18 7013-53H 33 Power
1C 7013-550 41.6 Power
20 7015-930 25 Power
2E 7015-950 41 Power
30 7013-520 20 Power
31 7012-320 20 Power
34 7013-52H 25 Power
35 7012-32H 25 Power
37 7012-340 33 Power
38 7012-350 41 Power
41 7011-220 33 RSC
43 7008-M20 33 Power
43 7008-M2A 33 Power
46 7011-250 66 PowerPC
47 7011-230 45 RSC
48 7009-C10 80 PowerPC
4C kND" 1#
57 7012-390 67 Power2
57 7030-3BT 67 Power2
57 9076-SP2 Thin 67 Power2
58 7012-380 59 Power2
58 7030-3AT 59 Power2
59 7012-39H 67 Power2
59 9076-SP2 Thin w/L2 67 Power2
5C 7013-560 50 Power
63 7015-970 50 Power
63 7015-97B 50 Power
64 7015-980 62.5 Power
64 7015-98B 62.5 Power
66 7013-580 62.5 Power
67 7013-570 50 Power
67 7015-R10 50 Power
70 7013-590 66 Power2

© Copyright IBM Corp. 1997, 2006 359


70 9076-SP2 Wide 66 Power2
71 7013-58H 55 Power2
72 7013-59H 66 Power2
72 7015-R20 66 Power2
72 9076-SP2 Wide 66 Power2
75 7012-370 62 Power
75 7012-375 62 Power
75 9076-SP1 Thin 62 Power
76 7012-360 50 Power
76 7012-365 50 Power
77 7012-350 41 Power
77 7012-355 41 Power
77 7013-55L 41.6 Power
79 7013-591 77 Power2
79 9076-SP2 Wide 77 Power2
80 7015-990 71.5 Power2
81 7015-R24 71.5 Power2
89 7013-595 135 P2SC
89 9076-SP2 Wide 135 P2SC
94 7012-397 160 P2SC
94 9076-SP2 Thin 160 P2SC
A0 7013-J30 75 PowerPC
A1 7013-J40 112 PowerPC
A3 7015-R30 kND" 2# PowerPC
A4 7015-R40 kND" 2# PowerPC
A4 7015-R50 kND" 2# PowerPC
A4 9076-SP2 High kND" 2# PowerPC
A6 7012-G30 kND" 2# PowerPC
A7 7012-G40 kND" 2# PowerPC
C0 7024-E20 kND" 3# PowerPC
C0 7024-E30 kND" 3# PowerPC
C4 7025-F30 kND" 3# PowerPC
F0 7007-N40 50 ThinkPad

":
1. TZ uname -m |ndvMEj6* 4C D53,;cxT,7(MEj6* 4C DzwD&mw
YHD(;=(GXB}<xk=“53\m~q”,"!q53dC!n#;x,3)ivB,S|
n uname -M qCDE"I\\Poz,gBmy>#
uname -M zw`M &mwYH &mwe5a9
IBM,7017-S70 7017-S70 125 RS64
IBM,7017-S7A 7017-S7A 262 RD64-II
IBM,7017-S80 7017-S80 450 RS-III
IBM,7025-F40 7025-F40 166/233 PowerPC
IBM,7025-F50 7025-F50 kND" 4# PowerPC
IBM,7026-H10 7026-H10 166/233 PowerPC
IBM,7026-H50 7026-H50 kG<" 4# PowerPC
IBM,7026-H70 7026-H70 340 RS64-II
IBM,7042/7043 (ED) 7043-140 166/200/233/332 PowerPC
IBM,7042/7043 (ED) 7043-150 375 PowerPC
IBM,7042/7043 (ED) 7043-240 166/233 PowerPC
IBM,7043-260 7043-260 200 Power3
IBM,7248 7248-100 100 PowerPersonal
IBM,7248 7248-120 120 PowerPersonal
IBM,7248 7248-132 132 PowerPersonal
IBM,9076-270 9076-SP Silver Node kND" 4# PowerPC
2. TZ J-Series"R-Series M G-Series 53,I9CTB|nS"&mw(D FRU E7( MCA SMP
53PD&mwYH:
# lscfg -vl cpucard0 | grep FRU
FRU Number Processor Type Processor Speed
E1D PowerPC 601 75

360 T\\m8O
C1D PowerPC 601 75
C4D PowerPC 604 112
E4D PowerPC 604 112
X4D PowerPC 604e 200
3. TZ E-series M F-30 53,k9CTB|n7("&mwYH:
# lscfg -vp | pg

iRTBZ:
procF0 CPU Card

Part Number.................093H5280
EC Level....................00E76527
Serial Number...............17700008
FRU Number..................093H2431
Displayable Message.........CPU Card
Device Specific.(PL)........
Device Specific.(ZA)........PS=166,PB=066,PCI=033,NP=001,CL=02,PBH
Z=64467000,PM=2.5,L2=1024
Device Specific.(RM)........10031997 140951 VIC97276
ROS Level and ID............03071997 135048

ZX(Zh8(ZA)?V,xN PS= GT MHz m>D&mwYH#


4. TZ F-50 M H-50 53T0 SP Silver Node,BP|nITC47( F-50 53D&mwYH:
# lscfg -vp | more

iRTBZ:
Orca M5 CPU:
Part Number.................08L1010
EC Level....................E78405
Serial Number...............L209034579
FRU Number..................93H8945
Manufacture ID..............IBM980
Version.....................RS6K
Displayable Message.........OrcaM5 CPU DD1.3
Product Specific.(ZC).......PS=0013c9eb00,PB=0009e4f580,SB=0004f27
ac0,NP=02,PF=461,PV=05,KV=01,CL=1

Z|,X(Zz7(ZC)DPP,n PS= GT.yxFGEm>D&mwYH#*+KGE*;*5


JYH,k9CTB*;:
0009E4F580 = 166 MHz
0013C9EB00 = 332 MHz

5 PF= 8vK&mwdC#
251 = 1 way 166 MHz
261 = 2 way 166 MHz
451 = 1 way 332 MHz
461 = 2 way 332 MHz

7("&mwYH 361
362 T\\m8O
>XoT'V:oT73MYH
>XoT'V(NLS)9&C;,oT73DYw53dC.Vc{#r*c:&C NLS TZS53q!nE
T\dC=4=X*,rK>=<|,K;vTZ NLS DrLXK#

NLS JmYw53(F*JOvpC'oTMD/Z{#;voT73GoTMXmr_D/hsDX(iO,
|I;v4O{F4j6,}g en_US(@z"o) #TZ?v\'VDoT73,|GP;W{"`?"#1
5mMd{(eCoT73D*sDE"#120KYw53Ts,53\mwI!q&20DvoT73#
;s,wC'IT(}|D LANG M LC_ALL d?4XF?v shell DoT73#

;{OOva9D;voT73G C(r POSIX)oT73#}GC'w7X!qm;v73,qr C oT


73G531!oT73#?vBIzDxL2GZKoT73P*<D#Z C oT73PDKPnS|ZZ
Yw53PT UNIX D-<"%oN=KP#;P C {"`?#`4,"TS`?Pq!{"DLr5XQ
`kxLrD,O{"#;)|n,g sort 9-A|G-<DX(ZV{/Dc(#

NLS DT\(#V*}vxr#C oT73TZ4P|n(#GnlD,SB4G%VZ(-!V8)oT7


3,g en_US,x`VZoT734P|nn}#

`L"bBn
fZ`vf0>XoT'VD`LJb#

z7O,C oTQ-Z%JVZMV{I;T9C=fT>K;(DV*T#by char foo[10] 5wD}i


G;v 10 VZD}i#+;G@gOyPDoTITC%vVZDV{4m>#}g,UoM:oh*=v
r|`DVZ47(;v*T>DX(D<N#rx,RG*xp;v 8 ;}]DVZMh*Cs?E"4m
>%v<NDV{#

?voT73<P=vXw,4ZCoT73Pm>V{yhDns}?DVZT0%vV{I<]Dns}
?DdvT>;C#b)5ITC MB_CUR_MAX M MAX_DISP_WIDTH jq!#g{=v5<* 1,r
CoT73P@I#tVZMV{H[#g{dPP;v5sZ 1,r4PV{SV{xLDLrrzYQ9
CT>;C}DwLrXk9CzJ/D/}4byv#

r*?vV{D`VZ`kI|,;,}?DVZ9I,yT|G;Iw*V{}i4&m#*Z?vV{<
h*nH&mDBf73P5VP'`k,Q(eK;VL(VZmHD}]`M wchar_t#wchar_t \m,
c;C4]INN\'VV{`kD-kDq=#rKLr1Iyw wchar_t }i,"R&m|G1,I9C
CZ char }iD(sB)`,D_-,9CT+3 libc.a /}DmV{#b#

E6DG,SZdPdkD>D`VZq=*/*(f"ZELr4AT>w)wchar_t q=ZFcOGG#
:sD#|;\Z wchar_t q=D&m'J+_Z*/*rS wchar_t q=*/Dz[D73P4P#

3)r/fr
g{Lr14"b=`VZV{/hFD;)^F(b)^FJmm`LrZ`VZoT73P_'KPx8
u;CzJ//})rI\`4v:}"`oT&CLr#

}g:

© Copyright IBM Corp. 1997, 2006 363


v Z IBM 'VDyPzk/P,V{zk 0x00 = 0x3F G(;D,"RT ASCIIj<V{xP`k#(;
G8b);iO;aw*`VZV{DVZ.;vV#r*UV{GC/D;?V,yT strlen()"strcpy()
M strcat() /}C4&m`VZT0%VZV{.#Lr1XkNG strlen() 5XD5GV{.PDVZ
},x;GV{}#
v ,yX,j<V{./} strchr(foostr, ’/’) ZyPoT73B<KP}#,r* /(1\)G(;zkc
6'D;?V#5JO,s`}j<(g{Z 0x00 = 0x3F D6'Z,yTs?Vo(Vv;C@5zJ
//}r*/* wchar_t q=M\jI#
v V{.DHOavV=`iv:`Hr;H#9Cj< strcmp() /}44PHO#1c4k:
if (strcmp(foostr,"a rose") == 0)

z;GZCd{NN{FiR ″a rose″;zvZiRC;/#g{ foostr |, ″a rosE″,r;aR=%


d#
v 1c*"TZoT73(eD#1rPPEPV{.1,+"z;HHO#ZGVivB,c&9C:
if (strcoll(foostr,barstr) > 0)

"R*q!?vV{D#1E"*6vT\z[#
v 14PLr1,|<UZ C oT73P*<#g{|+9C;vr`vzJ//}(|(CJ{"?<)r
|Xk4P:
setlocale(LC_ALL, "");

TZwCNNzJ//}0P;Ad8xLDoT73#

hCoT73
9C export |nhCoT73#

BP|nrP:
LANG=C
export LANG

+1!oT73hC* C(4,}G LC_COLLATE .`Dx(d?T=hC*d{5,qr9C C)#

BPrP:
LC_ALL=C
export LC_ALL

;<GH0DhC,?F+yPoT73d?hC* C#

*qCoT73d?10hCD(f,dk locale#

364 T\\m8O
IwN}
P`VYw53N}I\0lT\#

b)N}Z?ZP4UV83rhv#

73d?
P=`73d?:_L'VIwN}Md{IwN}#

_L'VIwN}
P\`IwD_L'VN}#
1. ACT_TIMEOUT

C>: w{$n,1Dk}#
5: 1!5:DEF_ACTOUT#6':}{}#
T>: echo $ACT_TIMEOUT

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: ACT_TIMEOUT=export ACT_TIMEOUTexport SPINLOOPTIME

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ ACT_TIMEOUT=n |nm


S= /etc/environment D~PIxP@CT|D#
oO: N/A
w{: N/A
N<: Z 56 3D:_L73d?;

2. AIXTHREAD_COND_DEBUG(AIX 4.3.3 0|_f>)

C>: ,$u~d?PmT)wTw9C#
5: 1!5:ON#6':ON,OFF#
T>: echo $AIXTHREAD_COND_DEBUG

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: AIXTHREAD_COND_DEBUG={ON|OFF}export AIXTHREAD_COND_DEBUG

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+


AIXTHREAD_COND_DEBUG={ON|OFF} |nmS= /etc/environment D~PIxP@CT|D#
oO: #tCd?hC* ON I9wT_L&CLr|]W,+I\a?S;)*z#
w{: g{Lr|,s?n/Du~d?,"R514(MF5u~d?,r,$u~d?PmI\azz
|sD*z#+Cd?hC* OFF +{CCPm#
N<Z 60 3D:_LwT!n;#

3. AIXTHREAD_ENRUSG

C>: tCr{C pthread J4U/#


5: 1!5:OFF#6':ON,OFF#

© Copyright IBM Corp. 1997, 2006 365


T>: echo $AIXTHREAD_ENRUSG

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: AIXTHREAD_ENRUSG={ON|OFF}export AIXTHREAD_ENRUSG

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+


AIXTHREAD_ENRUSG={ON|OFF} |nmS= /etc/environment D~PIxP@CT|D#
oO: +KN}hC* ON +JmT;vxLPDyP pthread xPJ4U/,+Ga?S;)*z#
w{:
N<Z 56 3D:_L73d?;#

4. AIXTHREAD_GUARDPAGES(AIX 4.3 0|_f>)

C>: XF#$3},S= pthread ;2#


5: 1!5:0#6':}{}
T>: echo $AIXTHREAD_GUARDPAGES

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: AIXTHREAD_GUARDPAGES=nexport AIXTHREAD_GUARDPAGES

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+


AIXTHREAD_GUARDPAGES=n |nmS= /etc/environment D~PIxP@CT|D#
oO: N/A
w{: N/A
N<Z 56 3D:_L73d?;#

5. AIXTHREAD_MINKTHREADS(AIX 4.3 0|_f>)

C> XF&9CDnYZK_L}#
5: 1!5:8#6':}{}5#
T>: echo $AIXTHREAD_MINKTHREADS

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: AIXTHREAD_MINKTHREADS=nexport AIXTHREAD_MINKTHREADS

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+


AIXTHREAD_MINKTHREADS =n |nmS= /etc/environment D~PIxP@CT|D#
oO: N/A
w{: bwHLr;aXUMZKd?PhCD5DZK_L#ZK_LZ8uNN1r<I\;XU#;
c45,ZK_LGw* pthread P9a{D?j#
N<:Z 60 3D:xL6'yCwCrDd?;

6. AIXTHREAD_MNRATIO(AIX 4.3 0|_f>)

C>: XFbDH}rS#bvHJCZ4(MU9 pthread#


5: 1!5:8:1 6':=v}}5(p:k),dP k G&CC4&m p d?P(eDI4P pthread }D
ZK_L}#
T>: echo $AIXTHREAD_MNRATIO

KN}Z?*t,rKu<1!5^((} echo |n4=#

366 T\\m8O
|D: AIXTHREAD_MNRATIO=p:kexport AIXTHREAD_MNRATIO

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ AIXTHREAD_MNRATIO=p:k


|nmS= /etc/environment D~PIxP@CT|D#
oO: N/A
w{: TZ5P+s?_LD&CLrI\\PC#+G,k\GbT 1:1 DHJ,r*bI\a)|CDT
\#
N<: Z 60 3D:xL6'yCwCrDd?;

7. AIXTHREAD_MUTEX_DEBUG(AIX 4.3.3 0|_f>)

C>: ,$n/%bTsPmT)wTw9C#
5: 1!5:OFF#I\D5:ON,OFF#
T>: echo $AIXTHREAD_MUTEX_DEBUG

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: AIXTHREAD_MUTEX_DEBUG={ON|OFF}export AIXTHREAD_MUTEX_DEBUG

K|D"4z',"RZC'SC shell P"z.0;1P'#+


AIXTHREAD_MUTEX_DEBUG={ON|OFF} |nmS= /etc/environment D~PIxP@CT|D#
oO: +Cd?hC* ON I9wT_L&CLr|S]W,+I\a?S;)*z#
w{: g{Lr|,s?n/D%bTs,"R514(MF5%bTs,r,$%bTsPmI\azz
|sD*z#+Cd?hC* OFF +{CCPm#
N<: Z 60 3D:_LwT!n;

8. AIXTHREAD_MUTEX_FAST(AIX 5.2 0|_f>)

C>: tCE/D%bTsx(zF#
5: 1!5:OFF#I\D5:ON,OFF#
T>: echo $AIXTHREAD_MUTEX_FAST

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: AIXTHREAD_MUTEX_FAST={ON|OFF}export AIXTHREAD_MUTEX_FAST

K|D"4z',"RZC'SC shell P"z.0;1P'#+


AIXTHREAD_MUTEX_FAST={ON|OFF} |nmS= /etc/environment D~PIxP@CT|D#
oO: +Cd?hC* ON +?F_L&CLr9CE/D%bTsx(zF,Sx9T\a_#
w{: g{LrIZOXD%bTsyCxvVT\B5,r+Kd?hC* ON +?F pthread b9CvT
xL=P%bTspwCDE/%bTsx(zF#b)xL=P%bTsXk9C pthread_mutex_init
}LxPu</,"RXk9C pthread_mutex_destroy }LF5#
N<: Z 60 3D:_LwT!n;

9. AIXTHREAD_READ_GUARDPAGES(xP 5300-03 D AIX 5.3 0|_f>)

C>: XFTmS= pthread ;2D#$3DACJ#


5: 1!5:OFF#6':ON,OFF#
T>: echo $AIXTHREAD_READ_GUARDPAGES

KN}Z?*t,rKu<1!5^((} echo |n4=#

IwN} 367
|D: AIXTHREAD_READ_GUARDPAGES={ON|OFF}export AIXTHREAD_GUARDPAGES

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+


AIXTHREAD_READ_GUARDPAGES={ON|OFF} |nmS= /etc/environment D~PIxP@C
T|D#
oO: N/A
w{: N/A
N<Z 56 3D:_L73d?;#

10. AIXTHREAD_RWLOCK_DEBUG(AIX 4.3.3 0|_f>)

C>: ,$A4xPmT)wTw9C#
5: 1!5:ON#6':ON,OFF#
T>: echo $AIXTHREAD_RWLOCK_DEBUG

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: AIXTHREAD_RWLOCK_DEBUG={ON|OFF}export AIXTHREAD_RWLOCK_DEBUG

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+


AIXTHREAD_RWLOCK_DEBUG={ON|OFF} |nmS= /etc/environment D~PIxP@CT|D#
oO: +KN}hC* ON I9wT_L&CLr|S]W,+I\a?S;)*z#
w{: g{Lr|,s?n/DA4x,"R514(MF5A4x,r,$A4xPmI\zz|sD*
z#+Cd?hC* OFF +{CCPm#
N<: Z 60 3D:_LwT!n;

11. AIXTHREAD_SUSPENDIBLE(xP 5300-03 D AIX 5.3 0|_f>)

C>: Z+BP}Lk pthread_suspend_npr pthread_suspend_others_np }L;p9CD&CLrP


@9@x:
v pthread_getrusage_np
v pthread_cancel
v pthread_detach
v pthread_join
v pthread_getunique_np
v pthread_join_np
v pthread_setschedparam
v pthread_getschedparam
v pthread_kill
5: 1!5:OFF#6':ON,OFF#
T>: echo $AIXTHREAD_SUSPENDIBLE

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: AIXTHREAD_SUSPENDIBLE={ON|OFF}export AIXTHREAD_SUSPENDIBLE

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+


AIXTHREAD_SUSPENDIBLE={ON|OFF} |nmS= /etc/environment D~PIxP@CT|D#
oO: Kd?ax4YmT\p'#

368 T\\m8O
w{: vZOv/}k pthread_suspend_np routine r pthread_suspend_others_np }L;p9C1
E&tCKd?#
N<: Z 60 3D:_LwT!n;

12. AIXTHREAD_SCOPE(AIX 4.3.1 0|_f>)

C>: XFyCwCr#5* P m>yZxLDyCwCr(M:N)#5* S m>yZ53DyCwCr


(1:1)
#
5: 1!5:P#I\D5:P r S#
T>: echo $AIXTHREAD_SCOPE

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: AIXTHREAD_SCOPE={P|S}export AIXTHREAD_SCOPE

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ AIXTHREAD_SCOPE={P|S}


|nmS= /etc/environment D~PIxP@CT|D#
oO: g{VID_LHZ{DY,r"T53wCr#
w{: AIX 4.3.2 ODbTmw,3)&CLr9CyZ53DyCwCr(S)I\T\*CC`#9Cbv
73d?;TG)4(1_P1!tTD_LP0l#1 pthread_create D attr N}* NULL 1,
+IC1!tT#
N<: Z 56 3D:_L73d?;

13. AIXTHREAD_SLPRATIO(AIX 4.3 0|_f>)

C>: XF$tx/__LDZK_L}#
5: 1!5:1:12#6':=v}}5(k:p),dP k G&$tx p v]_ pthread DZK_L}#
T>: echo $AIXTHREAD_SLPRATIO

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: AIXTHREAD_SLPRATIO=k:pexport AIXTHREAD_SLPRATIO

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ AIXTHREAD_SLPRATIO=k:p


|nmS= /etc/environment D~IxP@CT|D#
oO: N/A
w{: ;c45,'V/__Lh*DZK_LG\YD#r*|G;cG;NQ;v#bMZ<KZKJ
4#
N<: Z 60 3D:xL6'yCwCrDd?;

14. AIXTHREAD_STK=n(xP 4330-09 Fv,$|D AIX 0|_f>)

C>: .xFVZ&CVd=?v pthread#K5II pthread_attr_setstacksize }L2G#


5: 1!5:TZ 32 ;&CLr* 98 304 VZ,TZ 64 ;&CLr* 196 608 VZ#6':0 = 268
435 455 D.xF{}5,"RC5+rO!{=nS|D3(?0* 4 096) #
T>: echo $AIXTHREAD_STK

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: AIXTHREAD_STK=sizeexport AIXTHREAD_STK

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ AIXTHREAD_STK=size |


nmS= /etc/environment D~PIxP@CT|D#

IwN} 369
oO: g{'\LrDVva{GIZQ;gv,1!D;s!&CvS#
w{: g{"To= 32 ;&CLrOD 32 000 _L^F,rPX*u!1!Q;s!#

15. MALLOCBUCKETS(AIX 4.3.3 0|_f>)

C>: Z1!ZfVdwPtCyZf"xD)9,TZ"vs?O!VdksD&CLr,C)9Ia_
dT\#
5: MALLOCTYPE=buckets

MALLOCBUCKETS=[[ number_of_buckets:n | bucket_sizing_factor:n | blocks_per_bucket:n |


bucket_statistics:[stdout|stderr|pathname]],...]

BmT>K MALLOCBUCKETS D1!5#


MALLOCBUCKETS !n
1!5
number_of_buckets1
16
bucket_sizing_factor(32 ;)2
32
bucket_sizing_factor(64 ;)3
64
blocks_per_bucket
10244
":

1. JmDn!5G 1,ns5G 128#

2. TZ 32 ;Div,bucket_sizing_factor D(P5XkG 8 D6}#

3. TZ 64 ;Div,bucket_sizing_factor D(P5XkG 16 D6}#

4. !n bucket_statistics Z1!ivB;{C#
T>: echo $MALLOCBUCKETS; echo $MALLOCTYPE
|D: 9CC4<v73d?DX(Z shell D=(#
oO: g{ malloc T\On,R"vK\`O!D malloc ks,rK&\Ia_T\#

370 T\\m8O
w{: *KtC malloc f"x,73d? MALLOCTYPE ;(*hC*‘bucket’#

MALLOCBUCKETS 73d?ICZ|D malloc f"xD1!dC,!\1!5TZs`}&CLrQ


-c;#

number_of_buckets:n !nICZ8(?vQDICf"x},dP n *f"xD}?#8(D n 5


aCZyPP'DQ#

bucket_sizing_factor:n !nICZ8(f"xuEs!rS,dP n *f"xuEs!rS,%;


*VZ#

blocks_per_bucket:n !nICZ8(?vf"xPnu|,Di},dP n *i}#bv5CZy


Pf"x#1yPi;Vdv%s,bv n 52IZT/)sf"x1C47(?vf"x*vS`Y
i#

!n bucket_statistics a9 malloc S53dv;vXZ?vxLU91wC malloc 53x malloc


f"x};tCD malloc f"xD3F**#bv**aT>f"xdCE"M&m?vf"x1V
dZfDh*?#g{(} malloc \`Q;tC,?vf"xDVdhs?MG&mGvf"xyP
QDVdhs?.M#

f"x3F**;ZBPdv?jD~P,I!n bucket_statistics h(#


stdout j<dv

stderr j<ms
pathname
C'8(76{

g{a)KC'8(76{,3Fdva=S=QfZDD~Z]sf#&1\b>&I*m;xLd
kZ]D3xLdvI*KTj<dvN=fZDUKdv#
N<: Malloc Buckets

16. MALLOCMULTIHEAP(AIX 4.3.1 0|_f>)

C>: ZxL=PNZXFQ}
5: 1!5:TZ AIX 4.3.1 M AIX 4.3.2 * 16,TZ AIX 4.3.3 0|_f>* 32#6':1 = 32 .
dD}}#
T>: echo $MALLOCMULTIHEAP

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: MALLOCMULTIHEAP=[[heaps:n | considersize],...] export MALLOCMULTIHEAP

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+


MALLOCMULTIHEAP=[[heaps:n | considersize],...] |nmS= /etc/environment D~PIxP
@CT|D#
oO: Z malloc x(;Z F N)P0RxyCrYZh*DI4P_L#

IwN} 371
w{: O!}?DQ}PzZu!xLs!#(}Zt/&CLr.0<v MALLOCMULTIHEAP=1 73d
?,3)s?9C mallloc S53D`_LC'xLIqC|CDT\#

1ZDT\E/nI\vVZ`_L C++ LrP,r*^[wC9l/}rv9/}b)<*C=


malloc S53#

Z`_LC'xLKPZ SMP 531,NNT\E/<GITC=D,HdGZ9C53wCr_L


(M:N ratio of 1:1)1#+G,Z3)ivB,v?Zd{u~BT0Z%&mwOI\2\wT#

g{!n considersize ;h(,;fQ!qc(+C4!qPc;Ud&mhsDP'Q#(}uY


sbrk() wCD}?,bI\9xLD$w/s!o=n!#+Gbvc(h*|`;cD&m1d#
N<: Z 56 3D:_L73d?;

17. NUM_RUNQ

C>: |DKPSPD1!}?#
5: 1!5:ZKP1R=Dn/&mwD}?#6':}{}#
T>: echo $NUM_RUNQ

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: NUM_RUNQ=export NUM_RUNQ

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ NUM_RUNQ=n |nmS


= /etc/environment D~PIxP@CT|D#
oO: N/A
w{: N/A
N<: Z 56 3D:_L73d?;

18.

NUM_SPAREVP

C>: hCZ pth_init Zd+(} malloc VdD vp a9D}?#


5: 1!5:NUM_SPARE_VP#6':}{}#
T>: echo $NUM_SPAREVP

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: NUM_SPAREVP=export NUM_SPAREVP

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ NUM_SPAREVP=n |n


mS= /etc/environment D~PIxP@CT|D#
oO: N/A
w{: N/A
N<: Z 56 3D:_L73d?;

19. SPINLOOPTIME

C>: Z*=d{&mw(vTZ libpthreads)0XF1d?4XT1&Dx#


5: 1!5:%&mw* 1,`&mw* 40#6':}{}#

372 T\\m8O
T>: echo $SPINLOOPTIME

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: SPINLOOPTIME=nexport SPINLOOPTIME

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ SPINLOOPTIME=n |n


mS= /etc/environment D~PIxP@CT|D#
oO: g{_L-#]_(s?UP1d),r SPINLOOPTIME I\;;_#
w{: g{fZ pthread %bTsyC,rZ`&mw53O+C5S1!5 40 xPvsI\Pf#
N<: Z 56 3D:_L73d?;

20. STEP_TIME

C>: w{Z$n,1ZdC44( VP DN}#


5: 1!5:DEF_STEPTIME#6':}{}#
T>: echo $STEP_TIME

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: STEP_TIME=export STEP_TIME

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ STEP_TIME=n |nmS


= /etc/environment D~IxP@CT|D#
oO: N/A
w{: N/A
N<: Z 56 3D:_L73d?;

21. VP_STEALMAX

C>: w{IT!D VP D}?,r_XU VP T!#


5: 1!5:^#6':}{}#
T>: echo $VP_STEALMAX

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: VP_STEALMAX=export VP_STEALMAX

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ VP_STEALMAX=n |nm


S= /etc/environment D~PIxP@CT|D#
oO: N/A
w{: N/A
N<: Z 56 3D:_L73d?;

22. YIELDLOOPTIME

C>: Z&x(vCZ libpthreads)OVi0XF9C&mwDN}#YgPm;vEH6O_DI4PZK


_L,&mwMa%&mGvZK_L#
5: 1!5:0#6':}}5#
T>: echo $YIELDLOOPTIME

KN}Z?*t,rKu<1!5^((} echo |n4=#

IwN} 373
|D: YIELDLOOPTIME=nexport YIELDLOOPTIME

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ YIELDLOOPTIME=n |n


mS= /etc/environment D~PIxP@CT|D#
oO: g{_L-#]_(s?UP1d),5w YIELDLOOPTIME I\;;_#
w{: g{;#{_LZH}x1*k]_4,,r+C5S1!5 0 xPvsI\Pf#
N<: Z 56 3D:_L73d?;

d{IwN}
AIX PP`vd{ICN}GIwD#
1. EXTSHM(AIX 4.2.1 0|_f>)

C>: r*)92mZfh8#
5: 1!5:;h

I\D5:ON,1SEG,MSEG
T>: echo $EXTSHM
|D: export EXTSHM

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ EXTSHM=ON"


EXTSHM=1SEG r EXTSHM=MSEG |nmS= /etc/environment D~PIxP@CT|D#
oO: N/A
w{: +5hC* ON"1SEG r MSEG JmxLVd!A 1 VZD2mZfN(I!{*nS|D3);
bP'X{}K 11 vC'2mZfND^F#TZ 32 ;xL,yPZfNDnss!* 2.75 GB#

+ EXTSHM hC* ON k+Cd?hC* 1SEG '{`,#^[NVhC,!Z 256 MB DNN


2mZfw* mmap NZZ?4(,rKPEk mmap `,DT\0l#sZHZ 256 MB DNN
2mZfw*$wNZZ?4(#

g{ EXTSHM hC* MSEG,ryP2mZf<w* mmap NZZ?4(,Sx5V|CDZf{


CJ#
N<: Z 138 3D:)92mZf;

2. LDR_CNTRL

C>: Jmw{ZK20w#
5: 1!5:;h

I\D5:
PREREAD_SHLIB"LOADPUBLIC"IGNOREUNLOAD"USERREGS"MAXDATA"DSA"PRIVSEG_LOADS"
DATA_START_STAGGER"LARGE_PAGE_TEXT"LARGE_PAGE_DATA"NAMEDSHLIB
T>: echo $LDR_CNTRL
|D: LDR_CNTRL={PREREAD_SHLIB | LOADPUBLIC| ...}export LDR_CNTRL |DZK shell P"4z'#
ZSbv shell "z.0|D;1P'#+TBPmS= /etc/environment D~PIxP@CT|D:
LDR_CNTRL={PREREAD_SHLIB | LOADPUBLIC| ...}
oO: N/A

374 T\\m8O
w{: 73d? LDR_CNTRL ITC4XF;vM`vPX5320wP*DrX#Cd? DR_CNTRL zI
Th(`v!n#h(`v!n1,k9C“@”{E4Vtwv!n#8(`v!nD>}gB:
LDR_CNTRL=PREREAD_SHLIB@LOADPUBLIC#h(!n PREREAD_SHLIB a9CJbD,1A!
b#g{w{K VMM $A,1Lr*<CJbD3f1,QSELOAkb,"Q_Y:fZZfP#
d;K=(I\9C|`Zf,+Gg{CJ#=*G,xD(}g,Catia),rTZ9C\`2mb
3DLr,C=(2I\v?T\#

h(!n LOADPUBLIC }<5320w20&CLrh*DyP#i=(C2mbNP#g{;v#i


;IT+CX0k=;v(C2mbNP,G4|;\=PX;0k&CLrP#

8( IGNOREUNLOAD !n\bC&CLr60b#1440kM60b1,byvI\IT@9Zf
i,M{}}pD*z#g{;P8( IGNOREUNLOAD !n,"Rg{Z&CLr0k1d0k#i,
;sks/,X`N0kM60C#i,zI\TC#iD=v}]5}xax#

h(!n USERREGS af_53(}&CLrD53wC,#fyP;cC>DC'Dfw}5#bZ


&CLr&m,xU/1.VPC#

8( MAXDATA !nhCxLDnsQDs!(|(2G8(ZI4PD~PNN MAXDATA 5) #


g{c*9C}]Qs!* 0x30000000 D Large Program Support,Mh*h(
LDR_CNTRL=MAXDATA=0x30000000#*XU“sLr'V”, k8( LDR_CNTRL=MAXDATA=0#8
( DSA(/,NVd)!n+f_530kLr9C“+sLr'V”KP&CLr#DSA !n;T 32 ;
&CLrP'#

8( PRIVSEG_LOADS !n8}C530kLr+/,X0kD(C#iEkxL(C,O#bI\Z
sZf#M&CLr(ZxLQP4P(C/,0kMZxLQPI\CjZf)Pa_ZfDIC
T#g{xL(C,N1&dcDUd,PRIVSEG_LOADS !nM;P'{# PRIVSEG_LOADS !n;
T 32 ;&CLr(MAXDATA 5Gc)P'#

8( DATA_START_STAGGER=Y !n+TI vmo |nD data_stagger_interval !nXFD% MCM


+F?*<CxLD}]N#Zx(D MCM O4PDZ n vs3f}]xLT+F?(n *
data_stagger_interval * PAGESIZE) % 16 MB *<d}]N#DATA_START_STAGGER=Y !n;
T 64 ;ZKPD 64 ;xLP'#

8( LARGE_PAGE_TEXT=Y !nmwC0kLr&C"T+s3fCZCxLDD>,N#
LARGE_PAGE_TEXT=Y !nvT 64 ;ZKPD 64 ;xLP'#
8( LARGE_PAGE_DATA=M !nx}],N;Vdc;Ds3f(o= brk 5),x"G+?,O
(1;P8( LARGE_PAGE_DATA=M !n1DP*)
#g{;Pc;Ds3f'VT brk 5D|D,
rT brk 5D|DI\a'\#

8( RESOLVEALL !n+?F0kLrbvZLr0k1r_Lr0k/,#i1y<kDyP4(e
{E#{EbvTj<D AIX nHEH3rxP#g{8(K LDR_CNTRL=RESOLVEALL "R<k
D{E^(bv,rLrr/,#i+^(0k#

8( NAMEDSHLIB=name,[attr1],[attr2]...[attrN] !n9xLITCJr4(I8(D{Fj6D2mbx
r#I9CBP=(4(|{D2mbxr:
v ;9CtT
v 9C doubletext32 tT,CtT4(P=vN(CZ2mbD>D|{2mbxr

g{xLks9C;fZD|{2mbxr,+Ty8(D{FT/4(2mbxr#g{8(D{F
^',rvT NAMEDSHLIB=name,[attr1],[attr2]...[attrN] !n#P'{FD$HG}},"R;|,V8
}V"B._MdcV{#

IwN} 375
3. NODISCLAIM

C>: XFuywC}Z&mD free()#1 PSALLOC hC* early 1,yP free() wC+}p;N


disclaim() 53wC#1 NODISCLAIM hC* true 1,r;a"zKiv#
5: 1!5:;h

I\5:True
T>: echo $NODISCLAIM
|D: NODISCLAIM=true export NODISCLAIM

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ NODISCLAIM=true |n


mS= /etc/environment D~PIxP@CT|D#
oO: g{ disclaim() 53wCN}+_,rI\*hCKd?#
w{: g{ PSALLOC hC* early,rhCKd?+{}S free() T disclaim() !nDwC#
N<: Z 135 3D:H3fUdVd;

4. NSORDER

C>: X4/O{FVfJQw3r#
5: 1!5:bind"nis"local

I\5:bind"local"nis"bind4"bind6"local4"local6"nis4 M nis6
T>: echo $NSORDER

KN}Z?*t,rKu<1!5^((} echo |n4=#


|D: NSORDER=value, value, ... export NSORDER

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#+ NSORDER=value |nm


S= /etc/environment D~PIxP@CT|D#
oO: N/A
w{: NSORDER 2G /etc/netsvc.conf D~#
N<: Z 245 3D:{Fbvw{;

5. PSALLOC

C>: hC73d? PSALLOC T7(w3UdVdfr#


5: 1!5:;h

I\5:early
T>: echo $PSALLOC
|D: PSALLOC=early export PSALLOC

|DaZC shell P"4z'#ZSbv shell "z.0|D;1P'#


oO: N/A
w{: *7(ZMw3u~B;vxL;PP9,bvxLIT9C Early Page Space Allocation fr4$V
dw3Ud#+G,bI\azzKQDw3Ud#I\9h*hC NODISCLAIM 73d?#
kND: Z 41 3D:w3Ud[DVdMXU;MZ 135 3D:H3fUdVd;

376 T\\m8O
6. RT_GRQ(AIX 4.3.3 0|_f>)

C>: 9_LCZ+VKPSP,xG% CPU KPSP#


5: 1!5:;h

6':ON,OFF
T>: echo $RT_GRQ
|D: RT_GRQ={OFF/ONexport RT_GRQ

|Da"4z'#xRZBNt/0;1P'#+ RT_GRQ={ON|OFF} |nmS= /etc/environment


D~PIxP@CT|D#
oO: N/A
w{: ITZ`&mw53P;w{#+Kd?hC* ON +9_LCk+VKPSP#ZCivB,+Qw
+VKPSPTi4Dv_L_Pn_EH6#bI\Jm53|gXVI_L,"RIDFG)K
P SCHED_OTHER "RGPO}/D_LDT\#
N<: Z 34 3D:wHLrKPSP;

7. RT_MPC(AIX 4.3.3 0|_f>)

C>: 1T51==KPZK(kND bosdebug |n)1,g{P;vEH6|_D_LIKP,r MPC


I"M=m;v CPU T+dPO,T9K_LI"4C=VI#
5: 1!5:;h

6':ON
T>: echo $RT_MPC
|D: RT_MPC=ON export RT_MPC

|Da"4z'#xRZBNt/0;1P'#+ RT_MPC=ON |nmS= /etc/environment D~


PIxP@CT|D#
oO: N/A

8. LDR_PRELOAD LDR_PRELOAD64

C>: ks$0k2mb#LDR_PRELOAD !nkT 32 ;xL,x LDR_PRELOAD64 !nkT 64 ;x


L#Z{EbvZd,+WHQwKd?PPvD$0kb,TiR?;v<kD{E,v1Zb)
bP4R=1Ea9C#fQw#9$0kbPD{E<H,bT AIX 1!4SMKP14S<pw
C#SYD{Ebv;d#
5: 1!5:;h

I\D5:b{
":g{Pv`vb,rC0E(:)Vt|G#+i5bDI1C(E(p#
T>: echo $LDR_PRELOAD

echo $LDR_PRELOAD64
|D: $LDR_PRELOAD=″libx.so:liby.a(shr.o)″

bvh*DNN{EWHS libx.so 2mTsPxP,;sS liby.a D shr.o I1PxP,nsZx


LD@5TsPxP#yP/,0kD#i(C dlopen() r load() 0kD#i)2+WHSCd?P
vD$0kbPxPbv#
oO: N/A

IwN} 377
ZKIwN}
AIX ZKw{N}VIyi:wHLrMZf0kXFIwN}"VMM IwN}",= I/O IwN}"l=
I/O IwN}"ELMELJdwIwN}MxLd(EIwN}#

^D
AIX 5.2 0|_f>*hCs`} AIX ZKw{N}a)K|*inM/PD==#

VZ^k`-NN rc D~4IxP@C|D#bv?jI(}Z;vBDZD~ /etc/tunables/nextboot P


*yPIwN}hCXB}<545V#1zwXB}<1,aT/&CCD~PD5#

XB}<.sf4aT/zI /etc/tunables/lastboot ZD~,CD~P|,xhCDyP5#bya)K;


VIZNN1rV4G)5D\&#/etc/tunables/lastboot.log U>D~G<KZXB}<ZdyvDNN|
Dr^(xPD|D#9P`i SMIT feM“yZ Web D53\mw”e~IC4&myPw{N}D10
5MXB}<5,T0 /etc/tunables ?<BDD~#

AIX 5.2 0|_f>Pa)KBPCZ^DIwN}D~D|n:

|n C>
tunsave +5#f=ZD~P
tunchange |BZD~PD5
tunrestore &C3vD~P8(DJCN}5
tuncheck i$V/4(DD~
tundefault +IwN}4;I1!5

TOyP|n<IwCZ10DMXB}<DIwN}5#PX|`E",kNDwTD*zoz3#

PX^Db)ZKw{N}DN;N}D|`E",kNDAIX 5L Version 5.3 Performance Tools Guide and


ReferencePD:ZKw{;;Z#

vmtune M schedtune Dfz|n


TBE"JCZ AIX 5.2 0|_f>#vmtune M schedtune |nQI vmo"ioo M schedo |nyf
z#vmo M ioo |n;pf; vmtune,x schedo |nf; schedtune#yPVPDN}<IB|n9
C#

ioo |n\myPk I/O `XDw{N},x vmo |n\mH0I vmtune |n\mDyPd{ibZf


\mw(r VMM)N}#yPb}v|n<G bos.perf.tune D~/D;?V,CD~/9|, tunsave"
tunrestore"tuncheck M tundefault |n#AIX 5.2 0|_f>PD bos.adt.samples D~/T;|,
vmtune M schedtune |n,|GGZJ1D1rwC vmo"ioo M schedo |nDf]T shell E>#
b)f]TE>v'V|DG)IxP;%=|DDN}#xh* bosboot "*szwXB}<E\z'D
N};Y\ vmtune E>'V#*|Db)N},C'VZXk9C vmo -r |n#+*V[D vmtune |
n!nMN}gB:

T0D vmtune !n C( B|n


-C 0|1 3fE+ vmo -r -o pagecoloring=0|1
-g n1 -L n2 s 3 f s ! , * # t D vmo -r -o lgpg_size=n1 -o lgpg_regions=n2
s3fD}?
-m n f"X vmo -r -o mempools=n

378 T\\m8O
-v n ?vf"XP!D}? vmo -r -o framesets=n
-i n X b } ] N j 6 { D d vmo -r -o spec_dataseg_int=n
t
-V n * # t D X b } ] N j vmo -r -o num_spec_dataseg=n
>{}?
-y 0|1 p690 f"wD`FT vmo -r -o memory_affinity=0|1

vmtune M schedtune f]TE>;f AIX 5.3 a)#zITN<Bm+zDhC(F=BD|n:

schedtune !n schedo H'!n &\


-a number -o affinity_lim=number hCOBD;;},ZK.s SCHED_FIF02 _T+;Y'V_
L#
-b number -o idle_migration_barrier=number hCUP(FAO#
-c number -o %usDelta=number XF1S/FDw{#
-d number -o sched_D=number hCCZ%u CPU 9CDrS#
-e number -o v_exempt_seconds=number TZn|;]R"VLxDxL,hC|-}`$1dE\;
XB]R#
-f number -o pacefork=number hCZXT'\D fork wC.0,SYD1SEE}#
-F number -o fixed_pri_global=number +L(EH6D_L#tZ+VKPSPP#
-h number -o v_repage_hi=number |D536'ZCZ7(xL]RD*<1dMax1dDu
~#
-m number -o v_min_process=number hCnM`@LrhF6p#
-p number -o v_repage_proc=number |DC47(]RDvxLD?vxLu~#
-r number -o sched_R=number hC[} CPU 9CDYH#
-s number -o maxspin=number hCZ]_0ZxOT}DN}#
-t number -o timeslice=number hC 10 Ak1d,D}?#
-w number -o v_sec_wait=number hCZ53_$ax.s+xLmSXiO.0H}Dk}#

vmtune !n vmo H'!n ioo H'!n &\


-b number -o numfsbuf=number hCD~53 bufstruct }#
-B number -o hd_pbuf_cnt=number S AIX 5.3 *<,CN}f;*
pv_min_pbuf N}#
-c number -o numclust=number hCIs4&mD 16 KB /:D}
?#
-C 0|1 -r -o pagecoloring=0|1 *X(D2~=({Cr_tC3fw
+#
-d 0|1 -o deffps=0|1 r*MXUSYDw3UdVd#
-e 0|1 -o jfs_clread_enabled=0|1 XF JFS GqZyPD~O<9C/:
A!#
-E 0|1 -o jfs_use_read_lock=0|1 XF JFS ZSD~A!1Gq9C2m
x(#
-f number -o minfree=number hCUPPmPD!}#
-F number -o maxfree=number hC*#9!T!1DUPPmPD!
}#

IwN} 379
-g number -o lgpg_size number hC2~'VDs3fDs!,TVZ
F#
-h 0|1 -o strict_maxperm=0|1 8( maxperm% Gq&CI*2^
F#
-H number -o pgahd_scale_thresh=number hC53UX$ADZfXPUP3f
D}?#
-i number -r -o spec_dataseg_int=number hC#tXbD}]Nj619CD1
ddt#
-j number -o j2_nPagesPerWriteBehindCluster= hC?vs4/:D3f}#
number
-J number -o j2_maxRandomWrite=number hCfz4P5F}#
-k number -o npskill=number hC**<1@xL1Dw3Ud3f
}#
-l number -o lrubucket=number hCn|nY9CD3ff;f"xD
s!#
-L number -o lgpg_regions=number hC*#tDs3fD}?#
-m number -r -o mempools=number S AIX 5.3 *<,CN};fZ#
-M number -o maxpin=number hCITL(D5ZfDnsYVH#
-n number -o nokilluid=number 8(1w3UdM1;&C1@DxL
D uid 6'#
-N number -o pd_npages=number hCZ>}D~1&CS RAM D;v
iP>}D3f}#
-p number -o minperm%=number hC;vc,1MZCc1,+#$D
~3f;\XBw3c(D0l#
-P number -o maxperm%=number hC;vc,1_ZCc1,3fT!
c(vT!D~3f#
-q number -o j2_minPageReadAhead=number hC*a0A!Dn!3f}#
-Q number -o j2_maxPageReadAhead=number hC*a0A!Dns3f}#
-r number -o minpgahead=number hC3ra0A!*<D3f}#
-R number -o maxpgahead=number hC*$A!Dns3f}#
-s 0|1 -o sync_release_ilock=0|1 tCr{CZ sync Zd,9VPw}
ZcxD1dnLDzk#
-S 0|1 -o v_pinshm=0|1 tCr{C shmget 53wCOD
SHM_PIN j>#
-t number -o maxclient%=number hC;vc,1_ZCc1,3fT!
c(vT!M'zD~3f#
-T number -o pta_balance_threshold= hCVdBD PTA NDc#
number
-u number -o lvm_bufcnt=number *-<om I/O hC LVM :ex}#
-v number -r -o framesets=number hC?vZfXDr\/}#
-V number -r -o num_spec_dataseg= hC*#tDXb}]Nj6}#
number
-w number -o npswarn=number hCrxL"M SIGDANGER EE1
DUPw3Ud3f}#

380 T\\m8O
-W number -o maxrandwrt=number hCZ9Cs4c(+3fkEL,=
.0,Z RAM P[}Dfz4DP
5#
-y 0|1 -r -o memory_affinity=0|1 S AIX 5.3 *<,CN};fZ#g{
2~'V,Zf`FT\Gr*D#
-z number -o j2_nRandomCluster=number hCfz4P5`k#
-Z number -o j2_nBufferPerPagerDevice= number hC?v3fwHLrh8D:ex
}#

T no M nfso |nDv?
TZ AIX 5.2 0|_f>,no M nfso |nC=Kv?,T(} /etc/tunables/nextboot D~ITIwN
}xP@C|D#b)|n<P -h j>,Cj>ICZT>PXNNN}Doz#

ozE"DZ]|(:
v N}DC>
v I\D5(}g1!5)"6'M`M
v oOMw{E",C4v(N1|DN}5

yPw{|n(|( ioo"nfso"no"vmo"raso M schedo)<9C`,Do(#PXy'VDw{N}


D|`j8E"Mj{Pm,kND?v|nD*zoz3#

AIX 5.2 f]T==


Z+53SH0f>D AIX (F= AIX 5.2 1,|aT/hCITf]T==KP,bb6Ew{|nD1
0P*+j+#t(H0yvD vmtune N}}b) #

Z(F= AIX 5.3 1,f]T==;&C= no M nfso |n,r* vmtune M schedtune |n;YfZ#


I9Cf]T==4(F=BDw{r\,+G(i;*CZ AIX 5.2 .sD AIX "Pf#

}#D AIX 5.2 w{==P,IwN}D@ChCIC /etc/tunables/nextboot D~PD54h(;kK`


4,Zf]T==BT;ITTIwN}w@C|D,;kZ}<}LP+w{|nwC6kE>P4I#(
;IPu=D;,G /etc/tunables/lastboot M /etc/tunables/lastboot.log D~ZXB}<}LP4(#
lastboot.log D~P|,/fE",8w AIX 10}Tf]T==KP,"RP4&C nextboot D~#

}K Bosboot `MDN}(kNDZ 378 3D:vmtune M schedtune Dfz|n;)b,w{|nDBXB


}<M@C!n(VpG-r M -p j>)<;Pbe,r*D~DZ]ZXB}<1;aC=&C#w{|n
;\qZGf]T==BGyXFN}DXB}<5#Bosboot `MDN}Z(F}LPC=#t,"Rf"Z
/etc/tunables/nextboot D~P,IT9C -r !nxP^D,x^[GqZf]T==BKP#;*>}
/etc/tunables/nextboot D~#

f]T==I;vF* pre520tune DBtT sys0 XF,CtTZ(F20}LPT/hCI enable#Z


AIX 5.2 DnB20ivB,CtT;hCI disable#Z{C==B,ZXB}<}LPwCDE>PTw
{|nD6k=wCI nextboot D~DZ]2G#tT pre520tune D10hCI(}KPBPD|ni4:
# lsattr -E -l sys0

"I9CTB|n4|D:
# chdev -l sys0 -a pre520tune=disable

r_9C SMIT r yZ Web D53\mw#


IwN} 381
1f]T=={C1,g;9C -r j>r;\|DTB no |nN}(<G Reboot `M,b6E;\ZX
B}<Zd|D):
v arptab_bsiz
v arptab_nb
v extendednetstats
v ifsize
v inet_stack_size
v ipqmaxlen
v nstrpush
v pseintrstack

Z#fK10DXB}<hCsI*;=Gf]T==,*v=bcITWH|D pre520tune tT,;sK


PTB|n:
# tunrestore -r -f lastboot

bya+D~ lastboot DZ]4F= nextboot D~P#PXBD AIX 5.2 w{==Dj8E",kNDAIX


5L Version 5.3 Performance Tools Guide and ReferencePD:ZKw{;;Z#

AIX 5.2 53V4}L


g{zwZXB}<s;H("R pre520tune tThC* enable,rkZXB}<ZdSwCDE>P>}
Tw{|nDmswC#

*KlbZXB}<}LPhCDN},ki4 /etc/tunables/lastboot D~"Qw;x # DEFAULT VALUE


jGDN}#XZIwD~Z]D|`E",kNDAIX 5L Version 5.3 Files ReferencePD:IwD~q=;
;Z#

Kb9Pm;Viv,*K+yPIwN}4;I1!5,II!TB=h:
1. >} /etc/tunables/nextboot D~#
2. + pre520tune tThCI disable#
3. KP bosboot |n#
4. XB}<zw#

wHLrMZf0kXFIwN}
P`vN}kwHLrMZf0kXFPX#

s?VwHLrMZf0kXFIwN}Z schedo Va3PPj8hv#TBG8vd{D`XN}:


1. maxuproc

C>: 8(?vC'j6DnsxL}?#
5: 1!5:40;6':1 = 131072
T>: lsattr -E -l sys0 -a maxuproc
|D: chdev -l sys0 -a maxuproc=NewValue |D"4P',"R}<.s@C#f#g{5u!K,G
4|;PZ53}<sEP'#
oO: C';ITIzNN=SxL#
w{: bG*K@9C'4(}`xLD2+k)#

382 T\\m8O
2. ncargs

C>: 8(KP exec() S}L1,ARG/ENU Pm(T 4 KB i*%;)JmDnss!#


5: 1!5:6;6':6 = 1024
T>: lsattr -E -l sys0 -a ncargs
|D: chdev -l sys0 -a ncargs=NewValue |D"4P',"R}<.s@C#f#
oO: C';IT4PNN=SDxL,r*+]x exec() 53wCDd*m+$#M1!5I\lI3)
Lr'\,"vV arg list too long ms{",ZKivB,IT"T9COv chdev |nvS
ncargs 5,;sXBKPCLr#
w{: bG*K@9d*m}$}p exec() S}L'\D;VzF#k"b,w{=;vO_ ncargs 5a
T53ZfJ4S;)nbD^F#

ibZf\mwIwN}
+?ibZf\mwIwN}DPm;Z vmo Va3#

,= I/O IwN}
P`vICZ,= I/O DIwN}#

Z ioo Va3Pj+hvKs?V,= I/O IwN}#TBG8vd{D`XN}:


1. maxbuf

C>: Z block-I/O _Y:fPD(4 KB)3}#


5: 1!5:20;6':20 = 1000
T>: lsattr -E -l sys0 -a maxbuf
|D: chdev -l sys0 -a maxbuf=NewValue |D"4P',xRG@CTD#g{9CKj> -T,|Da
"4P',xRVx=BN}<#g{9CKj> -P,|DFY=BN}<,+bv|DG@CD#
oO: g{ sar —b |nT> breads r bwrites D %rcache M %wcache OM,rI\h*w{KN}#
w{: bvN};cT53DT\0l\!,dPU( I/O ;9C block-I/O _Y:f#
kND:w{l=EL I/O

2. maxpout

C>: TD~8(4v I/O Dns}?#


5: 1!5:0(;li);6':0 = n(n &CG 4 D6}S 1)
T>: lsattr -E -l sys0 -a maxpout
|D: chdev -l sys0 -a maxpout=NewValue |D"4P',xRG@CTD#g{9CKj> -T,|D
a"4P',xRVx=BN}<#g{9CKj> -P,|DFY=BN}<,+bv|DG@CD#
oO: g{0(l&1dP1ZKP_Ps?,xELdvDLr1q/,rh*T,xdvw=#
w{: hC maxpout * 33 T0 minpout * 16#g{,xDT\QTS\Xq/,vSOv;vr=v
N}D5#g{0(T\T;;IS\,r=v<u!#

3. minpout

C>: 8(;vyc,ZCyc&,Qo= maxpout DLrITLx4kD~#


5: 1!5:0(;li);6':0 = n(n &CG 4 D6},RsZrHZ 4 !Z maxpout)

IwN} 383
T>: lsattr -E -l sys0 -a minpout
|D: chdev -l sys0 -a minpout=NewValue |D"4P',xRG@CTD#g{9CKj> -T,|Da
"4P',xRVx=BN}<#g{9CKj> -P,|DFY=BN}<,+bv|DG@CD#
oO: g{0(l&1dP1ZKP_Ps?,xELdvDLr1q/,rh*T,xdvw=#
w{: hC maxpout * 33 T0 minpout * 16#g{,xDT\QTS\Xq/,vSOv;vr=v
N}D5#g{0(T\T;;IS\,r=v<u!#

4. mount -o nointegrity

C>: ;vBD mount !n(nointegrity)ITv?3)4\/&CLrD>XD~53T\#bVE/y>


O\bK4k JFS U>#k"b,v?DT\GT*}]j{T*z[xqCD#rx,9Cbv!n
*.Vww,r*53@#I\9fbv!n20DD~53;IV4#!\gK,3)&CLrD
`Z53@#s;h*D~}]4#V;BT,b)I\CfZ9CK nointegrity !n#;j+D~5
3I\P{D=v>}GCZ`kwY1D~MC44PG(Fr mksysb 20#

5. w3Uds!

C>: #f$wf"w3fh*DELUds!#
5: 1!5:configuration-dependent;6':TZ hd6 G 32 MB = n MB,TZG hd6 G 16 MB = n
MB
T>: lsps -a mkps r chps r smitty pgsp
|D: |D"4P',xRG@CP'D#+w3Ud;;("46k9C#
oO: KP:lsps -a#g{xLr*1Yw3Udx1@,M*CS}L psdanger() `S4,#
w{: g{4p4;Pc;w3Ud4&m}#D$w?,Zm;vommOmS;vBDw3UdrSs
QfZDw3Ud#

6. syncd 1ddt

C>: sync() ; syncd wCDdt1d#


5: 1!5:60;6':1 =NN}{}
T>: grep syncd /sbin/rc.boot vi /sbin/rc.boot r
|D: |DZBN}<sP',xRG@CP'#m;V=(G9C kill |nU9 syncd X$Lr,"9C
/usr/sbin/syncd interval |nS|nP+dXBt/#
oO: 1 syncd }ZKP1,D~D I/O ;h{K#
w{: Z1!6pO,bvN}8u;0lT\#;FvTbvN}xP|D#*K#V}]j{T(TZ
HACMP™)xsy5M syncd 1ddt,I\ax4;{DT\s{#

l= I/O IwN}
P`vICZl= I/O DIwN}#
1. maxreqs

C>: 8(l= I/O Dnsks},b)ksI\ZNN1r<G4jID#


5: 1!5:4096;6':1 = AIO_MAX(/usr/include/sys/limits.h)
T>: lsattr -E -l aio0 -a maxreqs
|D: chdev -l aio0 -a maxreqs=NewValue |DZXB}<sz'"R@CP'#
oO: N/A

384 T\\m8O
w{: b|(xPPDks,9PH}*<Dks#l= I/O Dnsks};\!Z AIO_MAX D5(C5
ZD~ /usr/include/sys/limits.h P(e),+ITsZ|#TZ5Ps?l= I/O D5345,9
l= I/O Dnsks}sZ AIO_MAX GJ1D#
N<: Z 206 3D:l=EL I/O T\w{;

2. maxservers

C>: 8(?v&mwD AIO kproc ns}?#


5: 1!5:10(?v&mw)
T>: lsattr -E -l aio0 -a maxservers
|D: chdev -l aio0 -a maxservers=NewValue |DZXB}<sz'"R@CP'#
oO: N/A
w{: bv5^FK,1avDl= I/O hsDns}#bv5&CkZ{D,1"zD AIO hs}y>;
B#bvIwN}v0l JFS D~53(rG AIX 4.3.2 .0Dib2mEL(VSD))OD AIO#
N<: Z 206 3D:l=EL I/O T\w{;

3. minservers

C>: 1 AIO ZK)9;0k1,h(*4(D AIO kproc D5#


5: 1!5:1
T>: lsattr -E -l aio0 -a maxservers
|D: chdev -l aio0 -a minservers=NewValue |DZXB}<sz'"R@CP'#
oO: N/A
w{: (i;*+bvh*;vOs},r*?vxL*<C;)Zf#9K}#VO!Zs`}ivBG
IS\D,r* AIO ay]h*4(=SD kproc,1=o= maxservers#bVw{vT JFS D~
53(r AIX 4.3.2 .0D VSD)OD AIO P'#
N<: Z 206 3D:l=EL I/O T\w{;

ELMELJdwIwN}
AIX PP`vELMELJdwZKIwN}#
1. ELJdw4jIksD^F

C>: SCSI \_OI\4jIDksDns}#


(vCZ SCSI-2 lY/mxJdw#
)
5: 1!5:40;6':40 = 128
T>: lsattr -E -l scsin -a num_cmd_elems
|D: chdev -l scsin -a num_cmd_elems=NewValue |D"4P',xRG@CTD#g{9CKj> -T,
|Da"4P',xRVx=BN}<#g{9CKj> -P,|DFY=BN}<,+bv|DG@C
D#
oO: 4Ps?4k=uN4S$_-mD&CLr;aqCh*DLBJ#
w{: 5&CHZ SCSI \_ODom}/w(|(ELsPoD}/w)}KT%@}/wDSPnH#

2. EL}/wSPnH

C>: ITZELh8SPP#fDnsks}#
5: 1!5:IBM EL} = 3;G IBM EL} = 0;6':IFlL8(
T>: lsattr -E -l hdiskn

IwN} 385
|D: chdev -l hdiskn -a q_type=simple -a queue_depth=NewValue |D"4P',xRG@CTD#
g{9CKj> -T,|Da"4P',xRVx=BN}<#g{9CKj> -P,|DFY=BN}
<,+bv|DG@CD#
oO: N/A
w{: g{G IBM DEL}/w\;ESks,GM4PK|D47#Yw53{CK&\#
kND:hC SCSI JdwMELh8SP^F

xLd(EIwN}
AIX P\`xLd(EIwN}#
1. msgmax

C>: 8(ns{"s!#
5: ns5* 4MB u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

2. msgmnb

C>: 8(SPPDnsVZ}
5: ns5* 4MB u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

3. msgmni

C>: 8({"SPj6Dns}
5: ns5* 131072 u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

4. msgmnm

C>: 8(?vSPPDns{"}
5: ns5* 524288 u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

386 T\\m8O
5. semaem

C>: 8(Kv1w{Dns5
5: ns5* 16384 u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

6. semmni

C>: 8(EEj6Dns}
5: ns5* 131072 u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

7. semmsl

C>: 8(?vj6DEEDns}
5: ns5* 65535 u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

8. semopm

C>: 8(?v semop() wCPDnsYw}#


5: ns5* 1024 u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

9. semume

C>: 8(?vxLP7zu?Dns}#
5: ns5* 1024 u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

IwN} 387
10. semvmx

C>: 8(EEDns5#
5: ns5* 32767 u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

11. shmmax

C>: 8(2mZfNs!Dns5#
5: ns5* 256 MB(32 ;xL)M 0x80000000u(64 ;xL)u~B/,d/#
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

12. shmmin

C>: 8(2mZfNs!Dn!5#
5: n!5* 1 u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

13. shmmni

C>: 8(2mZfj6Dns}
5: ns5* 131072 u~B/,d/
T>: ;JC
|D: ;JC
oO: ;JC
w{: ;h*w{,r*|y]ZK*s/,w{#

xgIwN}
P=ixgIwN}:xg!nM NFS !n#

xg!nIwN}
AIX PP`vkxg!nIwN}`XDN}#

6AIX 5L V5.3 |nN<s+,m 47PD no *zoz3Ts`}xg!nIwN}xPK+fhv#PX


SP 73Ph*Xp"bDxgIwN}DE",kND RS/6000 SP System Performance Tuning#TBG8v
d{D`XN}:

388 T\\m8O
1. maxmbuf

C>: T MBUFS JmD5ZfDns'VZ}#


5: 1!5:0,6':x = y
T>: lsattr -E -l sys0 -a maxmbuf
|D: chdev -l sys0 -a maxmbuf=NewValue

|D"4P',xRG@CP'D#g{9CKj> -T,|Da"4P',xRVx=BN}<#
g{9CKj> -P,|DFY=BN}<,+bv|DG@CD#
oO: N/A
w{: g{ maxmbuf sZ 0,maxmbuf 5+;9C,^[ thewall D5*`Y#mbufs DO^G maxmbuf
M thewall PDOs5#
N<: Z 243 3D:(} netstat -m |n`S mbuf X;

2. MTU

C>: ^FxgO+dD|Ds!.
5: 1!5:configuration-dependent
T>: lsattr -E -l interface_name
|D: chdev -l interface_name -a mtu=NewValue

TZ chdev |n,SZZ9C1;I|D#XB}<s|DEz'#m;V=(gB:ifconfig
interface_name mtu NewValue b+|DKP53OD MTU s!,+Z53XB}<s;a#
tC5#
oO: E"|i,3FE"#
w{: vSxgSZD MTU Ds!#TZ'WT+xJdw,I9Ch8tT jumbo_frames=yes T
tC^M!(;ZSZO+ MTU h* 9000 G;;D)
#
N<: Z 213 3D:TCP M UDP T\w{;

3. rfc1323

C>: tC TCP E/,h( RFC * 1323(TCP )9=_T\)#5* 1 m> tcp_sendspace and


tcp_recvspace IT,} 64 KB#
5: 1!5:0;6':0 = 1
T>: lsattr -El interface r ifconfig interface
|D: ifconfig interface rfc1323 NewValue r chdev -l interface -a rfc1323=NewValue

ifconfig |nY1hC5,bTZbTG#PC#|n chdev |D ODM,953t/s(F5


5X#
oO: N/A
w{: 1!5* 0 m>Z53[[JO{C RFC E/#5* 1 m>yP TCP ,S*-Lbv RFC
E/#9CS}L setsockopt(),SOCKETS &CLrIT2G%v TCP 4SD1!P*#b
G;vKP1dtT#h*hC tcp_sendspace M tcp_recvspace =sZ 64 KB .0|D|#
N<: Z 223 3D:TCP $w:Xw{;

4. tcp_mssdflt

C>: CZ6Lxg(ED1!DNns5#
5: 1!5:512 VZ

IwN} 389
T>: lsattr -El interface r ifconfig interface
|D: ifconfig interface tcp_mssdflt NewValue r chdev -l interface -a tcp_mssdflt=NewValue

ifconfig |nY1hC5,bTZbTG#PC#|n chdev |D ODM,953t/s(F5


5X#
oO: N/A
w{: TZ AIX 4.2 r||Df>,tcp_mssdflt vCZ76 MTU Qw;{Cr;\"V76 MTU D
iv#^F}]*(MTU - 52)VZIT#$ZI\DivBv+MzD|#bG;vKP1d
tT#
N<: Z 238 3D:TCP nsNs!w{;

5. tcp_nodelay

C>: h(:1"M}]19CbvSZ TCP DWSVq- Nagle c(#1!ivB,TCP q- Nagle


c(#
5: 1!5:0;6':0 r 1
T>: lsattr -El interface r ifconfig interface
|D: ifconfig interface tcp_nodelay NewValue r chdev -l interface -a tcp_nodelay=NewValue

ifconfig |nY1hC5,bTZbTG#PC#|n chdev |D ODM,953t/s(F


55X#
oO: N/A
w{: bG!n Interface-Specific Network Option(ISNO)
#
N<: Z 220 3D:X(ZSZDxg!n;

6. tcp_recvspace

C>: SU}]1h(531!WSV:exs!#b0l TCP 9CD0Zs!#


5: 1!5:16384 VZ
T>: lsattr -El interface r ifconfig interface
|D: ifconfig interface tcp_recvspace NewValue r chdev -l interface -a tcp_recvspace=NewValue

ifconfig |nY1hC5,bTZbTG#PC#|n chdev |D ODM,953t/s(F5


5X#
oO: N/A
w{: +WSV:exs!hC* 16 KB (16 384) +DFZj<T+xMnF7xgODT\#1!
5* 16 384#Mxmxgg Serial Line Internet Protocol(SLIP)r_xmxgg Serial Optical
Link &CaP;,DnQ:exs!#bvnQ:exs!GIiJxmM|=y4X1d7(#

tcp_recvspace tT8(DWSV:exs!Xk!ZHZ sb_max tTDhC#bGv/,t


T,+GTZI inetd X$Lrt/DX$Lr,kKPBfD|n:
v stopsrc-s inetd
v startsrc -s inetd
N<: Z 223 3D:TCP $w:Xw{;

7. tcp_sendspace

C>: "M}]1h(531!WSV:exs!#

390 T\\m8O
5: 1!5:16384 VZ
T>: lsattr -El interface r ifconfig interface
|D: ifconfig interface tcp_sendspace NewValue r chdev -l interface -a tcp_sendspace=NewValue

ifconfig |nY1hC5,bTZbTG#PC#|n chdev |D ODM,953t/s(F


55X#
oO: N/A
w{: b0l TCP 9CD0Zs!#+WSV:exs!hC* 16 KB (16 384) +DFZj<T+
xMnF7xgODT\#1!5* 16 384#Mxmxgg Serial Line Internet Protocol(SLIP)
r_xmxgg Serial Optical Link &CaP;,DnQ:exs!#nQ:exs!GiJx
mME"|=yy51dDK}:optimum_window=bandwidth * average_round_trip_time

tcp_snedspace tT8(DWSV:exs!Xk!ZHZ sb_max tTDhC#


tcp_sendspace N}*/,tT,+GTZI inetd X$Lrt/DX$Lr,kKPBfD
|n:
v stopsrc-s inetd
v startsrc -s inetd
N<: Z 223 3D:TCP $w:Xw{;

8. use_sndbufpool

C>: 8("M:eXGq&CCZWSV#
5: 1!5:1
T>: netstat -m
|D: IT(}+5hC* 1 4tCC!n,r_hC* 0 4{CC!n#
oO: N/A
w{: |G0k1d,<{!n#

9. xmt_que_size

C>: h(ZSZ&ESHrD"M:exDn`}#
5: 1!5:configuration-dependent
T>: lsattr -E -l interface_name
|D: ifconfig interface_name detach chdev -l interface_name -aque_size_name=NewValue ifconfig
interface_name hostname up#

SZZ9C1;\|D#XB}<s|DEz'#
oO: netstat -i(Oerr > 0)
w{: vSs!#
N<: Z 248 3D:netstat |n;

NFS !nIwN}
AIX PP`vk NFS !nIwN}`XDN}#

s` NFS !nIwN}ZVa3 nfso Pj8i\#TBG8vd{D`XN}:

IwN} 391
1. biod F}

C>: &mM'zyh NFS Dn>xL}#


5: 1!5:6;6':1 =NN}{}#
T>: ps -efa | grep biod
|D: chnfs -b NewValue |D(#"4P',"RG@CTD#j> -N a"4}p;v]1Dd/#
j> -I a}p;vd/,+1=BNt/sEP'#
oO: netstat -s IiR UDP WSV:exgv#
w{: vS}5,1=WSV:exgv#9#
N<: Z 295 3D:XhD biod _L};

2. combehind

C>: 1Z NFS Version 3 mounts O4sD~1tC NFS M'zOD commit-behind P*#


5: 1!5:0;6':0 = 1
T>: nfsstat -m
|D: mount -o combehind
oO: 1Z NFS Version 3 mounts O4sD~(w*GsZ NFS M'z53Zf?DsD~)1a
9LB?B5#
w{: g{ NFS w*CZ4XsD~= NFS ~qw1,IT9Cbv mount !n#"b,bv!n
D``D&\G NFS D~}]D VMM _Y:fZM'zO;P'X{CK#rxbv!n;
JOCZT NFS A!&\*sO_X73P#

3. nfsd F}

C>: h(3) NFS ~qw_LDns},b)_LG*~qZ}kD NFS hsx4(D#


5: 1!5:3891;6':1 = 3891
T>: ps -efa | grep nfsd
|D: chnfs -n NewValue |D"4P',"RG@CTD#j> -N a"4}p;v]1Dd/#j
> -I a}p;vd/,+1=BNt/sEP'#
oO: ND nfs_max_threads
w{: ND nfs_max_threads
N<: Z 295 3D:XhD biod _L};

4. numclust

C>: CZ,S!n combehind TDFy NFS Version 3 mounts P4ksD~1D4LB?T\#


5: 1!5:128;6':8 = 1024
T>: ps -efa | grep nfsd
|D: chnfs -n NewValue |D"4P',"RG@CTD#j> -N a"4}p;v]1Dd/#j
> -I a}p;vd/,+1=BNt/sEP'#
oO: 1Z NFS Version 3 mounts O4sD~(w*GsZ NFS M'z53Zf?DsD~)1a
9LB?B5#

392 T\\m8O
w{: g{ NFS w*CZ4XsD~= NFS ~qw1,IT9Cbv mount !n#bv5y>Oz
mK VMM zI;vS NFS M'za;D!nxh*Dn!3}#+MD5aIZ}?Da;
}(?Na;*<B,=4k~qw)x<BO!DLB?#+_D52a<BO!DLB?,
r* NFS M'zZf;\`^}3ndz,b)3a}p LRU X$Lr;wCx*<XU3
f#1KP lrud 1,V3 writes y>OdI,=D,r*?v write ax1ifE;Na;#1
9C!n numclust M combehind 1bV4,IT\b#

wIwtT
w==(IwN}tTDj{e%;Z no Va3#

IwN} 393
394 T\\m8O
bTC}!0
?v5}hvK53D`MMv=DJb#SEbMgNbT(EDT\JbMgNbvb)lb=DJb#
g{zZzT:D73PP,yD=8,9Cb)E"aTzPoz#

T\w{\sLHO@?53M&CLr,+G,P\`;cDw{=(IT9CZ8uyP AIX 53P#

a_ NFS M'zsD~4YwT\
Z NFS `MDD~53P4,xDsD~ax NFS ~qwDD~+MYJlIOXDB5#Zb;ZP,z
&C7(GqbvJbfZ,"CTB=hbv|#

"bBn

ZKkEiPDCE"Q9C AIX 5.2 bT#g{z}Z9C;,f>r6pD AIX,zq!Da{MI\"zTxD


Dd#

Yh53}KP;v&CLr4,x4\sDD~(sZzwDomZf?)= NFS `MDD~53P#bv


D~539C NFS V3#NFS ~qwMM'z(};v 100Mb/s DT+x4(E#1,x4k;v!D~,
=yLB?* 10Mb/s#+G14k;v\sDD~1,=yLB?B5=MZ 1Mb/s#

&CLr4ksD~<]KM'zDyPZf,<Bdk NFS ~qwD+dYJ5M#"zbVivGr*M


'z AIX 53XkwC LRUD kproc TMEZfPD3)3f,Tc]I*I&CLr4kDB;v3f/#

9CBP=(DN;VITlbzGqv=bvJb:
v 1;vD~;4k NFS ~qw1,\ZT(? 10 k)KP|n nfsstat,dkBP|n:
nfsstat

li|n nfsstat Ddv#g{ V3 a;wCD}5`T V3 4wCD}5_Tv$,bvJbI\vV


K#
v 9C topas |n(;Z bos.perf.tools D~/P)`S?k"M= NFS ~qwOD}]?,=(Gdk
TB|n:
topas -i 1

g{PvDN;=(mwfZJb,rbv=8*:ZM'z53O20 NFS ~qwD~5319CF*


combehind DB mount |n!n#wgBYw:
1. 1D~53;P$n1,dkTB|n:
unmount /mnt

(Yh /mnt 1>X mount c)


2. 9CF* comebehind D mount |n!nXB206LD~53,gBy>:
mount -o combehind server_hostname:/remote_mount_point /mnt

|`E"
v 6T\\m7PDZ 279 3D:NFS T\;#
v 6AIX 5L V5.3 |nN<s+,m 57PD mount"nfsstat M topas |n#

© Copyright IBM Corp. 1997, 2006 395


DF Tivoli Storage Manager 8]T\
Zbv=8P,z+7("|}9C Tivoli® Storage Manager(TSM)18]1davSbv53T\Jb#

"bBn

ZKkEiPDCE"Q9C AIX 5.2 bT#g{z}Z9C;,f>r6pD AIX,zq!Da{MI\"zTxD


Dd#

=8D73|(=v53:;vw*}]b~qwD TSM M'zM;v TSM 8]~qw#bvM'z9C


cTcDYJ* 1Gb/s DT+x,S= TSM 8]~qw#backint &CLrG;v`_LCZ SAP }]b
73D TSM 8]Lr,9C TSM 8] API KPZM'zO#

1Z AIX 4.3.3 y!O}6 TSM ~qwMM'z= Maintenance Level 04 to Maintenance M Level 09 T0


S TSM V3 = TSM Version 4 }61,ZM'zO9C&CLr backint 8]}]bD1dS 7 !1vS
= 15 !1#

*K7(T\5MlIDs{MDF TSM 8]T\,4PTBYw:


1. S TSM M'zO9C|n ftp M dd 4bTxgLB?T\#S TSM M'z9C ftp M dd |nb
TxgLB?T\#4PZf=ZfD*F4E}M'zM~qwODELYw,YwgB:
# ftp <hostname_of_TSM_server>
ftp> bin
ftp> put "| dd if=/dev/zero bs=32k count=10000" /dev/null

Zbv=8P,|n ftp M dd DdvT>KYJ* 81MB/s DxgLB?,bmwxgTm;GJb#


(g{xgvVKJO,netstat $_aI!B;=_-=h# )4PZf=ZfD*F4E}M'zM~q
wODELYw,YwgB:
# ftp <hostname_of_TSM_server>
ftp> bin
ftp> put "| dd if=/dev/zero bs=32k count=10000" /dev/null

Zbv=8P,|n ftp M dd DdvT>KYJ* 81MB/s DxgLB?,bmwxgTm;GJb#


(g{xgvVKJO,netstat $_aI!B;=_-=h# )
2. 9C|n backint bTM'z8]Lr\&,gBy>:
a. li;bv&CLr9CDyPN}TcKb|$wCgNT0k AIX D`%0l#ZK!0P,RG
4= backint &CLr9C3r read() wCSM'zELOA!}],?NwCA! 128 KB#
b. 1 backint &CLr}ZKP1,9C ps -eflm |nI7(&CLrG%_L9G`_L#ps |n
DdvxvK?vxLP_LD;vdv_#&CLr backint ;4w`_L,_L}GIwD#?v
SD~AvD_L<8]K,yP}];"y TSM ~qw";4kEx#
3. w{ AIX 4J&&CLr}ZKPDZ],gB:
a. 1"pwCD&CLr4P3r read() wC1,9C ioo |nI|D%N I/O P AIX SELA!D
5J}]?#

ZK!0P,N} ioo * maxpgahead,r*D~f"ZU>D~53(JFS)P,x;GZv?U>D


~53(JFS2)P#bvN}D 8,b6E9C%; I/O Ywn`ITA 8 v 4 KB D}]i=Zf#
r* backint &CLr*s?N read() wCA! 128 KB,rKk9CTB|nf_ AIX:Z4P3
r read() Yw1%N I/O &A! 128 KB:
ioo -o maxpgahead=32
b. 9C|n iostat 1 M vmstat 1 4`SM'z#1;v8]Z&m1,dkTB|n:

396 T\\m8O
iostat 1
vmstat 1

>}P,AIX PIC3fDPm(vmstat |ndvPD freelist = fre P)P1aS|Zc#g{UP


mdC+!,AIX ;a}#KP#
c. 9C vmo -o minfree -o maxfree |n4vS AIX +"T,$DUPPmDn!Mnss!5#7(
minfree M maxfree 5D+=*:minfree = 120 KT&mw}(>}P* 12,4 [120*12])

M maxfree = 120 + maxpgahead (32) KT&mw}r [(120 + 32)*12]#

4PBP|n4wZ AIX:
vmo -o minfree=1440 -o maxfree=1824
d. YN9C iostat 1 M vmstat 1 |n4`Sm;v8]a0#Zbv=8P,UPmZNN1r<G
}#D,xRLB?2ssDF,by8]vh* 8 !1#
4. 9C iostat 1 M vmstat 1 |n4P=Sw{&CLr4`Sm;v8]a0#

":ZOfD=h 3d P,iostat }]T>KTIITqCnbD&mw\ZMELxm,rK^DK backint


&CLrN}TZ8]}LPvS;vnbD""_L#

\D8]1dVZu!=MZ 7 !1#

|`E"

6AIX 5L V5.3 |nN<s+,m 37PD iostat M ioo |nhv;6AIX 5L V5.3 |nN<s+,m 47


PD netstat M ps |nhv;6AIX 5L V5.3 |nN<s+,m 67PD vmstatM vmo |nhv#

9C\kw}r/2+TS}L
Zbv=8P,z*i$zPO_2+TDS}LxL,;s(}9C\kw}4u!CZ2+TS}LD&
mw1d?#

"bBn

ZKkEiPDCE"Q9C AIX 5.2 bT#g{z}Z9C;,f>r6pD AIX,zq!Da{MI\"zTxD


Dd#

bv=8D73|,;vw*J~~qwD+(@53#J~Z6K(} POP3(Post Office Protocol Version


3)MM1S"aZ~qwOD>XJ~M'z;SU#J~(}9C sendmail X$Lr;"Mv%#r*J
~~qwDXT,_2+TS}L;wC=C'O$P#S%;&mwDzwOaF=+(@53Ps,
uptime |n5X 200 vxL,xZ%;&mwzwO;P;= 1 v#

*K7(T\5MlIDs{Mu!CZ2+TS}LD&mw1d,4PTBYw:
1. 7(D)xL<CKOsH}D&mw1dT0s?V&mw1dGq;C=KZKMC'#=,bvY
wD|n(;ZD~P bos.perf.tools Z)gB:
topas -i 1

RGD=8P,topas |nDdvm>s?V&mw1d(sE 90%)CZC'#=T0<Cs?V&m


w1dDxLG sendmail M pop3d#
(9C&mwn51DGZK,ZKzYGLxKPD;vJ1D$
_#)

bTC}!0 397
2. 7(C'#=&mw1dGqCZ&CLrzk(C')M2mb(2m),4PgB|n4I/ 60 k
ZD}]:
tprof -ske -x "sleep 60"

tprof |nPvK2mbwvDS}L{F,"y]?vS}L9CD&mw}xPKEr#>}P,tprof
}]T>:C'==BDs?V&mw1d<(Z libc.a 53bO,CZ4P2+TS}L(T0|Gy
wCDG)S}L) (g{|n tprof m>C'#=&mw1ds?VCZ&CLrzk(C'),by&
#
CLrwTME*VvadC.VX*# )
3. *K\bD~ /etc/passwd C?v2+TS}L(h,*|4(;vw},4PgB|n:
mkpasswd -f

9CxBjD\kD~,C=8D=y:X+S 200 5= 0.6#

|`E"
v 6AIX 5L V5.3 |nN<s+,m 57PD topas"tprof M uptime |nhv#
v 6AIX 5L V5.3 |nN<s+,m 47PD pop3d M sendmail X$Lrhv#

398 T\\m8O
yw
>E"G*Z@za)Dz7M~q`4D#

IBM I\Zd{zRrXx;a)>D5PV[Dz7"~qr&\XT#PXz10yZxrDz7M~q
DE",krz1XD IBM zmI/#NNT IBM z7"Lrr~qD}C"GbZw>r5>;\9C
IBM Dz7"Lrr~q#;*;V8 IBM D*6z(,NN,H&\Dz7"Lrr~q,<ITzf IBM
z7"Lrr~q#+G,@@Mi$NNG IBM z7"Lrr~q,rIC'TP:p#

IBM +>I\Q5Pr}Zjkk>D5Z]PXDwn({#a)>D5"4ZhC'9Cb)({DNN
mI#zITCif==+mIi/Dy:

IBM Director of Licensing


IBM Corporation
North Castle Drive
Armonk, NY 10504-1785
U.S.A.

>un;JC"zrNNbyDunk1X(I;;BDzRrXx:International Business Machines Corporation


04V41a)>vfo,;=PNNV`D(^[Gw>D9G5,D)#$,|(+;^Z5,DPXG
V("JzMJCZ3VX(C>D#$#3)zRrXxZ3);WP;Jmb}w>r5,D#$#rK
>unI\;JCZz#

>E"PI\|,<u=f;;<7DX=r!"ms#K&DE"+(Z|D;b)|D+`k>JODB
f>P#IBM ITf1T>vfoPhvDz7M/rLrxPDxM/r|D,x;mP(*#

>LrD;mI=g{*KbPXLrDE"To=gB?D:(i)JmZ@"4(DLrMd{Lr(|(>
Lr).dxPE";;,T0(ii)JmTQ-;;DE"xP`%9C,kkBPX7*5:

IBM Corporation
Dept. LRAS/Bldg. 003
11400 Burnet Road
Austin, TX 78758-3498
U.S.A.

;*qXJ1Du~Mun,|(3)iNBD;(}?D6Q,<IqCb=fDE"#

>JOPhvDmILr0dyPICDmIJOyI IBM @] IBM M'-i"IBM zJm~mI-ir


NN,H-iPDuna)#

PX+VZ(DBCS)E"DmIi/,kkzyZzRrXxD IBM *6z(?E*5,rCif==+i


/Dy:

IBM World Trade Asia Corporation


Licensing
2-31 Roppongi 3-chome, Minato-ku
Tokyo 106, Japan

IBM IT4|O*J1DNN==9CrV"zya)DNNE"x^hTzP#NNpN#

© Copyright IBM Corp. 1997, 2006 399


f0G IBM z7DE"ISb)z7D)&L"dvf5wrd{I+*qCDJOPq!#IBM ;PTb
)z7xPbT,2^(7OdT\D+7T"f]TrNNd{XZG IBM z7Dyw#PXG IBM z7
T\DJb&1rb)z7D)&Lav#

>E"PTG IBM Web >cDNN}C<;G*K=cp{Ea)D,;TNN==d1TG) Web >c


D#$#G) Web >cPDJO;G IBM z7JOD;?V,9CG) Web >cx4DgU+IzTPP
##

>E"|,U#L5KwyC=D}]M(m>}#*K!I\j{X]>|G,>}P|(KvK"+>"
7FMz7D{F#yPb){F<Gi9D,g{M5JDLqs5yCD{FMX7W,,r?tdO#

f(mI:

>E"|(4oTN=Dy>&CLr,b)y>5w;,Yw=(OD`L=(#g{G*4UZ`4y>
LrDYw=(OD&CLr`LSZ(API)xP&CLrD*""9C"-zrV"*?D,zITNN
N=Tb)y>LrxP4F"^D"V",x^hr IBM 6Q#b)>}"4ZyPu~Bw+fbT#r
K,IBM ;\##r5>b)LrDI?T"I,$Tr&\#C'g{G*K4U IBM &CLr`LSZ
*""9C"-zrV"&CLr,rITNNN=4F"^DMV"b)y>Lr,x^hr IBM 6Q#

b)y>LrD?v1>rNN?V,rNNIzD$w,Xk}kgByw:
(c)(zD+>{F)(j]) #K?VzkGy] IBM +>Dy>Lr\zv4D#(c) Copyright IBM Corp.
(dkj])#All rights reserved.

K&|,DNNT\}]<GZ\X73PbCD#rK,Zd{Yw73PqCD}]I\aPwTD;
,#P)b?I\GZ*"6D53OxPD,rK;#$k;cIC53OxPDb?a{`,#Kb,P
)b?G(}Fcx@FD#5Ja{I\aPnl#>D5DC'&1i$dX(73DJC}]#

Lj
TBuoG International Business Machines Corporation Z@zM/rd{zRrXxDLj:
v AIX
v AIX 5L
v C Set++
v DB2
v HACMP/6000
v IBM
v eServer
v pSeries
v Micro Channel
v OS/2
v PowerPC
v PowerPC Architecture
v POWER2 Architecture
v POWER-based
v RS/6000
v SAA

400 T\\m8O
v SP
v SP2

Java MyPyZ Java DLjMUjG Sun Microsystems,Inc. Z@zM/rd{zRrXxD"aLj#

Linux G Linus Torvalds Z@zM/rd{zRrXxDLj#

UNIX G The Open Group Z@zM/rd{zRrXxD"aLj#

Microsoft"Windows"Windows NT M Windows UjG Microsoft Corporation Z@zM/rd{zRrXx


DLj#

d{+>"z7r~q{FI\Gd{+>DLjr~qjG#

yw 401
402 T\\m8O
w}
Lr (x)
[B]
P' (x)
s( _Y:fM TLB 73
&mw 50 DfwMw._ 73
(f hFM5V 72
filemon 160 E/6p 75
(fT\Jb 343 P CPU ^FD 72
>XoT'V(NLS) $&mwM`kw 74
oT73TYH 363 CPU \/D
`kwE/<I 317 7( 95
`kw4P1d 76 fdpr 100
d? xmpert 93
73 365 Lr4P#M 2
"" I/O 296 X9I4PLr 100
<V XBw3 37
@@D~ 155 &mwwHLr
@@om}] 154 T\Ev 31
&mwF1w
CJ 355
[C] &mw1d,
N} wHLr 35
Iw 383 &mw`FTMs( 50
ELMELJdw 385 .Pf"a9(SSA) 177
wHLr 382 ELMELJdwIwN} 385
w` 374 EL5q 81
xLd(E 386 u4 81
ZK 378 EL}/wSPnH 385
,= I/O 383 ELJdw4jIksD^F 385
xg 388 ELuxVn
_L'V 365 w{_-m 173
ibZf\mw 383 hF 173
l= I/O 384 EL I/O
** 365 H}1d(f 149
b? CPU 9C 94 `S 149
bT5} 395 `SMw{ 149
bT5}=8 395 c 175
cNa9 @@ELT\ 150
m~ 3 j8Vv 157
2~ 2 l=
iRZf9)DLr 120 w{ 206
Lr ** 165
iRZf9) 120 \e@@ 157
zY 333 EL I/O w= 211
IXBs(DI4P 353
I4P
X9 100 [D]
PZf^FD 77 s!
P' A
_Y:f 72 M'z 295

© Copyright IBM Corp. 1997, 2006 403


s! (x) N
4 @Ck$wTH 37
M'z 295 TF`&mw(SMP)
s!^F EnMe5a9 45
A SP^F
~qw 291 ELh8 175
4 scsi Jdw 175
~qw 291 T(E I/O xP`SMw{ 213
zkE/<I 325 `&m
xE/D`k 317 i\ 45
10QVI_L 4 `M 45
108n 4 G2m(?/:) 45
H}_L 4 2mEL 45
w= 2mZf 46
EL I/O 211 2mZf/: 46
wH `&mi\ 45
_L 33
SMP _L 54
1!5 54 [F]
c(d? 55 =8 395
wHLr =(
&mw 31 !q3fUdVd 134
&mw1d, 35 ==*; 35
KPSP 34 CJ&mwF1w 355
wHLrIwN} 382 CJg4F1wDfw 356
w3Ud CJyZ POWER DF1wDfw 357
<VMs! 80 G2m(non-shared) 301
w{ 135 VNf" 198
@@ I/O 156
w3Ud[
VdMXU 41 [G]
w3Ud[DVdMXU 41 E*Vv(rD4!(PDF) 323
w3UdMibZf 135 _Y:f 2
wC _Y4 178
sync/fsync 175 ^F@CD~ 133
w{ 328 ^Fv? JFS 133
{Fbv 245 P'9C 72
JdwSP 234 _Y:fM TLB 73
V$ 317 _Y:f;BT 49
xgZf 243 zY(f
53 3 }K 334
_L 55 DA 334
&CLr 317 zYLr
IP 241 (fq=/ 336
mbuf X 241 VvT\ 331
TCP M UDP 213 XF 332
TCP nsN$ 238 mb 331
w{w3UdDP5 135 t/ 332
w{_-mDuxVn 173 t/MXF 335, 336
w{D~53 204 5V 331
w{ VMM Zf0kXF 126 B~j6 339
w{ VMM 3ff; 129 >} 333

404 T\\m8O
zYB~ s4 (x)
mSBD 337 3r
zY}] fz 205
q=/ 332 73d? 365
[l 333
^F 332
zY(@ 338 [J]
zYD~ y<
>} 333 T\ 10
y> DfwMw._ 73
q=/ 333 F1w
qC 333 &mw
$_ CJ 355
alstat 100 C S}L 356
emstat 99 F1wCJ
SMP 61 X(ZyZ POWER De5a9 356
$_ alstat 100 F1wDfw
$w:X g4
7( 8 c`Lr}L 356
53 1 yZ POWER D
SMP 51 CJ 357
$w:X"PT `S 49
SMP 50 `SEL I/O 149
$w:X`&mT `SMw{EL I/O 9C 149
SMP 52 `SMw{|nT0S}L 347
$w:XJ4hs `SMw{ZfD9C 109
@F 66 `SMw{D~53 195
SLr6pDd; 71 `SMw{ NFS 279
@@ 67 `S java 327
BLr 70 ;f='' 49
9l xL 54
Iw3zk 77 EH6 32
Iw3}] 77 xLM_L 31
L(EL 2 xLd(EIwN} 386
L(ELf"\m 5q
T\Ev 42 EL 81
X|J4 u4 81
7( 8 mi
n!/*s 9 5q 171
XZ>i ix "bBn 171
\m v( CPU YH 359
5Zf 37
CPU P'
C'j6 107 [K]
ceDZ*}LwC(-Q) 320 *z
uYZf(h 132
x( 49
[H] IXBs(DI4PLr 353
sVdc( 41 IwN}
sME 296 ELMELJdw 385
s4 wHLr 382
Zf3dD~ 199 w` 374

w} 405
IwN} (x) _-m (x)
xLd(E 386 5q4;B 168
ZK 378 hF 173
,= I/O 383 uxVns! 170
xg 388 4ki$ 170
tcp_mssdflt 389
tcp_nodelay 390
tcp_recvspace 390 [M]
tcp_sendspace 390 }YLr 21
use_sndbufpool 391 kS}L>} 357
xmt_que_size 391 {Fbvw{ 245
_L'V 365 |n
ibZf\mw 383 EL
l= I/O 384 D~Ud 155
** 365 filemon 157
nfs !n 391 lslv 154
biod F} 391 sar 153
comebehind 391 vmstat 152, 156, 157
nfsd F} 391 EL I/O
numclust 391 iostat 150
IVI_L 4 zY7I 271
IluT `SMw{ 347
`&mwLB? 52 Zf
I4PLr 3 bM rmss Da{ 125
UdP'TM3rT 156 ps 112
UPPm 37 rmss 121
b rmss -r 126
$s(S}L 354 schedo 126
BLAS 322 svmon 113
ESSL 322 vmo 129
vmstat 109
xg3F 248
[L] T\(f 347
,xU/ T\w{ 350
java 329 T\Vv 347
mbzYLr 331 "bBn
#H time M timex 94
x 48 bindprocessor 61
,S "bBn 62
/, 320 CPU
2, 320 acctcom 97
4S3r iostat 89
7( 322 ps 95
w._MDfw 2 sar 90
_-m time 94
X(; 169 vmstat 87
Xi 172 fdpr 324
wH_T 169 filemon
w{ 173 +V(f 160
I/O 174 ftp 247
Vd 169 ipfilter 273
5q 174 ipreport 273

406 T\\m8O
|n (x) ZK
ld 353 IwN} 378
mkpasswd 107 ZKIwN} 378
netpmon 263 ZK_L
nfsstat 283 CPU 9C4v
no 277 @@ 97
ping 246
pprof 97
schedo 136 [P]
schedtune -s 63 dC
vmtune 135 )9 176
#i/ I/O 179 @@Zfhs 121
73d? 181 @@ZK_LD CPU 9Civ 97
5V 180 =(
>} 187 X(`k 75
e5a9 179
!n(e 183
#M [Q]
Lr4P 2 7($w:XiI?V 65
?j
hC 8
T\ 1 [R]
?<i/ 196 F4(write-around) 301
U>G< 196
U>_-m
[N] Xi 209
Zf 4( 210
<V 139, 140 U>D~53
2m)9 138 Xi 209
2m9C 138 _`@"ELsP(RAID) 177
FcTHD~ 37 gN
`SMw{ 109 DF TSM 8]T\ 396
@@hs 121 m~cNa9 3
7(9C 109
-Z9C 115
hs [S]
Fcn!5 120 h(_Y:fwDs!(-qcache) 320
AIX Zf`FT'V 138 hFM5VP'Lr 72
Zf<V 139, 140 hC?j 8
ZfXw{ 131 luT 197
ZfD9C7( 109 6p$w:X 8
ZfM\_yC 50 6pX|J4 8
Zf3dD~ 199 ELUd 8
Zf0kXFw{ 127 Zf 8
h N} 127 xgCJ 8
m N} 128 CPU 8
p N} 128 1dH5 95
v_exempt_secs N} 129 5Zf 2
w N} 129 5Zf\m 37
Zf0kXF$_ >}
VMM 40 kS}L 357
Zf0kXFc( 40

w} 407
Jdw"MMSUSPw{ 234 xgD~53(NFS) (x)
Jdw3FE" 275 `SMw{ 279
V$w{ 317 T\Vv 283
X$Lr xgT\Vv 246
cron 91 D>;vT> ix
dv D~
9 svmon M ps X* 119 VNs! 201
9 svmon M vmstat X* 118 tT
}]rP/ 47 w{Ta}T\ 201
tT 9u 202
D~ 201 3d 325
3rAT\ 204 D~}] 292
3rs4 205 D~,=
YH w{ 207
>XoT'V 363 D~53
fzs4 205 Xi 202
i, _Y:f 299
EL :ex 207
@@ 154 `SMw{ 195
x `M 195
H} 49 T\w{ 204
4SD 47 Jb
r%D 47 T\
*z 49 (f 343
`M 47 omm
#H 48 6' 168
;C 167
"bBn 171
[T] ns}? 168
X(2~=(D`k 75
X(ZyZ POWER De5a9DF1wCJ 356
X(ZSZDxg!n 220 [X]
,= I/O IwN} 383 53n/GJ 91
LB? 1 53T\`S 13
SMP 51 _L 31, 54
LB?IluT wH_T 33
SMP 52 w{ 55
73d? 56
wT!n 60
[W] xL6yCwCr 60
xg ZK
IwN} 388 @@ CPU 9Civ 97
xgIwN} 388 EH6 32
!n 388 'V 31
maxmbuf 388 SMP
MTU 388 wH 54
rfc1323 388 _Lw{ 55
xg3F 248 _LMxL 31
xgD~53(NFS) _L!n 95
f> 3 281 _L'VIwN} 365
N< 302 `Xvfo ix
Ev 279

408 T\\m8O
`FT ibZf\mw(VMM)
&mw 50 Zf0kXF$_ 40
l&1d 1 T\Ev 36
SMP 51, 53 P5 37
T\ ibZfMw3Ud 135
20<r 78 hs
EL $w:X
@@ 152, 153 J4 66
}/w(f 151 T\
CPU (f 151 `4D5 65
tty (f 150 rP/
ELMZf7( 26 }] 47
EL5q 81 !n
w{ _L 95
TCP M UDP 213 PCD CPU 91
f. 65
?j 1
5V 65 [Y]
YHu} 9u 198
X(Lr 21 SYVdc( 41
xg 3fUdVd
Vv 246 s 134
Jb H 135
SMP 50 SY 134
JboO 21 3fUdVd=( 134
S}L 351 3ff; 37
T\(f|n 347 ;BT
T\Df.k5V 65 _Y:f 49
T\w{ T06qD}]
i\ 7 T> 90
T\w{}Li\ 7 l= I/O IwN} 384
T\w{|n 350 &CLr
T\Vv|n 347 "P/ 46
T\En 7, 83 &CLrw{ 317
T\Ev 1 2~cNa9 2
T\y< 10 3dD~ 325
T\`X CzYLrVvT\ 331
LVM 166, 170 C'j6
T\Jb \m CPU 'J 107
(f 343 E/6p 75
hv 344 EH6
T\`XD20<r 78 xLM_L 32
T\hs PZf^FDLr 77
`4D5 65 P CPU ^FDLr 72
T\VFw 198 kT\`XDS}L 351
T\v? oT73
JFS Mv?M JFS 198 >XoT'V 363
T\oO$_(PDT) $s(S}Lb 354
b? y_ 343 $&mwM`kw
ibZf\mw P'9C 74
IwN} 383 $HVdc( 41
ibZf\mwIwN} 383

w} 409
P5 ns_Y:f (x)
VMM 37 NFS D~}] 296
KPSP n!/X|J4*s 9
wHLr 34

A
[Z] ACT_TIMEOUT 365
]ff"w AIXTHREAD_COND_DEBUG 365
sC 78 AIXTHREAD_ENRUSG 365
kT!cT\D`k(qfloat) 319 AIXTHREAD_GUARDPAGES 366
kTX(2~=(D`k 319 AIXTHREAD_MINKTHREADS 366
yC AIXTHREAD_MNRATIO 366
ZfM\_ 50 AIXTHREAD_MUTEX_DEBUG 367
8nBf AIXTHREAD_MUTEX_FAST 367
lb 99, 100 AIXTHREAD_READ_GUARDPAGES 367
4P#M AIXTHREAD_RWLOCK_DEBUG 368
Lr 2 AIXTHREAD_SCOPE 369
4P1d AIXTHREAD_SLPRATIO 369
`kw 76 AIXTHREAD_STK=n 369
1S I/O 296 AIXTHREAD_SUSPENDIBLE 368
w{ 208 Amdahl (I 53
T\
A!Yw 209
4Yw 209 B
PO&mLr 4 biod F} 391
*;s8:ex 2 biod X$Lr 8
<r
T\
20 78 C
Yw53200 78 C M C++ `kgq 76
EL200 79 CacheFS 296
Zf200 79 T\Uf 300
(E200 82 CD ROM D~53 197
CPU 200 78 combehind 391
J4 CPU
X| `S 87
7( 8 v(YH 359
&CnbD 10 T\ 87
J4Vd CPU \/DLr
43EH6 10 7( 95
J4\mEv 31 CPU 1dH5 95
S}L CPU !n 91
`SMw{ 347
b
$s( 354 D
T\ 351 DIO 296
string.h 75
iI?V
$w:X E
7( 65 EXTSHM 374
ns_Y:f
D~}] 292

410 T\\m8O
F maxreqs 384
maxservers 384
filemon (f 160 maxuproc 382
fork () XT1ddtN} mbuf XT\w{ 241
w{ 136 minfree M maxfree hC 130
FORTRAN M C DE/$&m 324 minperm 133
ftp 247 minperm M maxperm DhC 132
minservers 384
MIO 179
G 73d? 181
GPFS 198 5V 180
>} 187
e5a9 179
I !n(e 183
IP T\w{ 241 Ec,"bc 179
iso 9000 ix mountd 279
I/O msgmax 386
(E msgmnb 386
`SMw{ 213 msgmni 386
msgmnm 386
MTU 388
J
Java 328
Ec 327 N
java ncargs 382
`S 327 NFS 198
<r 327 NDxgD~53(NFS) 279, 283
Java `S$_ 328 w{ 291
java T\<r 327 ~qw 291
JFS 195 M'z 295
JFS Mv?M JFS NFS M'z
xp 195 w{ 295
JFS2 195 NFS }]_Y:f
ALB? 296
4LB? 297
L NFS }]_Y:fD0l 296, 297
ld |nDP'9C 353 NFS D~}] 296
LDR_CNTRL 374 NFS !nIwN} 391
LDR_PRELOAD 377 nfsd 279
LDR_PRELOAD64 377 nfsd F} 391
lvmo 170 nfsd _L 291, 295
lvmstat 166 }? 291, 295
lvm_bufcnt 207 nice 54, 102
NLS
kND>XoT'V(NLS) 363
M NODISCLAIM 374
MALLOCBUCKETS 370 npswarn M npskill DhC 135
MALLOCMULTIHEAP 371 NSORDER 376
maxbuf 383 numclust 391
maxclient 133 numfsbufs 207
maxmbuf 388 NUM_RUNQ 372
maxperm 133 NUM_SPAREVP 372

w} 411
P SSA
kND.Pf"a9(SSA) 177
PDT STEP_TIME 373
{T\oO$_(PDT) 343 strict_maxperm 133
pd_npages 207 svmon |n 113
ping 246 sync/fsync wC 175
portmap 279
ps |n 112
PSALLOC 376 T
TCP M UDP DT\w{ 213
TCP nsN$w{ 238
R
tcp_mssdflt 389
RAID tcp_nodelay 390
kND_`@"ELsP(RAID) 177 tcp_recvspace 390
RAM L tcp_sendspace 225, 390
D~53 197 trcrpt 336
renice 54
rfc1323 388
RPC SXX$Lr 292 U
w{ 292
use_sndbufpool 391
RPC x(X$Lr 292
w{ 292
RT_GRQ 377 V
RT_MPC 377
VMM
NDibZf\mw(VMM) 36
S vmstat |n 109
VP_STEALMAX 373
semaem 387
v_pinshm 207
semmni 387
semmsl 387
semopm 387 X
semume 387
xmperf 93
semvmx 388
xmt_que_size 391
setpriority() 54
setpri() 54
shmmax 388 Y
shmmin 388
YIELDLOOPTIME 373
shmmni 388
SMP
NDTF`&mw(SMP) 45
SMP $_ 61
bindprocessor |n 61
SMP $w:X 51
`&mT 52
LB?IluT 52
l&1d 53
SMP _LwH 54
SMP T\Jb 50
$w:X"PT 50
LB? 51
l&1d 51

412 T\\m8O
򔻐򗗠򙳰

Pz!"

S151-0020-03

Вам также может понравиться