On 3/27/2017 3:59 PM, Paul Gilmartin wrote:
It has been discussed here for a while.  You could disable interrupts, branch to
code above the bar, and branch back later.  (I suppose the Old PSW was
unconditionally scrunched.)  More recently, interrupts above the bar are
tolerated, but no system services can be called from above the bar.

As you say, current releases of z/OS allow interrupts with a 64 bit IAR value. DB2 places dynamically generated executable code associated with SQL processing above 2G, and execute it in place there.

Performance issues have been mentioned here.  Are those because of:
o I-fetch bandwidth?
o Address calculation/translation overhead?
o Computation overhead?
o Some combination?

The performance concern I know of is the cycles needed to move parameter data below so it can be processed by code that is not capable of addressing storage above 2G and then moving any results data back above 2G. Instructions run at the same speed, located below or above 2G.

I'd guess that instructions with 64-bit operands are slower than instructions
with shorter operands, even in AMODE 24/31.

No. A 63 bit Add executes at the same speed as a 31 bit Add (I am not counting the sign bit in this). The same is true with other operations.

Is AMODE 31 slower than AMODE 24?  (Or even the opposite?)

No. There is, however, a penalty when switching between AMODE's, as the processor must serialize and restart I-fetch processing every time that occurs.

Regards,
Greg

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to