Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!rutgers!sri-spam!ames!ucbcad!ucbvax!YALE.ARPA!LEICHTER-JERRY
From: LEICHTER-JERRY@YALE.ARPA
Newsgroups: comp.os.vms
Subject: Re: disk xqp code example -- request
Message-ID: <8707211033.AA03137@ucbvax.Berkeley.EDU>
Date: Tue, 21-Jul-87 06:33:27 EDT
Article-I.D.: ucbvax.8707211033.AA03137
Posted: Tue Jul 21 06:33:27 1987
Date-Received: Wed, 22-Jul-87 06:41:43 EDT
Sender: daemon@ucbvax.BERKELEY.EDU
Reply-To: 
Distribution: world
Organization: The ARPA Internet
Lines: 26


    I would like to write some data to disk without the overhead of RMS.  I've
    tried to use IO$_WRITEVBLK as described in the I/O manual, but despite
    the $QIOW returning success, I find that no data has made it.  I $CREATE
    the file with RMS, save the FID for the subsequent I/O calls, etc.  I also
    extend the file before I access it.  The extend works fine.

As someone has already pointed, be sure to check the status in the IOSB, not
just the status returned by the QIO.

HOWEVER, it's worth pointing out a fundamental incorrect assumption behind
what you are trying to do.  You are unlikely to notice any significant gain
from completely avoiding RMS.  Rather than going through all this effort,
try using RMS in block mode (using $READ and $WRITE).  These calls provide
only a very thin veneer over the QIO level, and have almost no overhead.
They are a lot easier to use than the disk QIO's.  There are probably some
very special cases where direct QIO-level access to the disk is justified,
but I'd certainly try RMS block I/O first.  (In fact, in many circumstances
using RMS in non-block mode will produce BETTER performance than simple-minded
low-level code, mainly because of RMS's built-in multi-block buffering.  Yes,
you can duplicate all that sort of stuff, but often people just assume that
because they are moving to lower levels of the I/O system, they'll get better
performance.  They CAN get better performance - IF they put in the necessary
work.  Big if!)
							-- Jerry
-------