Operating System - OpenVMS
1828342 Members
3651 Online
109976 Solutions
New Discussion

SHOW MEMORY - Buffer Object Usage

 
SOLVED
Go to solution
Art Wiens
Respected Contributor

SHOW MEMORY - Buffer Object Usage

What information is this bit of the SHOW MEMORY display conveying?

Buffer Object Usage (pages): In Use Peak
32-bit System Space Windows (S0/S1) 0 1
64-bit System Space Windows (S2) 20 38
Physical pages locked by buffer objects 20 1

Some of my Alpha's show 0 in use, this system as an example shows 20.

VMS Help - doesn't - "Displays information about system resources used by buffer objects."

What are "Buffer Objects"?

Cheers,
Art
3 REPLIES 3
Ian McKerracher_1
Trusted Contributor

Re: SHOW MEMORY - Buffer Object Usage

Hello Art,

I won't pretend that I am an expert on buffer objects so I will just quote from the Alpha Internals bible:

"A buffer object is a special kind of I/O buffer. The pages that make up a buffer object are locked into physical memory and may be doubly mapped in system space as well as process-private space. Multiple I/O requests can be initiated to or from an existing buffer object with less overhead than with the standard I/O mechanisms, direct and buffered I/O".

Hope this helps.


Regards,

Ian
Ian Miller.
Honored Contributor

Re: SHOW MEMORY - Buffer Object Usage

buffer objects are used by the FAST I/O feature of VMS.

http://h71000.www7.hp.com/doc/82FINAL/5841/5841pro_069.html#index_x_1904

____________________
Purely Personal Opinion
John Gillings
Honored Contributor
Solution

Re: SHOW MEMORY - Buffer Object Usage

Art,

Quick explanation... consider the $QIO system service. It has 12 arguments. Performance studies revealed that a significant fraction of the CPU consumed by a typical $QIO call was purely "bookwork", validating and probing the arguments.

A buffer object can be thought of as a protected (and trusted) argument list for a $QIO. You "set up" the argument list for a particular I/O operation once and then use it many times. All that changes is the data. This allows the system to bypass all the extra checks and thus reduces the CPU overhead of I/O.

Obviously an application needs to be specially coded to use buffer objects, and, you may also need to adjust SYSGEN parameters to allocate memory to be used (see MAXBOBMEM).

Some data base products make use of buffer objects. Perhaps the system that's showing non-zero usage has a data base product running?
A crucible of informative mistakes