Steve's Power Systems BlogPower BlogContactLog inRegister
  • Power Blog
  • Contact

  • Register

IBM Power Systems Blog

Power Systems
  • Front Page
  • Categories
  • Archives
  • Latest comments
  • « Extended Shell History AIX and VIOS
  • Power System Hypervisor Resource Dumps »

AIX buf_mode attribute for Virtual Ethernet Adapters

Posted by steve on 05 Sep 2016 in AIX Tuning, AIX Tips

AIX has added a new attribute to the Virtual Ethernet Adapters called buf_mode.

At AIX 7.2, by default, this is set to: max_min

For AIX 7.1 and below, by default, this is set to: min

 

Other possible options are:

lsattr -l ent2 -a buf_mode -R

min
max
max_min

 

min - The minimum values and maximum values in the adapter ODM attributes are used.
max - The minimum values in the adapter attributes are ignored, and the maximum values will over-ride this.
max_min - The maximum values in the adapter ODM attributes are used if possible, otherwise the minimum values are used.

 

These are the defaut settings for buf_mod, max_buf_* and min_buf_*.

lsattr -El ent2 | grep -e max_buf_ -e min_buf_

max_buf_control 64 Maximum Control Buffers True
max_buf_huge    64 Maximum Huge Buffers True
max_buf_large   64 Maximum Large Buffers True
max_buf_medium 256 Maximum Medium Buffers True
max_buf_small 2048 Maximum Small Buffers True
max_buf_tiny  2048 Maximum Tiny Buffers True
min_buf_control 24 Minimum Control Buffers True
min_buf_huge    24 Minimum Huge Buffers True
min_buf_large   24 Minimum Large Buffers True
min_buf_medium 128 Minimum Medium Buffers True
min_buf_small  512 Minimum Small Buffers True
min_buf_tiny   512 Minimum Tiny Buffers True

 

Notice that the *_buf_medium buffers match the *_buf_medium buffers setting in the ODM when you check the running adapter settings.  The minium buffers allocated are the same as the maximum, meaning there will be no dynamic buffer allocations.  This is the default max_min setting.

entstat -d ent2 | grep -w -p Registered

Receive Information
Receive Buffers
Buffer Type       Tiny Small Medium Large Huge
Min Buffers       2048  2048  256     64   64
Max Buffers       2048  2048  256     64   64
Allocated         2048  2048  256     64   64
Registered        2048  2048  256     64   64
History
Max Allocated     2048  2048  256     64   64
Lowest Registered 2048  2048  256     64   64

 

Change the adapter setting to buf_mode=min, requires the adapter to be offline (detached state).

chdev -l ent2 -a buf_mode=min

ent2 changed

 

Notice that the *_buf_medium buffers now matches the setting in the ODM when you check the running adapter settings.  The minium buffers allocated are less than the maximum, meaning there will be dynamic buffer allocations once you use more than the minimum number of buffers.  Notice that the Max Allocated value has changed to match the minimum buffers for each size.

entstat -d ent2 | grep -w -p Registered

Receive Information
Receive Buffers
Buffer Type      Tiny Small Medium Large Huge
Min Buffers       512  512    128    24   24
Max Buffers      2048 2048    256    64   64
Allocated         512  512    128    24   24
Registered        512  512    128    24   24
History
Max Allocated     512  512    128    24   24
Lowest Registered 512  512    128    24   24

 

Change the adapter setting to buf_mode=max, requires the adapter to be offline (detached state).

chdev -l ent2 -a buf_mode=max

ent2 changed

 

Notice that the min_buf_medium buffers match the max_buf_medium buffers setting in the ODM when you check the running adapter settings.  The minium buffers allocated are the same as the maximum, meaning there will be no dynamic buffer allocations.

entstat -d ent2 | grep -w -p Registered

Receive Information
Receive Buffers
Buffer Type       Tiny Small Medium Large Huge
Min Buffers       2048  2048   256    64   64
Max Buffers       2048  2048   256    64   64
Allocated         2048  2048   256    64   64
Registered        2048  2048   256    64   64
History
Max Allocated     2048  2048   256    64   64
Lowest Registered 2048  2048   256    64   64

 

 

 

 

 

Tags: AIXAIX 7.2TuningVirtual Ethernet Adaptersbuf_mod

6 comments

Comment from: Selim Kraneis Visitor

Selim Kraneis

Hello Steve,
which version aix 7.1 do you use? (TL/SP)

21/02/17 @ 03:06 am

Comment from: steve Member


Fatal error: Uncaught Error: Call to undefined function finfo_open() in /home4/capacity/public_html/AIX_Blog/inc/files/model/_file.funcs.php:379 Stack trace: #0 /home4/capacity/public_html/AIX_Blog/inc/files/model/_file.funcs.php(405): is_image_file('/home4/capacity...') #1 /home4/capacity/public_html/AIX_Blog/inc/files/model/_file.class.php(1019): imgsize('/home4/capacity...', 'widthheight') #2 /home4/capacity/public_html/AIX_Blog/inc/files/model/_file.class.php(1037): File->load_lastmod_ts() #3 /home4/capacity/public_html/AIX_Blog/inc/files/model/_file.class.php(2499): File->get_lastmod_ts() #4 /home4/capacity/public_html/AIX_Blog/inc/files/model/_file.class.php(2715): File->get_thumb_url('crop-top-64x64', '&', 1) #5 /home4/capacity/public_html/AIX_Blog/inc/files/model/_file.class.php(2558): File->get_img_attribs('crop-top-64x64', '', NULL, 1, NULL) #6 /home4/capacity/public_html/AIX_Blog/inc/users/model/_user.class.php(5244): File->get_thumb_imgtag('crop-top-64x64', 'bCommentAvatar', '', '', NULL) #7 /home4/capacity/pu in /home4/capacity/public_html/AIX_Blog/inc/files/model/_file.funcs.php on line 379