Based on the relatively code path supported, it appears to be that the best use of it to replace/simplify the more complicated PLO cases where there is a lot of setup and the need for working storage. Don't know which will get better performance.
On Mon, 6 Mar 2017 00:03:15 -0500 Peter Relson <[email protected]> wrote: :>As you might assume, the operating system uses transactional execution. :>A caveat: you cannot use it unconditionally. Even if you know you are on :>the right machine. One reason for that is that it cannot be used if z/OS :>is running on/under VM. Another is that we have given the customer a knob :>to ask that transactional execution not be used when they are migrating to :>a new machine and really want, first, to make sure that the machine works :>before worrying about whether new code paths in the software also work. :>This is the MACHMIG statement of the LOADxx parmlib member. You must pay :>attention to the PSA/CVT bit (you can choose which you want to look at) :>which is on when available. :>Transactional execution is used, for example, within supervisor, IOS, RSM. :>It is what makes "contractible CPOOL" possible and available. :>We tend to look for cases where we can use TBEGINC rather than TBEGIN. :>That is because any use of TBEGIN requires accepting the possibility of :>too many aborts, and providing "traditional serialization" in the fallback :>path. And this means that the user of a transaction must also serialize :>against the user of "traditional serialization". "Traditional :>serialization" could be the local lock, an ENQ, a latch, etc. :>One of the use cases is to avoid coarse-grained serialization when :>fine-grained serialization will do. The LOCAL lock is a case of :>coarse-grained serialization. It serializes lots of stuff. But sometimes :>you might be using it to serialize only "your stuff". Yet you are still :>contending for the resource with other users of the LOCAL lock, so could :>be adversely impacted by those cases (and your usage could adversely :>impact others). If you can use TBEGIN(C), you no longer need to contend :>with other users of the LOCAL lock. :>This is a performance-related facility. Performance needs should dictate :>how much you choose to use it. -- Binyamin Dissen <[email protected]> http://www.dissensoftware.com Director, Dissen Software, Bar & Grill - Israel Should you use the mailblocks package and expect a response from me, you should preauthorize the dissensoftware.com domain. I very rarely bother responding to challenge/response systems, especially those from irresponsible companies. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
