> On 1 Apr 2016, at 10:47 AM, Andrew Rowley <and...@blackhillsoftware.com> 
> wrote:
> 
>> On 1/04/2016 13:01, David Crayford wrote:
>> I guess you're using JZOS RecordReader? From what I know of the 
>> implementation it's micro-optimized and it's as good as it gets for Java.
> 
> Yes.
> 
>> You can't compare a COBOL batch job to a Java batch job. The COBOL program 
>> will use 200K of memory and use very little CPU where the Java program will 
>> be a multi-threaded monster and gobble up as much memory as it can devour. 
>> That's the nature of the beast. It probably means the density of Java 
>> workloads that  can run on a zIIP is far less than conventional programs on 
>> CPs.
> 
> Call me a masochist, but I'm comparing Java batch to assembler. My target is 
> to get the Java CPU less JVM startup overhead down to the same as assembler 
> for the same report. I may not get there, but I will hopefully get close.
> 

Good luck with that mate! I've had conversations with the authors of JZOS about 
RecordReader and it uses all the tricks bar going down to EXCPs. There are also 
smarts to mitigate JNI overhead. If you write your own JNI code it won't be 
zIIP eligible?

Have you measured RecordReader against an assembler program doing nothing more 
than reading a file? I did that once and it was close. 

> It will use more memory, but not unreasonable amounts (considering the amount 
> of memory available these days). As much memory as it can devour? That's 
> probably the nature of GC, it keeps using the next chunk of memory until it 
> runs out, when it does the GC. If it has a large area available it will use 
> it. There are some options for automatically growing or shrinking the heap 
> based on GC statistics but I haven't explored them. My gut feeling was that 
> the heap shrinkage threshold actually looked very aggressive, but I don't 
> know.
> 
>> Half of the CPU time is spent in GC. Ironically most of this program is 
>> spent running C++ GC code in the VM! ParallelScavenger, ConcurrentScavenger 
>> and MarkingScheme which I assume is part of the mark-and-sweep GC engine.
> 
> Half the time in GC sounds excessive. Which GC option (and Java version) are 
> you using? Gencon? There are verbose GC settings you can use to try to figure 
> out what is going on





> Regards
> 
> Andrew Rowley
> 
> -- 
> Andrew Rowley
> Black Hill Software
> +61 413 302 386
> 
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
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