Slashdot Mirror


Benchmarks for Linux Applications on S/390 Zseries?

qaseem asks: "I am looking for benchmark results of various applications (DB, WebAS, mail, etc.) on Linux on the S/390 mainframe. I am also looking for tools to stress test these applications when installed in the S/390 Linux partition. I was wondering if anyone has seen such information or tried such tools. On a side note I am also interested in finding a way to relate the MIPS speed of the S/390 to the world of MHz or GHz on other platforms."

16 comments

  1. Unclear by Safety+Cap · · Score: 2

    Do you want benchmarks of different products on the same platform, or the same product on different platforms?

    --
    Yeah, right.
    1. Re:Unclear by Anonymous Coward · · Score: 0

      yes

  2. Red Books by mge · · Score: 4, Informative

    I searched Red Books just using the keyword Linux, and got the following list. S/390 is the old name for the zSeries eserver, so take a look at Linux for IBM e-server zSeries and S/390: Distributions.

  3. It is all about memory bandwidth... by affegott · · Score: 3, Interesting

    You won't learn too much when you compare MHz to MIPS with an S/390. They are fairly slow, but they do have a TON of memory bandwidth and very fast RAM. At my school we still do mainframe asm programming, and it was pretty clear that machine could move memory like crazy.

    DB apps and the like should run nice and fast... makes sense... that is the reason S/390's still exist.

    1. Re:It is all about memory bandwidth... by Detritus · · Score: 3, Interesting

      They also have I/O channel controllers, which are like simple processors dedicated to I/O related tasks that can run user-specified programs. This takes some of the load off the main processor. The main processor doesn't have to do the bit fiddling needed in PC device drivers.

      --
      Mea navis aericumbens anguillis abundat
    2. Re:It is all about memory bandwidth... by Tower · · Score: 1

      Yup, saves main processor time from running device drivers, and also (rather importantly) saves bus bandwidth and CPU halting by reducing the main procs from having to do many MMIOs. More free bus time is a Good Thing(TM).

      --
      "It's tough to be bilingual when you get hit in the head."
  4. Far from slow by macemoneta · · Score: 4, Informative

    Mainframes have the largest (fastest) CPUs except for the class of supercomputers.
    Benchmarking a mainframe involves standalone use, which is rarely accessible except when performing a benchmark. It is analogous to single user operation on Linux. You cannot obtain a performance measurement in a multiuser environment. It's like trying to get Quake FPS numbers while there are 200 other users logged into your Linux machine, doing who knows what. You'd be lucky to get two measurements the same, and neither would be valid.

    The mainframe instruction set also contains incredibly complex instructions, which are microcoded. The SIE (start interpretive execution) instruction is an example. This single instruction handles the execution of a virtual machine in it's own unique environment (this is what handles running multiple Linux virtual machines on the same mainframe). This makes the concept of "MIPS" and "MHz" completely meaningless.

    As a result, benchmarks concentrate on throughput: transactions per seconds or workload executions per unit time.

    Someone else mentioned the I/O system on mainframes. The architecture is somewhat analogous to using a PostScript printer, from the 22,000 mile view. The CPU writes a program (channel program; a collection of CCWs -- channel command words). It transfers that to one of the, possibly multiple, dedicated I/O CPUs called IOPs (I/O Processors) in the mainframe with a single instruction. These IOPs in turn transfer operations to the dozens to hundreds of device controllers (over 1-16 of the possibly hundreds of parallel ~OC3 speed I/O channels), which are small I/O computers outside the mainframe. The controllers in turn talk to the actual devices (up to 32 per controller). There can be (and frequently are) thousands of devices attached to the mainframe at once (disk drives, communications controllers, printers, tape drives, etc.).

    All I/O operations are asynchronous and essentially DMA. Much of the I/O error recovery is performed by the IOP and controllers without intervention from the main CPUs. In addition, misbehaving devices can be identified and recovered independantly, or isolated from the system. There's no such thing (barring a now very rare bug) as a malfunctioning device causing a system failure.

    Memory bandwidth is very high as has been mentioned, but it's also multiported, multiplying the bandwidth. That is, memory is read and written to concurrently by multiple CPUs and IOPs.

    The ideal mainframe environment is one in which the CPUs are running at about 80-85% average CPU utilization, 7x24x365. Enough headroom for peaks, but well utilized. The elimination of all bottlenecks in the processing complex is a required requisite to achieve this state. It's the ultimate hardware hacker/overclockers dream machine.

    --

    Can You Say Linux? I Knew That You Could.

    1. Re:Far from slow by smoon · · Score: 3, Informative

      "Mainframes have the largest (fastest) CPUs except for the class of supercomputers."

      I have to disagree. Mainframe CPUs follow the same laws of physics as other computers. Yes they are build with good I/O in mind, and yes they have good memory bandwidth.

      I disassembled a 5-MIPS machine last summer and discovered the CPU unit had a 60MHz clock chip (and a 55 and a 72 and a few others in that range) This would put a 60MIPS machine (the size a medium-size grocery store chain might use) at about 720MHz. Using a Pentium whatever at one end of the scale and your choice of High-end CPU at the other, and factoring in the good I/O, etc. it's hard to say that machine (about $180k + 20k/month in licensing fees) is going to be substantially faster than say a quad-900MHz 8GB RAM box from Sun for essentially the same price, or big box from Compaq (alpha), HP, and perhaps even a high end Intel-based machine.

      What it _does_ do is run legacy business applications very well, and it runs reliably. So go ahead and use it -- just don't claim it's almost as fast as a supercomputer.

      Going to the opposite extreme in Mainframe land -- multiple zSeries tied together in a Sysplex cluster running at thousands of MIPS -- sure that's a fast machine, but you just dropped $10million or more on the hardware and license fees would be well over a $million a year. You're then forced to compare once again to a (for example) 72-way Sparc system from SUN or any of the other high-end Unix systems out there, usually at about 1/5 to 1/10th the cost, and usually with minimal on-going licensing fees.

      --
      "But actually trying to use m4 as a general-purpose langage would be deeply perverse" --ESR
    2. Re:Far from slow by JohnQPublic · · Score: 1

      The mainframe instruction set also contains incredibly complex instructions, which are microcoded.

      For example, the Move String (MVST) and Compare Logical String (CLST) instructions are the Standard C library functions strcpy() and strcmp() respectively.

      Memory bandwidth is very high as has been mentioned, but it's also multiported, multiplying the bandwidth.

      Not to mention up to 12-way SMP, with complete cache consistency!

    3. Re:Far from slow by macemoneta · · Score: 2

      If you're comparing Mhz, then you're right, it doesn't look very impressive. That's why you need to compare work performed per unit time.

      Mainframe benchmarks are not performed like PC benchmarks; the idea it to completely remove (as much as possible) any constraint on the performance of the CPU (i.e., operate the CPU unconstrained). The measurement is solely the perform of the CPUs, and not the I/O subsystem.

      The problem is that microcoded instructions operate like very complex instructions. It's somewhat like comparing CISC to RISC. In this case, the PC CPU (say, a P4) you are using as a base is actually the RISC CPU in the comparison.

      MHz became very meaningless along time ago in the mainframe world. For a while, they had gone to adjusted MIPS (millions of instructions per second), based on an adjusted comparative value to an ancient mainframe. That fell apart about 15 years ago, and TPS (transactions per second; work per unit time) became the comparative measurement for judging the performance of a mainframe CPU. It's probably changed; I've been out of the field for 6+ years now.

      If you wanted to compare a PC CPU like the P4 to a mainframe CPU, you would need to establish an "equal workload unit", then measure the number of workload units completed in a given interval by each processing complex operating unconstrained.

      We spent 2 days just establishing and validating a baseline at the IBM Washington Systems complex for a benchmark about 10 years ago. It's not quite as simple as comparing the Mhz numbers. :-)

      --

      Can You Say Linux? I Knew That You Could.

  5. Re:Unclear - Reply by Qaseem · · Score: 2, Informative

    I need benchmarks for different products on the same platform. Thanks.

    --
    /-\ |-|
  6. Probably the wrong question... by loony · · Score: 2, Interesting

    Everyone knows that mainframes can be mighty fast when running OS/390 apps... the better question would be, how well does the zSeries Linux take advantage of IOPs and stuff like that... If it does, it should fly - if it doesnt, then you're probably better of running DB2 or something on the mainframe and have a couple of intel based linux boxes in front doing the rest of the work (webservers, ...) DOes anyone know if Linux on the zSeries takes advantages of the mainframe architecture?

    1. Re:Probably the wrong question... by Zurk · · Score: 2, Interesting

      yep it does. to give you some rough numbers (these are VERY ROUGH)....
      0.8 to 1 Mainframe MIPS for a Pentium 200.
      10 Mainframe MIPS or more for a dual CPU gigahertz class Pentium-iii box.
      IO Rates of 50 EXCP/second for an average PC disk I/O subsystem.
      IO rates of over 500 EXCP/second for an average PC RAID array (hardware).

      put these numbers and extrapolate to give you the mainframe equivalent to a PC.

    2. Re:Probably the wrong question... by Qaseem · · Score: 2, Interesting

      Could you tell me what is your source for these numbers.

      Thanks

      --
      /-\ |-|
    3. Re:Probably the wrong question... by Anonymous Coward · · Score: 0

      my S/390 box and my P-III and P200 linux boxen.
      the raid array i use is an icp vortex and the drives i use are quantum 10K rpm 9/18 gig.

    4. Re:Probably the wrong question... by Anonymous Coward · · Score: 0

      Well, those are roughly the numbers you get when running Hercules, which is an Open Source S/370, S/390, and zSeries emulator. Although the relative timing of Hercules' instructions bears little similarity to any actual S/390-derivative machine's.

      However, you're still measuring CPU utilization, not I/O throughput.

      To answer an earlier thread, of course Linux/390 uses the I/O processors--it's the only way to talk to your peripherals. Not surprisingly, I/O and memory-bandwidth-intensive apps do very well under Linux/390; CPU-intensive ones do pretty poorly. Pick the right tool for the job.