On Tue, 27 Nov 2012 14:55:16 -0600, Paul Gilmartin <[email protected]> wrote:

>But what plausible use do you envision that anyone or any group at IBM might
>have for the "model dependent" character?  It requires that software developers
>test on every available and possible future system.  Simply, it's irresponsible
>not to have made the behavior consistent across models.  If it's going to fail
>on some models, it should be designed to fail likewise on all models. Perhaps
>with SIE?

There is nothing new here, Paul.  One of the original design points for S/360 
was to separate machine behavior from the programming interface.  You want to 
be able to change and optimize the machine behaviors over time without screwing 
up the interface.

This is precisely why you see "model-dependent" in the documentation - so you 
DON'T build an expectation.  And it's why you can still run programs written in 
1965.

Where conditional execution is involved, the machine often tries to avoid 
unnecessary work.  This is what out-of-order execution and pipelining are all 
about.  If the machine decides NOT to do something, then the machine MAY not 
detect certain conditions.  Nonetheless, the instruction yields the expected 
result.

See "Sequence of Storage References" in Ch. 5 of the POP, particularly 
"Divisible instruction execution."  Sometimes part of the instruction can be 
run while a data fetch is in progress.  Note that most data reference (load or 
store) requires intermediate fetches to get ART and DAT entries, etc.  Some of 
this parallelism is needed to counter the distance- and cache-related effects 
of accessing memory. 

As STOC Usage Note 2 states, if the store is skipped because of the condition 
code, the operand might not be fetched into cache.  But it is a matter of 
implementation as to exactly when the circuitry triggers things like PER 
storage-alteration events or set the page change bit.  As the machines get 
smarter, the accuracy of those events improves.   While the machine may 
over-indicate (a false positive) an event, it will never under-indicate an 
event.

It would be unforgivable if the architects baked in 

Alan Altmark
IBM

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to