Zaap Processor usage

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Zaap Processor usage

Hercules390 - General mailing list
I have Hercules 3.12 configured with 4 engines "ENGINES CP,CP,AP,IP"
running Z/OS 1.10 on a Windows 10 system.
Issuing "D M=CPU" from the console shows:

IEE174I 13.09.51 DISPLAY M
PROCESSOR STATUS
ID  CPU                  SERIAL
00  +                     XXXX
01  +                     XXXX
02  +A                   XXXX
03  +I                    XXXX

CPC SI = 2084. .HRC.ZZ.00000000000XXXXX
         Model: EMULATOR

when I run a batch job executing a simple assembler program I noticed in
the system trace that the program was dispatched
to execute on the ZAAP processor.

My understanding always was that ZAAP should be dispatched to run eligible
Java workloads.

This may not be a Hercules related issue at all but I thought I'd ask
anyway.

Thanks....Dani Kalmar
Reply | Threaded
Open this post in threaded view
|

Re: Zaap Processor usage

Hercules390 - General mailing list
On 25 April 2017 at 06:16, Dan Kalmar [hidden email] wrote:

> when I run a batch job executing a simple assembler program I noticed in
> the system trace that the program was dispatched
> to execute on the ZAAP processor.
>
> My understanding always was that ZAAP should be dispatched to run eligible
> Java workloads.
>
> This may not be a Hercules related issue at all but I thought I'd ask
> anyway.
>

I have no idea if the Hercules implementation of the various processor
types matches what z/OS is expecting, but certainly there could be a
misinterpretation there. Though I'd be surprised if z/OS lists the
processors as one type, and treats them as another.

But another thing to keep in mind is that there is nothing to say that IBM
(z/OS) cannot in its wisdom dispatch non-eligible work to run on a
specialty engine if it wants to. It's you the "customer" who can't. I'd be
surprised to see an initial dispatch of a batch job on a zAAP, but it is
known that once a workload is on a specialty engine, even if it becomes
ineligible (say, a JNI call from Java), z/OS may keep it on that engine for
a while in the interest of overall system efficiency, anticipating that the
JNI will return quickly to eligible (Java) code.

Anyway - IBM isn't talking about the details of this, and even less are
they going to be discussing it in the Hercules context, so I doubt you will
get a definitive answer anywhere.

Tony H.
Reply | Threaded
Open this post in threaded view
|

RE: Zaap Processor usage

Hercules390 - General mailing list
In reply to this post by Hercules390 - General mailing list
Dani Kalmar wrote:

[...]
> My understanding always was that ZAAP should be dispatched
> to run eligible Java workloads.
>
> This may not be a Hercules related issue at all [...]

It's not.

The choice of which processor engine -- specialty or otherwise -- a given guest workload is dispatched to run on is entirely up to the guest.  The hardware (Hercules) is not involved in that decision in any way whatsoever.

The only role the hardware (Hercules) has in this decision is accurately reporting to the guest what TYPE of engine a given processor is.  If Hercules reports the engine type incorrectly to the guest, then the guest could obviously end up dispatching its workload on the "wrong" processor.

As far as I know Hercules's processor engine type handling code logic is correct, so the "problem" (if you want to call it that) is obviously with the guest (z/OS), not the hardware (Hercules).

--
"Fish" (David B. Trout)
Software Development Laboratories
http://www.softdevlabs.com
mail: [hidden email]



Reply | Threaded
Open this post in threaded view
|

Re: Zaap Processor usage

Hercules390 - General mailing list
In reply to this post by Hercules390 - General mailing list
On real hardware, the zAAPs and zIIPs don't execute some functions.
Attempting to execute the functions would trigger an interrupt and the task
would be transferred to a CP.  Hercules doesn't implement this restriction
so it would continue to run full function programs.

On Tue, Apr 25, 2017 at 5:16 AM, Dan Kalmar [hidden email]
[hercules-390] <[hidden email]> wrote:

>
>
> I have Hercules 3.12 configured with 4 engines "ENGINES CP,CP,AP,IP"
> running Z/OS 1.10 on a Windows 10 system.
> Issuing "D M=CPU" from the console shows:
>
> IEE174I 13.09.51 DISPLAY M
> PROCESSOR STATUS
> ID  CPU                  SERIAL
> 00  +                     XXXX
> 01  +                     XXXX
> 02  +A                   XXXX
> 03  +I                    XXXX
>
> CPC SI = 2084. .HRC.ZZ.00000000000XXXXX
>          Model: EMULATOR
>
> when I run a batch job executing a simple assembler program I noticed in
> the system trace that the program was dispatched
> to execute on the ZAAP processor.
>
> My understanding always was that ZAAP should be dispatched to run eligible
> Java workloads.
>
> This may not be a Hercules related issue at all but I thought I'd ask
> anyway.
>
> Thanks....Dani Kalmar
>
>
>
>



--
Mike A Schwab, Springfield IL USA
Where do Forest Rangers go to get away from it all?
Reply | Threaded
Open this post in threaded view
|

Re: Zaap Processor usage

Hercules390 - General mailing list
The last comment makes a lot of sense based on what I noticed in the system trace. Normal COBOL code executes uninterrupted on ZIIP & ZAAP engines under Hercules.