Anne & Lynn Wheeler wrote:

part of the redo of sio/tio/hio for xa (aka "811" for the nov78 date on
the documents) was the enormous pathlengths in mvs ... being able to
redrive queued i/o after completion of previous i/o.


Hmphhh..

In the dept of "other possible ways by the hardware to damage performance when preventing I/O queue processing" - in the line of the 3380 presenting early CE...

That's probably what drove the 4381 folks (or maybe it was you !) to do this SIOFQ (Start I/O Fast Queuing) thingy (dunno if any other model had it - but I know I had it on my 4381 back then).

All in all, not a bad idea. When the channel encounters a CU or Channel Busy condition - by a SIOF issued Op - either because the CU isn't ready to accept the request just yet or the channel is performing some burst operation - (but not a Device Busy or CC=2 which doesn't even go to the channel anyway) - The channel hardware would queue the I/O request - thus freeing the CPU from going into a dequeue/SIOF frenzy (remember also that because it's a SIOF, you (may) get an extra interrupt to present you with a deferred CC)

Nice.. Unless if you had a 2-channel-switch on a 3880 with 2 Storage Directors. Because then, the supervisor would never attempt to start the I/O on the other side (since a SIOF with SIOFQ enabled would never make the CPU aware of the situation). Thus, I/O would almost always be queued on the 1st path - and almost never presented on the 2nd path.

On my installation, where I was running VM/SP5 with HPO, disabling SIOFQ led to a *significant* increase in I/O throughput (with no significant CPU overhead.. processing an I/O interrupt, dequeuing and re-starting an I/O in CP has quite a short path length.. maybe 200 or 300 instructions overall - at least for an I/O for which the hypervisor has complete responsibility (paging, mdisk, spool)).

Of course, XA made all this go away since the Channel Subsystem is then made responsible for initiating the I/O on an available CHPID - if more than 1 path is available and the initial path is found to be unavailable to perform the requested operation.

OTOH, this makes me dreamy about all the "multipathing" enhancements available on today's "distributed" systems - like - Ohhh ! Shiny ! (with Jazz Hands) - when this is something that has been available probably since the mid 70's (program controlled) and since the early 80's (hardware controlled) on mainframes.

--Ivan

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to