> -----Original Message----- > From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On > Behalf Of Mike Kerford-Byrnes > Sent: Friday, July 27, 2007 3:32 PM > To: [email protected] > Subject: Pause elements used across multiple address spaces > > I am in the throes of designing an application that communicates between a > long running (IPL to Z EOD) server Address Space and multiple user Address > Spaces. Given the requirements, the exploitation of PAUSE/RELEASE seems, > as > per the documentation, to be highly suitable. The server Address Space is > likely to deploy an array of Pause Elements from which the most suitable > will be selected upon each user request (of which there may be a LOT). So > a > given PE may be used VERY frequently by any and/or many User Address > Spaces. > There is a paragraph in the Auth Assembler Guide which gives me a slight > concern. It states: > > "When a PE is allocated with auth_level=IEA_AUTHORIZED, the PE can be used > to pause and release any task or SRB in the system. The same PE can be > used, > for example, to pause a task in address space 10. After being released, > the > same PE can be used to pause an SRB in, say, address space 23. ++>>There > is, > however, a small performance penalty imposed when a PE is used to pause a > task or SRB in one space and then reused to pause a task or SRB in another > space++<<. This cost is accrued upon each space transition." > > I have a number of questions relating to this. Does the accrual happen > on > each AS transition? For instance, if the usage happened to alternate > between > just two address spaces (say 10 & 23) would there be an accrual for EACH > Transition, or just one per Address Space?
>From my interpretation of the same documentation that you quoted, the accrual happens each time the PE is reused to point to a different address space. > Secondly, given the accrual rate, however derived, is there a predictable > point where the performance overhead could become a liability - and how > can > I determine it? > > Finally (at least for now), if the overhead has the potential of becoming > a > problem, would it be a wise move to maintain a usage count of each PE and > to > delete and reacquire once a particular limit has been reached - and if so, > any suggestions as to the values that may be suitable? > > Mike Kerford-Byrnes I would suggest not using Pause/Resume, because I don't like the way its interface was implemented. IMHO, I think it was silly to use an SVC routine and to require the client to decide whether to use the authorized or unauthorized interface. A simple stacking PC routine would have been a clean interface for both task and SRB, and it is faster than the SVC FLIH & SLIH processing. I would suggest using GRS latch manager, which has the same interface for TCB or SRB mode, and works in cross memory. You can allocate a latch set in your server space. Use space-switch PC routines to jump into the server space and enqueue on a selected latch. The GRS latch manager can be used quite effectively in a WAIT/POST-like scenario that works in cross memory mode and SRB mode. You'll need an FRR EUT=YES,MODE=FULLXM to handle clean-up when either the home space or the server space goes away unexpectedly. Seems a bit easier than writing code to manage a set of Pause elements with usage counts. 2 cents worth. your mileage may vary. Jeffrey D. Smith Principal Product Architect Farsight Systems Corporation 700 KEN PRATT BLVD. #204-159 LONGMONT, CO 80501-6452 303-774-9381 direct 303-484-6170 FAX http://www.farsight-systems.com/ ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html

