Image Map Image Map
Page 40 of 40 FirstFirst ... 303637383940
Results 391 to 396 of 396

Thread: Looking for volunteers to help test a new benchmark

  1. #391
    Join Date
    Jan 2014
    Location
    Western North Carolina, USA
    Posts
    869

    Default

    Alright, I've been thinking about TOPBENCH for quite some time now, but in a non-PC sort of way; hope that doesnt annoy everyone.

    Before I dig too deeply into the code, has anyone done any investigation or work on porting to say CP/M for Z80? I've thought about trying a port to Z280 to get some numbers for the CPU280,. The Pascal portions might not be too difficult, but the asm portions of course would have to be rewritten, and the video benchmarks would be pretty much useless. But I've wondered about a more universal and non-PC-capable benchmark that could at least make a reasonably-close comparison between architectures (like the Byte Unix benchmarks do for the old-school Unix world).

    And I know the difficulty of cross-arch benchmarking; but, again, the Byte Unixbench suite did that pretty successfully for the very architecture-diverse Unix world (successfully comparing performance between a VAX, a 68K workstation, and SPARC).

    Perhaps someone has asked about this before in this 39-page thread; a quick (really quick!) skim didn't find anything, but I reserve the right to be wrong.....
    --
    Bughlt: Sckmud
    Shut her down Scotty, she's sucking mud again!

  2. #392

    Default

    Quote Originally Posted by lowen View Post
    Alright, I've been thinking about TOPBENCH for quite some time now, but in a non-PC sort of way; hope that doesnt annoy everyone.

    Before I dig too deeply into the code, has anyone done any investigation or work on porting to say CP/M for Z80? I've thought about trying a port to Z280 to get some numbers for the CPU280,. The Pascal portions might not be too difficult, but the asm portions of course would have to be rewritten, and the video benchmarks would be pretty much useless. But I've wondered about a more universal and non-PC-capable benchmark that could at least make a reasonably-close comparison between architectures (like the Byte Unix benchmarks do for the old-school Unix world).

    And I know the difficulty of cross-arch benchmarking; but, again, the Byte Unixbench suite did that pretty successfully for the very architecture-diverse Unix world (successfully comparing performance between a VAX, a 68K workstation, and SPARC).

    Perhaps someone has asked about this before in this 39-page thread; a quick (really quick!) skim didn't find anything, but I reserve the right to be wrong.....
    I'd go for porting to odd varieties of non-IBM-PC DOS before porting for CP/M, but you'll run into the same problem in both cases. Neither DOS or CP/M have any native ways of precise timekeeping, so a benchmark must be tailor-made for a particular system. If I'm not mistaken, TOPBENCH uses some DMA hack to determine the CPU speed. Such things can be very difficult to replicate on non-PC systems.
    Current systems owned by me:
    Vintage:IBM PC/XT submodel 087 ( 1983 ), [Kon]tiki-100 rev. C (1983), Compaq Portable I ( 1984 ), IBM PC/XT submodel 078 ( 1985 ), IBM PC/XT286 ( ~1986 ), 3x Nintendo Entertainement Systems ( 1987 ).
    Obsolete:Commodore A500 ( ~1990 ), IBM PS/2 model 70/386 type 8570-161 ( 1991 ), Atari Lynx II ( ~1992 ), Generic Intel 486SX PC ( ~1993 ), AT/T Globalyst Pentium w/FDIV bug MB ( 1994 ), Compaq 486DX4 laptop ( ~1995 ).

  3. #393
    Join Date
    Aug 2006
    Location
    Chicagoland, Illinois, USA
    Posts
    4,606
    Blog Entries
    1

    Default

    Quote Originally Posted by lowen View Post
    Before I dig too deeply into the code, has anyone done any investigation or work on porting to say CP/M for Z80?
    I'd recommend against that; TOPBENCH was deliberately designed for x86 systems only, to create a synthetic score to use as a means to compare different x86 CPUs against each other based only on the time it takes for their instruction opcodes to execute in various situations. It was never meant to be portable to other CPU architectures or environments. If you want something to compare across all systems, a more generic workload-only benchmark would be more appropriate; see below:

    But I've wondered about a more universal and non-PC-capable benchmark that could at least make a reasonably-close comparison between architectures (like the Byte Unix benchmarks do for the old-school Unix world).
    The "problem" with that is that if you create a portable piece of code, it is possible for that code to be compiled differently depending on what compiler is used (even if all the compilers you try are for the same architecture). That's why the TOPBENCH metric code was written in assembler. With very few and irrelevant exceptions, the code assembles the same no matter the assembler.

    And I know the difficulty of cross-arch benchmarking; but, again, the Byte Unixbench suite did that pretty successfully for the very architecture-diverse Unix world (successfully comparing performance between a VAX, a 68K workstation, and SPARC).
    I'd say try porting that, except it contains a ton of unix-centric system calls (exec(), pipe-based context switching, etc.), as well as I/O-limited stuff (copying a file), so that won't be portable across all systems. It's portable across all UNIX systems, yes, but not all systems.

    If I were you, making a benchmark to compare across all systems, I'd do the following:

    • Pick some common benchmark workloads (dhrystone, whetstone, etc.)
    • Determine if you are measuring the performance of the hardware only, or the entire system (hardware+OS+I/O)
    • ..If hardware only, describe the workload in pseudocode but allow anyone to write an optimized version of it for a CPU (maybe even in assembler) so that the CPU isn't penalized by bad compilers
    • ..If entire system, write portable C code

    Here is a recent resurrection of the Byte Unixbench; it contains both a dhrystone and a whetstone, so maybe those could be lifted.

    Quote Originally Posted by per View Post
    TOPBENCH uses some DMA hack to determine the CPU speed.
    It's nothing that heinous; TOPBENCH reprograms the INT 08 PIT interrupt to fire at 20Hz instead of 18.2Hz so that the time measurements are done with integers in milliseconds, then it programs it back so that DOS time doesn't skew too much. In retrospect, this was unnecessary; I could have gotten the same accuracy if I had just monitored the 8253 timer value ports. Oh well, can't change it now without potentially invalidating the numbers in the database.
    Offering a bounty for:
    - Documentation and original distribution disks for: Panasonic Sr. Partner, Corona PPC-400, Zenith Z-160 series
    - Music Construction Set, IBM Music Feature edition (has red sticker on front stating IBM Music Feature)
    - Any very old/ugly IBM joystick (such as the Franklin JS-123)

  4. #394
    Join Date
    Jan 2014
    Location
    Western North Carolina, USA
    Posts
    869

    Default

    Quote Originally Posted by Trixter View Post
    I'd recommend against that; TOPBENCH was deliberately designed for x86 systems only, to create a synthetic score to use as a means to compare different x86 CPUs against each other based only on the time it takes for their instruction opcodes to execute in various situations. It was never meant to be portable to other CPU architectures or environments. If you want something to compare across all systems, a more generic workload-only benchmark would be more appropriate; see below:.....
    Thanks for the nicely worded reply. I suspected as much, but it never hurts to ask. I really would like to find a comparison between some of the newer turbo-Z80's (eZ80@50Hz, Z8S180@ 49MHz (there is at least one P112 out there that has run at 49MHz!), Z280@12MHz even though it's not newer) and the x86 family for some common operations. Especially the comparison between a 286 @12 and a Z280 @12.
    --
    Bughlt: Sckmud
    Shut her down Scotty, she's sucking mud again!

  5. #395

    Default

    Okay I finally got my Zenith Z-159 up and running and Topbench was the 2nd program I ran after Commander Keen. Results with turbo on and off:

    Code:
    [UID50471A772]
    MemoryTest=3887
    OpcodeTest=1842
    VidramTest=2743
    MemEATest=2049
    3DGameTest=1924
    Score=4
    CPU=Intel 8088-2
    CPUspeed=4.77 MHz
    BIOSinfo= Copyright (C) 1986, by Zenith Data Systems (
    BIOSdate=20000101
    BIOSCRC16=5047
    VideoSystem=EGA
    VideoAdapter=Paradise PEGA 1A
    Machine=XT Clone (Zenith Z-159 @4.77MHz)
    Description=A British Telecom rebadge of a Z-159 in normal mode running DOS 3.20
    Submitter=brassicGamer (VCF)
    Code:
    [UID50472959A]
    MemoryTest=2307
    OpcodeTest=1087
    VidramTest=2113
    MemEATest=1210
    3DGameTest=1141
    Score=6
    CPU=Intel 8088-2
    CPUspeed=8 MHz
    BIOSinfo=Copyright (C) 1986, by Zenith Data Systems (
    BIOSdate=20000101
    BIOSCRC16=5047
    VideoSystem=EGA
    VideoAdapter=Paradise PEGA 1A
    Machine=XT Clone (Zenith Z-159 @8MHz)
    Description=A British Telecom rebadge of a Z-159 in turbo mode running DOS 3.2
    Submitter=brassicGamer (VCF)
    I have to say I was very impressed with the performance of this computer @ 8MHz - the zero wait states really makes a difference versus a comparable AT.

  6. #396
    Join Date
    Aug 2006
    Location
    Chicagoland, Illinois, USA
    Posts
    4,606
    Blog Entries
    1

    Default

    I'm not sure what you mean about the wait states, since it's slower than an AT. But thanks for the results, I'll add them to the database!
    Offering a bounty for:
    - Documentation and original distribution disks for: Panasonic Sr. Partner, Corona PPC-400, Zenith Z-160 series
    - Music Construction Set, IBM Music Feature edition (has red sticker on front stating IBM Music Feature)
    - Any very old/ugly IBM joystick (such as the Franklin JS-123)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •