In short, in my experience, Java performance on the mainframe is acceptable to very good today.
If you're trying to make the case that "my mainframe processor is faster than your processor in your laptop", that's somewhat difficult to prove because the processors and systems are designed for different use cases: high throughput for large mutli-user workloads vs. high performance for single-user workloads. I believe you could construct a benchmark that would prove either platform is superior. If you're trying to get a feel for "is Java fast enough on the mainframe", then the answer is generally yes, it Java on the mainframe with adequate zAAP capacity is more than likely fast enough. I have Java workloads I've run on both Intel and zAAPs and the difference in performance (on the last few generations of z hardware, with adequate zAAP capacity) is not generally significant. I/O performance can be a much more interesting component than the CPU time. If you're trying to determine how much zAAP capacity you're going to need to run a particular workload on the mainframe, that's more complicated. Your best bet is to actually test the workload there. Again with adequate zAAP capacity, or on an off time with adequate GCP capacity. If testing on GCPs, take care if you're using sub-capacity GCPs. Several years ago we did a test for a relatively large (for us) Websphere application on both AIX and z/OS. The proposed AIX config was something like a pair of 16-way AIX boxes. The z config was 4 z9 zAAPs (two on two separate CECs). Personally, I think the AIX boxes were likely over-configured, but I wasn't responsible for testing on that platform, so I can't say for sure if that was the case. In the end the application ended up going live on 6 z10 zAAPs, and the z10 zAAPs stayed at right around 15-20% busy or so. Note I say zAAP, but zAAP on zIIP should be effectively the same. Other than of course you may have more workloads competing for those zIIPs. Note that depending on the xxxHONORPRIORITY setting in IEAOPTxx, Java workload may fall back to GCPs. Depending on how many specialty engines you have, how busy your GCPs are, and whether or not you're running sub-cap GCPs, you may want to consider setting xxxHONORPRIORITY=NO to keep as much of the Java work on the specialty engines as possible. With that set to "no" I think all of my JVMs show >95% of their zAAP-eligible time is on the zAAPs, and >98% is not uncommon. If you're trying to test the same code on both platforms be aware that there are a lot of differences to worry about... You probably are not running the same JVM on Windows as you are on z/OS. JVM settings such as heap size and the garbage collection algorithm can make for significant differences in run times. If you're running relatively short-lived tests, the JVMs may not JIT the code in the same timeframe on both platforms. The I/O subsystems as well as the file systems are completely different between the platforms. If the application uses JDBC, the performance of the database, and of the network between the JVM and the database can easily be the most important component. I don't think I answered your question, but hopefully I've given you some things to think about. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN