- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- question about buffered IO
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-14-2009 09:25 PM
тАО03-14-2009 09:25 PM
question about buffered IO
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-15-2009 12:01 AM
тАО03-15-2009 12:01 AM
Re: question about buffered IO
Consider to install and run T4 (requires OpenVMS V7.3-1 or higher), the HP OpenVMS free system performance data collector. It is a very low overhead data collector to obtain lots of system performance counters and easily display, analyze and correleate them. This data (simple .CSV text files) can also easily be shared and the powerful TLviz tool can be used to graph them.
http://h71000.www7.hp.com/openvms/products/t4/index.html
To answer your question:
In contrast to Direct I/O (I/O done directly between a user buffer and the device), Buffered I/O needs to allocate a buffer in nonpaged pool and copy the user data to/from this buffer. The device will then do the I/O into the buffer in nonpaged pool.
I/O operations that can take a 'long' time to complete are typically implemented as buffered I/O. Examples are: terminal I/O, network I/O, file system (XQP) operations.
Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-15-2009 02:24 AM
тАО03-15-2009 02:24 AM
Re: question about buffered IO
In addition to Volker's response, to which I heartily agree, there is a lot of context that is difficult to communicate in an ITRC Forum.
Outside of context, what is "high rate"? On some older systems, a hundred IOs/second was a "high" rate. On today's systems, where it is not uncommon to have many processes, a thousand IOs/second is not outrageous across the entire system. For that matter, with caching and memory-resident disks, certain rates are quite reasonable.
At the other end of the range, I remember one memorable program (admittedly this was nearly 30 years ago). This program wanted wrote tens (probably hundreds) of thousands of characters to the terminal, one character at a time using QIO (e.g., it was doing thousands upon thousands of buffered IO operations to the terminal). That activity brought a VAX-11/780 to a (pardon the pun) virtual halt. In that case the user was "persuaded" to modify their program.
Doing a simple DIRECTORY/FULL/OUTPUT=NL: SYS$SYSDEVICE:[*...] is illustrative (albeit for direct IOs). Even a simple AlphaStation 200 4/233 (certainly not the fastest system out there) can hit approximately 500 Direct IO/second with an RZ-28M internal drive. Buffered IOs, which can be any number of things, can accumulate faster.
Is this a sustained rate? What is the hardware? What are the details of the workload? What is the workload doing? All of these are critical to understanding the difference between a correctly tuned, but heavily worked system and a system that is being used efficiently.
Some of these questions are easily discussed in an online forum (e.g., type of CPU, OS release, what is the actual rate). Other questions (e.g., the details of the workload) are harder if not impossible to assess effectively in a forum such as this.
As has been suggested previously in other threads, resolving performance questions often require a great deal of background knowledge, or very experienced assistance [Disclosure: our firm does provide services in this area].
I was once called in and informed that a VAX system was promised to be fast, but took literally minutes to simply login. To say that the manager involved was upset is very much an understatement. When I arrived, and he demonstrated it for me, I was mystified at first. I could not think what would cause such a long login time on what appeared to be an idle machine. He had even volunteered that they had tried adding memory, but it had not helped performance.
Then a thought struck me. I went to a console, and used AUTHORIZE to display one of the accounts. Sure enough, the Working Set limits were set to approximately 200 pages (100Kbytes on a VAX). I reset the limit to a more reasonable number, and "performance" increased by a very large factor (1000x).
In performance, almost every question depends dramatically on the details. Sometimes, a situation is familiar enough that others have been down the same path. Other times, it is far more a question of understanding exactly what is actually happening and how it can be improved.
- Bob Gezelter, http://www.rlgsc.com
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-15-2009 02:34 AM
тАО03-15-2009 02:34 AM
Re: question about buffered IO
http://h71000.www7.hp.com/doc/73final/6491/6491pro.html
it explains many things
Purely Personal Opinion
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-15-2009 04:24 AM
тАО03-15-2009 04:24 AM
Re: question about buffered IO
Similar to a high direct-io (disk) write rate. More of those suggests that more actual work is being done. Of course that assumes that the application is tuned to do as few (write) IOs as possible for a unit of work.
Hein.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-15-2009 02:29 PM
тАО03-15-2009 02:29 PM
Re: question about buffered IO
In very rough terms, an I/O operation can be performed either directly to/from the buffer provided by the requestor (DIO for "Direct I/O"), or can be transferred to a buffer in system space prior to starting the operation ("BIO or Buffered I/O").
In even rougher terms, disk I/Os are often DIOs, network and terminal I/Os are often BIOs. The choice depends on many things, including the speed of the target device and the nature of the operation.
In practice it isn't simple. Whether a particular operation is counted as a BIO or DIO is up to the writer of the driver. It's not always clear cut. For example, if a request is satisfied from a cache, should it be counted at all? There's also sometimes an alignment issue - for example, some devices require an aligned buffer, so if the provided buffer is unaligned, it may be necessary to copy the buffer to an aligned system buffer in order to proceed. Should the driver count that as a BIO or a DIO?
As others have said, "high rate" doesn't mean anything. What's high?
If a process is generating continuous BIOs it's probably reading or writing to a terminal or a network device. Most likely doing what it was asked to do!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-15-2009 05:04 PM
тАО03-15-2009 05:04 PM
Re: question about buffered IO
Oracle tends to do a lot of buffered i/o
Phil
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-18-2009 01:20 PM
тАО03-18-2009 01:20 PM
Re: question about buffered IO
It has always surprised me how the Availability Manager determines its "high buffered I/O rate" messages? Unless it has some built in benchmark for each system, surely this is what others are saying here is an arbitrary notion?
Unless of course the message means "buffered I/O is higher than zero so therefore could potentially have an impact on the system."
Regards
Mark
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-18-2009 10:54 PM
тАО03-18-2009 10:54 PM
Re: question about buffered IO
you can customize the thresholds in Availability Manager to your liking.
Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-20-2009 07:44 PM
тАО03-20-2009 07:44 PM