Friday, 25 June 2021

Linux for SPARC64 on QEMU sun4u - System Information

Linux for SPARC

The SPARC processor (Wikipedia) was the third processor to be supported in the Linux kernel (after x86 and Alpha) back in the mid 1990s. In his 1997 M.Sc. thesis: "Linux: a Portable Operating System", Linus Torvalds discussed the integration of Alpha and SPARC into the Linux kernel and the challenges of developing a portable operating system.

Looking for early Linux distributions supporting SPARC finds:

  • RedHat Linux 4.0 released 3-Oct-1996: 2.0.18 kernel supporting sun4c and sun4m.
  • RedHat Linux 6.0 released 26-Apr-1999: 2.2.5 kernel supporting sun4c, sun4m and sun4u
  • Debian Linux 2.1 (slink) released 9-May-1999: 2.0.35 kernel for sun4c and sun4m, and 2.2.1 kernel for sun4u

These Linux distributions were targeted at Sun's SPARC systems and did not support SPARC systems from other vendors, unless they were clones of Sun's systems.

In 1987 Sun Microsystems introduced its first 32-bit based SPARC systems, and Sun introduced its first 64-bit SPARC (UltraSparc) systems in late 1995 with the Ultra 1 and Ultra 2 workstations and their server variants, the Ultra Server 1 and Ultra Server 2.

The 64-bit SPARC specification had been released by SPARC International in 1993 and HAL Computer Systems (Wikipedia), a subsidiary of Fujitsu, brought the first SPARC64 workstations to market in 1995, with the release of the HALstation 300 series systems.

QEMU sun4u

Back in Linux for SPARC64 on QEMU I looked at installing Debian Linux for SPARC on a QEMU sun4u machine.

System Information - Debian Linux 11 (bullseye)

Let's see what the operating system has to say about the emulated machine.

uname

Operating system information:

$ uname -a
Linux debian 5.10.0-7-sparc64 #1 Debian 5.10.40-1 (2021-05-28) sparc64 GNU/Linux

A "Linux" kernel, on a node named "debian", kernel version "5.10.0-7-sparc64", kernel release "#1 Debian 5.10.40-1 (2021-05-28)", platform architecture "sparc64" for operating system "GNU/Linux".

lsb_release

Distribution information using the Linux Standard Base (LSB) (Wikipedia) tool:

$ lsb_release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 11 (bullseye)
Release:	11
Codename:	bullseye

This in-official release is tracking the forthcoming Debian Linux 11 (bullseye) release, rather the the official Debian Linux 10 (buster) release.

lscpu and /proc/cpuinfo

Processor information:

$ lscpu
Architecture:        sparc64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Big Endian
CPU(s):              1
On-line CPU(s) list: 0
Thread(s) per core:  1
Core(s) per socket:  1
Socket(s):           1
Model name:          TI UltraSparc IIi (Sabre)
Flags:               sun4u
$ cat /proc/cpuinfo 
cpu		: TI UltraSparc IIi (Sabre)
fpu		: UltraSparc IIi integrated FPU
pmu		: ultra12
prom		: OBP 3.10.24 1999/01/01 01:01
type		: sun4u
ncpus probed	: 1
ncpus active	: 1
D$ parity tl1	: 0
I$ parity tl1	: 0
Cpu0ClkTck	: 0000000005f5e100
cpucaps		: flush,stbar,swap,muldiv,v9,mul32,div32,v8plus,vis
MMU Type	: Spitfire
MMU PGSZs	: 8K,64K,512K,4MB

As expected this machine has a single UltraSPARC IIi processor (Wikipedia). This variant of the UltraSPARC II featured an on-chip PCI controller.

The Cpu0ClkTck line reports the CPU clock frequency in Hz for the first processor (CPU 0). In multi-processor and multi-core systems there are additional Cpu?ClkTck lines for numbered for each processor. For some reason the clock is reported in hexadecimial, in this case the value 0x5f5e100 equals 100,000,000. So the system reports the processor as clocked at 100.0 MHz.

lspci

PCI buses and devices

$ lspci -v
00:01.0 PCI bridge: Oracle/SUN Simba Advanced PCI Bridge (rev 11) (prog-if 00 [Normal decode])
	Device tree node: /sys/firmware/devicetree/base/pci@1f,0/pci@1
	Flags: bus master, 66MHz, medium devsel, latency 0
	Bus: primary=00, secondary=02, subordinate=02, sec-latency=64
	I/O behind bridge: [disabled]
	Memory behind bridge: [disabled]
	Prefetchable memory behind bridge: 0000000000000000-00000000000fffff [size=1M]

00:01.1 PCI bridge: Oracle/SUN Simba Advanced PCI Bridge (rev 11) (prog-if 00 [Normal decode])
	Device tree node: /sys/firmware/devicetree/base/pci@1f,0/pci@1,1
	Flags: bus master, 66MHz, medium devsel, latency 0
	Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
	I/O behind bridge: 00000000-00008fff [size=36K]
	Memory behind bridge: 20000000-210fffff [size=17M]
	Prefetchable memory behind bridge: 0000000000000000-00000000000fffff [size=1M]

01:01.0 Bridge: Oracle/SUN EBUS (rev 01)
	Subsystem: Red Hat, Inc. EBUS
	Device tree node: /sys/firmware/devicetree/base/pci@1f,0/pci@1,1/ebus@1
	Flags: 66MHz, medium devsel
	Memory at 20000000 (32-bit, non-prefetchable) [size=16M]
	I/O ports at 00000000 [virtual] [size=32K]

01:01.1 Ethernet controller: Oracle/SUN Happy Meal 10/100 Ethernet [hme]
	Subsystem: Red Hat, Inc. Happy Meal 10/100 Ethernet [hme]
	Device tree node: /sys/firmware/devicetree/base/pci@1f,0/pci@1,1/network@1,1
	Flags: bus master, fast devsel, latency 0, IRQ 00000007
	Memory at 21000000 (32-bit, non-prefetchable) [size=32K]
	Kernel driver in use: hme
	Kernel modules: sunhme

01:03.0 IDE interface: Silicon Image, Inc. PCI0646 (rev 07) (prog-if 8f [PCI native mode controller, supports both channels switched to ISA compatibility mode, supports bus mastering])
	Subsystem: Red Hat, Inc. PCI0646
	Device tree node: /sys/firmware/devicetree/base/pci@1f,0/pci@1,1/ide@3
	Flags: bus master, fast devsel, latency 0, IRQ 00000008
	I/O ports at 00008000 [size=8]
	I/O ports at 00008080 [size=4]
	I/O ports at 00008100 [size=8]
	I/O ports at 00008180 [size=4]
	I/O ports at 00008200 [size=16]
	Kernel driver in use: pata_cmd64x
	Kernel modules: pata_cmd64x, ata_generic

The integrated PCI bus controller on the UltraSPARC IIi (Sabre) isn't reported here. Instead we start with the two Simba PCI bus bridges, which are connected to it. These bridges split the PCI devices into those on the mainboard and those using the PCI slots. For this machine there are no PCI cards present in the slots, so only the integrated PCI devices are reported: the ethernet controller, the IDE interface, and the EBUS bridge to the other integrated devices (for this config that is mainly the PROM and serial port).

report-hw

A hardware report based on various commands:

$ report-hw 
uname -a: Linux debian 5.10.0-7-sparc64 #1 Debian 5.10.40-1 (2021-05-28) sparc64 GNU/Linux
lspci -knn: 00:01.0 PCI bridge [0604]: Oracle/SUN Simba Advanced PCI Bridge [108e:5000] (rev 11)
lspci -knn: 00:01.1 PCI bridge [0604]: Oracle/SUN Simba Advanced PCI Bridge [108e:5000] (rev 11)
lspci -knn: 01:01.0 Bridge [0680]: Oracle/SUN EBUS [108e:1000] (rev 01)
lspci -knn: 	Subsystem: Red Hat, Inc. EBUS [1af4:1100]
lspci -knn: 01:01.1 Ethernet controller [0200]: Oracle/SUN Happy Meal 10/100 Ethernet [hme] [108e:1001]
lspci -knn: 	Subsystem: Red Hat, Inc. Happy Meal 10/100 Ethernet [hme] [1af4:1100]
lspci -knn: 	Kernel driver in use: hme
lspci -knn: 	Kernel modules: sunhme
lspci -knn: 01:03.0 IDE interface [0101]: Silicon Image, Inc. PCI0646 [1095:0646] (rev 07)
lspci -knn: 	Subsystem: Red Hat, Inc. PCI0646 [1af4:1100]
lspci -knn: 	Kernel driver in use: pata_cmd64x
lspci -knn: 	Kernel modules: pata_cmd64x, ata_generic
usb: No USB information available
lsmod: Module                  Size  Used by
lsmod: sg                     24098  0
lsmod: drm                   387151  0
lsmod: drm_panel_orientation_quirks     1107  1 drm
lsmod: fuse                   99945  1
lsmod: i2c_core               54846  1 drm
lsmod: configfs               30127  1
lsmod: ip_tables              15827  0
lsmod: x_tables               23106  1 ip_tables
lsmod: autofs4                30809  2
lsmod: ext4                  716354  2
lsmod: crc16                   1657  1 ext4
lsmod: mbcache                 4772  1 ext4
lsmod: jbd2                   90264  1 ext4
lsmod: crc32c_generic          2362  3
lsmod: sd_mod                 45571  4
lsmod: t10_pi                  5012  1 sd_mod
lsmod: crc_t10dif              2287  1 t10_pi
lsmod: crct10dif_generic       2029  1
lsmod: crct10dif_common        1670  2 crct10dif_generic,crc_t10dif
lsmod: sr_mod                 16193  0
lsmod: cdrom                  50649  1 sr_mod
lsmod: ata_generic             3735  0
lsmod: pata_cmd64x             7963  3
lsmod: libata                212226  2 pata_cmd64x,ata_generic
lsmod: sunhme                 28751  0
lsmod: scsi_mod              199977  4 sd_mod,libata,sg,sr_mod
df: Filesystem     1K-blocks    Used Available Use% Mounted on
df: udev              496920       0    496920   0% /dev
df: tmpfs             101656     632    101024   1% /run
df: /dev/sda2        6721508 1147460   5212892  19% /
df: tmpfs             508240       0    508240   0% /dev/shm
df: tmpfs               5120       0      5120   0% /run/lock
df: /dev/sda1         484210   88706    370502  20% /boot
df: tmpfs             101648       0    101648   0% /run/user/1000
free:                total        used        free      shared  buff/cache   available
free: Mem:         1016488       39240      900712         632       76536      864592
free: Swap:         992960           0      992960
/proc/cmdline: console=ttyS0 root=/dev/sda2
/proc/cpuinfo: cpu		: TI UltraSparc IIi (Sabre)
/proc/cpuinfo: fpu		: UltraSparc IIi integrated FPU
/proc/cpuinfo: pmu		: ultra12
/proc/cpuinfo: prom		: OBP 3.10.24 1999/01/01 01:01
/proc/cpuinfo: type		: sun4u
/proc/cpuinfo: ncpus probed	: 1
/proc/cpuinfo: ncpus active	: 1
/proc/cpuinfo: D$ parity tl1	: 0
/proc/cpuinfo: I$ parity tl1	: 0
/proc/cpuinfo: Cpu0ClkTck	: 0000000005f5e100
/proc/cpuinfo: cpucaps		: flush,stbar,swap,muldiv,v9,mul32,div32,v8plus,vis
/proc/cpuinfo: MMU Type	: Spitfire
/proc/cpuinfo: MMU PGSZs	: 8K,64K,512K,4MB
/proc/ioports: 00000000-00000000 : pci@1f,0
/proc/ioports:   00000000-00000000 : PCI Bus 0000:01
/proc/ioports:     00000000-00000000 : 0000:01:01.0
/proc/ioports:       00000000-00000000 : su
/proc/ioports:       00000000-00000000 : eeprom@14,2000
/proc/ioports:       00000000-00000000 : power
/proc/ioports:     00000000-00000000 : 0000:01:03.0
/proc/ioports:       00000000-00000000 : pata_cmd64x
/proc/ioports:     00000000-00000000 : 0000:01:03.0
/proc/ioports:       00000000-00000000 : pata_cmd64x
/proc/ioports:     00000000-00000000 : 0000:01:03.0
/proc/ioports:       00000000-00000000 : pata_cmd64x
/proc/ioports:     00000000-00000000 : 0000:01:03.0
/proc/ioports:       00000000-00000000 : pata_cmd64x
/proc/ioports:     00000000-00000000 : 0000:01:03.0
/proc/ioports:       00000000-00000000 : pata_cmd64x
/proc/ioports:   00000000-00000000 : PCI Bus 0000:02
/proc/iomem: 00000000-00000000 : System RAM
/proc/iomem:   00000000-00000000 : Kernel code
/proc/iomem:   00000000-00000000 : Kernel data
/proc/iomem:   00000000-00000000 : Kernel bss
/proc/iomem: 00000000-00000000 : pci@1f,0
/proc/iomem:   00000000-00000000 : PCI Bus 0000:01
/proc/iomem:     00000000-00000000 : 0000:01:01.0
/proc/iomem:     00000000-00000000 : 0000:01:01.1
/proc/iomem:       00000000-00000000 : sunhme
/proc/iomem:   00000000-00000000 : PCI Bus 0000:02
/proc/iomem:   00000000-00000000 : IOMMU
/proc/interrupts:             CPU0       
/proc/interrupts:    0:      45107      none       timer
/proc/interrupts:    1:          0     sun4u     -IVEC      power
/proc/interrupts:    5:        517     sun4u     -IVEC      su(serial)
/proc/interrupts:    7:        527     sun4u     -IVEC      enp1s1f1
/proc/interrupts:    8:       4367     sun4u     -IVEC      pata_cmd64x
/proc/interrupts: NMI:          0      Non-maskable interrupts
/proc/meminfo: MemTotal:        1016488 kB
/proc/meminfo: MemFree:          900776 kB
/proc/meminfo: MemAvailable:     864656 kB
/proc/meminfo: Buffers:           10352 kB
/proc/meminfo: Cached:            55000 kB
/proc/meminfo: SwapCached:            0 kB
/proc/meminfo: Active:            32536 kB
/proc/meminfo: Inactive:          52968 kB
/proc/meminfo: Active(anon):        400 kB
/proc/meminfo: Inactive(anon):    20376 kB
/proc/meminfo: Active(file):      32136 kB
/proc/meminfo: Inactive(file):    32592 kB
/proc/meminfo: Unevictable:           0 kB
/proc/meminfo: Mlocked:               0 kB
/proc/meminfo: SwapTotal:        992960 kB
/proc/meminfo: SwapFree:         992960 kB
/proc/meminfo: Dirty:                 0 kB
/proc/meminfo: Writeback:             0 kB
/proc/meminfo: AnonPages:         20176 kB
/proc/meminfo: Mapped:            23792 kB
/proc/meminfo: Shmem:               632 kB
/proc/meminfo: KReclaimable:      11184 kB
/proc/meminfo: Slab:              21984 kB
/proc/meminfo: SReclaimable:      11184 kB
/proc/meminfo: SUnreclaim:        10800 kB
/proc/meminfo: KernelStack:        1120 kB
/proc/meminfo: PageTables:         1176 kB
/proc/meminfo: NFS_Unstable:          0 kB
/proc/meminfo: Bounce:                0 kB
/proc/meminfo: WritebackTmp:          0 kB
/proc/meminfo: CommitLimit:     1501200 kB
/proc/meminfo: Committed_AS:     123008 kB
/proc/meminfo: VmallocTotal:   6438256640 kB
/proc/meminfo: VmallocUsed:        2792 kB
/proc/meminfo: VmallocChunk:          0 kB
/proc/meminfo: Percpu:              256 kB
/proc/meminfo: AnonHugePages:         0 kB
/proc/meminfo: ShmemHugePages:        0 kB
/proc/meminfo: ShmemPmdMapped:        0 kB
/proc/meminfo: FileHugePages:         0 kB
/proc/meminfo: FilePmdMapped:         0 kB
/proc/meminfo: HugePages_Total:       0
/proc/meminfo: HugePages_Free:        0
/proc/meminfo: HugePages_Rsvd:        0
/proc/meminfo: HugePages_Surp:        0
/proc/meminfo: Hugepagesize:       8192 kB
/proc/meminfo: Hugetlb:               0 kB

Mostly redundant with what we've already seen... but the meminfo section shows the 1 GiB of memory, and the ioports section shows some of the ebus devices.

lshw

An alternative hardware report:

$ sudo lshw
debian                      
    description: Computer
    width: 64 bits
  *-core
       description: Motherboard
       physical id: 0
       clock: 500MHz
     *-firmware
          product: OpenFirmware 3
          physical id: 0
          logical name: /proc/device-tree
          capabilities: bootinfo
     *-cpu:0
          description: CPU
          physical id: 2
          bus info: cpu@0
          width: 32 bits
     *-cpu:1 DISABLED
          description: CPU
          physical id: 3
          bus info: cpu@1
     *-cpu:2 DISABLED
          description: CPU
          physical id: 4
          bus info: cpu@2
     *-memory
          description: System memory
          physical id: 5
          size: 992MiB
     *-pci:0
          description: PCI bridge
          product: Simba Advanced PCI Bridge
          vendor: Oracle/SUN
          physical id: 1
          bus info: pci@0000:00:01.0
          version: 11
          width: 32 bits
          clock: 66MHz
          capabilities: pci normal_decode bus_master
          resources: ioport:800000(size=8388608) memory:60000000-9fffffff
     *-pci:1
          description: PCI bridge
          product: Simba Advanced PCI Bridge
          vendor: Oracle/SUN
          physical id: 1.1
          bus info: pci@0000:00:01.1
          version: 11
          width: 32 bits
          clock: 66MHz
          capabilities: pci normal_decode bus_master
          resources: ioport:0(size=8388608) memory:20000000-5fffffff
        *-bridge UNCLAIMED
             description: Bridge
             product: EBUS
             vendor: Oracle/SUN
             physical id: 1
             bus info: pci@0000:01:01.0
             version: 01
             width: 32 bits
             clock: 66MHz
             capabilities: bridge
             configuration: latency=10
             resources: memory:20000000-20ffffff ioport:0(size=32768)
        *-network
             description: Ethernet interface
             product: Happy Meal 10/100 Ethernet [hme]
             vendor: Oracle/SUN
             physical id: 1.1
             bus info: pci@0000:01:01.1
             logical name: enp1s1f1
             version: 00
             serial: 52:54:00:12:34:56
             size: 100Mbit/s
             capacity: 100Mbit/s
             width: 32 bits
             clock: 33MHz
             capabilities: bus_master ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
             configuration: autonegotiation=on broadcast=yes driver=sunhme driverversion=2.02 duplex=full ip=10.0.2.15 latency=0 link=yes multicast=yes port=twisted pair speed=100Mbit/s
             resources: irq:7 memory:21000000-21007fff
        *-ide
             description: IDE interface
             product: PCI0646
             vendor: Silicon Image, Inc.
             physical id: 3
             bus info: pci@0000:01:03.0
             logical name: scsi0
             logical name: scsi1
             version: 07
             width: 32 bits
             clock: 33MHz
             capabilities: ide isa_compat_mode pci_native_mode bus_master emulated
             configuration: driver=pata_cmd64x latency=0
             resources: irq:8 ioport:8000(size=8) ioport:8080(size=4) ioport:8100(size=8) ioport:8180(size=4) ioport:8200(size=16)
           *-disk
                description: ATA Disk
                product: QEMU HARDDISK
                vendor: Linux
                physical id: 0
                bus info: scsi@0:0.0.0
                logical name: /dev/sda
                version: 1.0
                serial: ba63e42a-de73-4f20-ae5a-f8490498aa6a
                size: 488MiB
                capabilities: extended_attributes large_files ext2 initialized
                configuration: ansiversion=5 filesystem=ext2 lastmountpoint=/ logicalsectorsize=512 modified=2021-06-23 10:18:20 mounted=2021-06-23 10:16:36 sectorsize=512 state=clean
           *-cdrom
                description: DVD reader
                product: QEMU DVD-ROM
                vendor: QEMU
                physical id: 1
                bus info: scsi@1:0.0.0
                logical name: /dev/cdrom
                logical name: /dev/dvd
                logical name: /dev/sr0
                version: 2.5+
                capabilities: removable audio dvd
                configuration: ansiversion=5 status=ready
              *-medium
                   physical id: 0
                   logical name: /dev/cdrom

Here the relationships between the bits of hardware are visualized through a tree structure. Sadly this can't see through the EBUS bridge, so those devices are not reported.

Not sure why this sees two disabled CPUs, the workstations this QEMU machine is based on had a single processor. That said the higher end contemporary workstations from Sun (Ultra 60 and Ultra 80), did support multiple processors, but they used the regular UltraSPARC II, rather than the UltraSPARC IIi.

dmesg

System messages:

$ sudo dmesg
[    0.002050] PROMLIB: Sun IEEE Boot Prom 'OBP 3.10.24 1999/01/01 01:01'
[    0.005192] PROMLIB: Root node compatible: sun4u
[    0.007416] Linux version 5.10.0-7-sparc64 (debian-kernel@lists.debian.org) (gcc-10 (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2) #1 Debian 5.10.40-1 (2021-05-28)
[    0.021108] printk: bootconsole [earlyprom0] enabled
[    0.022389] ARCH: SUN4U
[    0.027814] Ethernet address: 52:54:00:12:34:56
[    0.029596] MM: PAGE_OFFSET is 0xfffff80000000000 (max_phys_bits == 40)
[    0.030730] MM: VMALLOC [0x0000000100000000 --> 0x0000060000000000]
[    0.031825] MM: VMEMMAP [0x0000060000000000 --> 0x00000c0000000000]
[    0.068013] Kernel: Using 4 locked TLB entries for main kernel image.
[    0.069158] Remapping the kernel... 
[    0.081348] done.
[    2.095155] OF stdout device is: /pci@1fe,0/pci@1,1/ebus@1/su
[    2.096467] PROM: Built device tree with 51658 bytes of memory.
[    2.099900] Top of RAM: 0x3fe80000, Total RAM: 0x3fe80000
[    2.101054] Memory hole size: 0MB
[    2.114577] Allocated 16384 bytes for kernel page tables.
[    2.117356] Zone ranges:
[    2.118635]   Normal   [mem 0x0000000000000000-0x000000003fe7ffff]
[    2.120428] Movable zone start for each node
[    2.121430] Early memory node ranges
[    2.122461]   node   0: [mem 0x0000000000000000-0x000000003fe7ffff]
[    2.124307] Initmem setup node 0 [mem 0x0000000000000000-0x000000003fe7ffff]
[    2.125825] On node 0 totalpages: 130880
[    2.126078]   Normal zone: 1151 pages used for memmap
[    2.126143]   Normal zone: 0 pages reserved
[    2.126684]   Normal zone: 130880 pages, LIFO batch:31
[    2.153977]   Normal zone: 192 pages in unavailable ranges
[    2.155157] Booting Linux...
[    2.156656] CPU CAPS: [flush,stbar,swap,muldiv,v9,mul32,div32,v8plus]
[    2.158245] CPU CAPS: [vis]
[    2.167167] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    2.167612] pcpu-alloc: [0] 0 
[    2.173669] Built 1 zonelists, mobility grouping on.  Total pages: 129729
[    2.174971] Kernel command line: console=ttyS0 root=/dev/sda2
[    2.193363] Dentry cache hash table entries: 131072 (order: 7, 1048576 bytes, linear)
[    2.195746] Inode-cache hash table entries: 65536 (order: 6, 524288 bytes, linear)
[    2.197142] Sorting __ex_table...
[    2.201234] mem auto-init: stack:off, heap alloc:on, heap free:off
[    2.219744] Memory: 993824K/1047040K available (8114K kernel code, 1418K rwdata, 2168K rodata, 496K init, 405K bss, 53216K reserved, 0K cma-reserved)
[    2.222734] random: get_random_u64 called from __kmem_cache_create+0x1c/0x420 with crng_init=0
[    2.234017] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    2.241284] ftrace: allocating 25951 entries in 51 pages
[    2.317993] ftrace: allocated 51 pages with 4 groups
[    2.378560] NR_IRQS: 2048, nr_irqs: 2048, preallocated irqs: 1
[    2.385333] clocksource: tick: mask: 0xffffffffffffffff max_cycles: 0x171024e7e0, max_idle_ns: 440795205315 ns
[    2.389981] clocksource: mult[a000000] shift[24]
[    2.391154] clockevent: mult[1999999a] shift[32]
[    2.401702] Console: colour dummy device 80x25
[    2.496167] calibrate_delay_direct() dropping min bogoMips estimate 1 = 436692
[    2.497405] Calibrating delay using timer specific routine.. 255.71 BogoMIPS (lpj=511431)
[    2.498639] pid_max: default: 32768 minimum: 301
[    2.501561] LSM: Security Framework initializing
[    2.504710] Yama: disabled by default; enable with sysctl kernel.yama.*
[    2.510248] AppArmor: AppArmor initialized
[    2.511242] TOMOYO Linux initialized
[    2.513897] Mount-cache hash table entries: 2048 (order: 1, 16384 bytes, linear)
[    2.515061] Mountpoint-cache hash table entries: 2048 (order: 1, 16384 bytes, linear)
[    2.587681] devtmpfs: initialized
[    2.605069] Performance events: No support for PMU type 'ultra12'
[    2.611355] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    2.612830] futex hash table entries: 256 (order: -1, 6144 bytes, linear)
[    2.633924] NET: Registered protocol family 16
[    2.674764] audit: initializing netlink subsys (disabled)
[    2.682557] audit: type=2000 audit(0.228:1): state=initialized audit_enabled=0 res=1
[    2.685609] thermal_sys: Registered thermal governor 'fair_share'
[    2.685894] thermal_sys: Registered thermal governor 'bang_bang'
[    2.687056] thermal_sys: Registered thermal governor 'step_wise'
[    2.688142] thermal_sys: Registered thermal governor 'user_space'
[    2.699611] pci@1f,0: PCI IO [io  0x1fe02000000-0x1fe02ffffff] offset 1fe02000000
[    2.701760] pci@1f,0: PCI MEM [mem 0x1ff00000000-0x1ffefffffff] offset 1ff00000000
[    2.703246] pci@1f,0: SABRE PCI Bus Module ver[0:0]
[    2.704398] PCI: Scanning PBM /pci@1f,0
[    2.710903] sabre ffe2e428: PCI host bridge to bus 0000:00
[    2.712512] pci_bus 0000:00: root bus resource [io  0x1fe02000000-0x1fe02ffffff] (bus address [0x0000-0xffffff])
[    2.713498] pci_bus 0000:00: root bus resource [mem 0x1ff00000000-0x1ffefffffff] (bus address [0x00000000-0xefffffff])
[    2.714886] pci_bus 0000:00: root bus resource [bus 00-02]
[    2.717517] pci 0000:00:01.1: [108e:5000] type 01 class 0x060400
[    2.723764] pci_bus 0000:01: extended config space not accessible
[    2.727535] pci 0000:01:01.0: [108e:1000] type 00 class 0x068000
[    2.728600] pci 0000:01:01.0: reg 0x10: [mem 0x1ff20000000-0x1ff20ffffff]
[    2.729777] pci 0000:01:01.0: reg 0x14: [io  0x1fe02000000-0x1fe02007fff]
[    2.732178] pci 0000:01:01.1: [108e:1001] type 00 class 0x020000
[    2.733401] pci 0000:01:01.1: reg 0x10: [mem 0x1ff21000000-0x1ff21007fff]
[    2.735381] pci 0000:01:03.0: [1095:0646] type 00 class 0x01018f
[    2.736350] pci 0000:01:03.0: reg 0x10: [io  0x1fe02008000-0x1fe02008007]
[    2.737534] pci 0000:01:03.0: reg 0x14: [io  0x1fe02008080-0x1fe02008083]
[    2.738512] pci 0000:01:03.0: reg 0x18: [io  0x1fe02008100-0x1fe02008107]
[    2.739440] pci 0000:01:03.0: reg 0x1c: [io  0x1fe02008180-0x1fe02008183]
[    2.740375] pci 0000:01:03.0: reg 0x20: [io  0x1fe02008200-0x1fe0200820f]
[    2.742427] pci 0000:00:01.0: [108e:5000] type 01 class 0x060400
[    2.744667] pci_bus 0000:02: extended config space not accessible
[    2.776941] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
[    2.778061] HugeTLB registered 8.00 MiB page size, pre-allocated 0 pages
[    2.779017] HugeTLB registered 256 MiB page size, pre-allocated 0 pages
[    2.779919] HugeTLB registered 2.00 GiB page size, pre-allocated 0 pages
[    4.199862] iommu: Default domain type: Translated 
[    4.207715] vgaarb: loaded
[    4.235564] NetLabel: Initializing
[    4.236756] NetLabel:  domain hash size = 128
[    4.238155] NetLabel:  protocols = UNLABELED CIPSOv4 CALIPSO
[    4.241185] NetLabel:  unlabeled traffic allowed by default
[    4.243463] /pci@1f,0/pci@1,1/ebus@1/eeprom@14,2000: Mostek regs at 0x1fe02002000
[    4.249517] clocksource: Switched to clocksource tick
[    4.629212] VFS: Disk quotas dquot_6.6.0
[    4.630918] VFS: Dquot-cache hash table entries: 1024 (order 0, 8192 bytes)
[    4.642264] AppArmor: AppArmor Filesystem Enabled
[    4.689680] NET: Registered protocol family 2
[    4.698617] IP idents hash table entries: 16384 (order: 4, 131072 bytes, linear)
[    4.710330] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 8192 bytes, linear)
[    4.711828] TCP established hash table entries: 8192 (order: 3, 65536 bytes, linear)
[    4.713083] TCP bind hash table entries: 8192 (order: 3, 65536 bytes, linear)
[    4.714871] TCP: Hash tables configured (established 8192 bind 8192)
[    4.717352] UDP hash table entries: 512 (order: 1, 16384 bytes, linear)
[    4.719156] UDP-Lite hash table entries: 512 (order: 1, 16384 bytes, linear)
[    4.726293] NET: Registered protocol family 1
[    4.727998] NET: Registered protocol family 44
[    4.729527] PCI: CLS 0 bytes, default 64
[    4.738914] Trying to unpack rootfs image as initramfs...
[    7.886706] Freeing initrd memory: 22144K
[    7.888752] power: Control reg at 1fe02007240
[    7.900422] Initialise system trusted keyrings
[    7.904369] Key type blacklist registered
[    7.906528] workingset: timestamp_bits=46 max_order=17 bucket_order=0
[    7.952956] zbud: loaded
[    7.960728] integrity: Platform Keyring initialized
[    7.962084] Key type asymmetric registered
[    7.963280] Asymmetric key parser 'x509' registered
[    7.964801] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[    7.970269] io scheduler mq-deadline registered
[    8.174534] ffe30af0: ttyS0 at MMIO 0x1fe020003f8 (irq = 5, base_baud = 115387) is a 16550A
[    8.178607] Console: ttyS0 (SU)
[    8.186949] printk: console [ttyS0] enabled
[    8.192027] printk: bootconsole [earlyprom0] disabled
[    8.214901] mousedev: PS/2 mouse device common for all mice
[    8.227989] rtc-m48t59 rtc-m48t59.0: IRQ index 0 not found
[    8.232791] rtc-m48t59 rtc-m48t59.0: registered as rtc0
[    8.234575] rtc-m48t59 rtc-m48t59.0: setting system clock to 2021-06-23T13:29:50 UTC (1624454990)
[    8.255307] ledtrig-cpu: registered to indicate activity on CPUs
[    8.263115] NET: Registered protocol family 10
[    8.977363] Segment Routing with IPv6
[    8.978700] mip6: Mobile IPv6
[    8.979075] NET: Registered protocol family 17
[    8.979980] mpls_gso: MPLS GSO support
[    8.981109] registered taskstats version 1
[    8.981809] Loading compiled-in X.509 certificates
[    9.294055] Loaded X.509 cert 'Debian Secure Boot CA: 6ccece7e4c6c0d1f6149f3dd27dfcc5cbb419ea1'
[    9.295522] Loaded X.509 cert 'Debian Secure Boot Signer 2021 - linux: 4b6ef5abca669825178e052c84667ccbc0531f8c'
[    9.297123] zswap: loaded using pool lzo/zbud
[    9.299869] Key type ._fscrypt registered
[    9.300037] Key type .fscrypt registered
[    9.300191] Key type fscrypt-provisioning registered
[    9.302853] AppArmor: AppArmor sha1 policy hashing enabled
[    9.389341] This architecture does not have kernel memory protection.
[    9.389923] Run /init as init process
[    9.390216]   with arguments:
[    9.390288]     /init
[    9.390338]   with environment:
[    9.390384]     HOME=/
[    9.390430]     TERM=linux
[   14.160665] scsi_mod: module verification failed: signature and/or required key missing - tainting kernel
[   14.322883] sunhme.c:v3.10 August 26, 2008 David S. Miller (davem@davemloft.net)
[   14.345423] SCSI subsystem initialized
[   14.538804] eth0: HAPPY MEAL (PCI/CheerIO) 10/100BaseT Ethernet 
[   14.539233] 52:54:00:12:34:56
[   14.596989] libata version 3.00 loaded.
[   14.756623] scsi host0: pata_cmd64x
[   14.831271] scsi host1: pata_cmd64x
[   14.833056] ata1: PATA max UDMA/33 cmd 0x1fe02008000 ctl 0x1fe02008080 bmdma 0x1fe02008200 irq 8
[   14.833416] ata2: PATA max UDMA/33 cmd 0x1fe02008100 ctl 0x1fe02008180 bmdma 0x1fe02008208 irq 8
[   14.838870] pata_cmd64x: active 10 recovery 10 setup 3.
[   14.839135] pata_cmd64x: active 10 recovery 10 setup 3.
[   15.014514] ata1.01: NODEV after polling detection
[   15.017506] ata1.00: ATA-7: QEMU HARDDISK, 2.5+, max UDMA/100
[   15.018168] ata1.00: 16777216 sectors, multi 16: LBA48 
[   15.019626] pata_cmd64x: active 3 recovery 1 setup 1.
[   15.167071] scsi 0:0:0:0: Direct-Access     ATA      QEMU HARDDISK    2.5+ PQ: 0 ANSI: 5
[   15.208257] pata_cmd64x: active 10 recovery 10 setup 3.
[   15.208320] pata_cmd64x: active 10 recovery 10 setup 3.
[   15.366651] ata2.01: NODEV after polling detection
[   15.374686] ata2.00: ATAPI: QEMU DVD-ROM, 2.5+, max UDMA/100
[   15.375190] pata_cmd64x: active 4 recovery 2 setup 1.
[   15.406280] scsi 1:0:0:0: CD-ROM            QEMU     QEMU DVD-ROM     2.5+ PQ: 0 ANSI: 5
[   16.159120] hme 0000:01:01.1 enp1s1f1: renamed from eth0
[   16.529104] sr 1:0:0:0: [sr0] scsi3-mmc drive: 4x/4x cd/rw xa/form2 tray
[   16.530166] cdrom: Uniform CD-ROM driver Revision: 3.20
[   16.575813] sd 0:0:0:0: [sda] 16777216 512-byte logical blocks: (8.59 GB/8.00 GiB)
[   16.585076] sd 0:0:0:0: [sda] Write Protect is off
[   16.585587] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
[   16.613084] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[   16.687372] sr 1:0:0:0: Attached scsi CD-ROM sr0
[   16.706470]  sda: sda1 sda2 sda3 sda4
[   16.888612] sd 0:0:0:0: [sda] Attached SCSI disk
[   19.565143] PM: Image not found (code -22)
[   19.575836] random: fast init done
[   20.781347] crc32c_sparc64: sparc64 crc32c opcode not available.
[   21.063724] EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: (null)
[   22.562728] Not activating Mandatory Access Control as /sbin/tomoyo-init does not exist.
[   24.447845] random: crng init done
[   25.431555] systemd[1]: Inserted module 'autofs4'
[   26.132824] systemd[1]: systemd 247.3-5 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +ZSTD -SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=unified)
[   26.148835] systemd[1]: Detected architecture sparc64.
[   26.258345] systemd[1]: Set hostname to <debian>.
[   42.759510] systemd[1]: Queued start job for default target Graphical Interface.
[   42.865457] systemd[1]: Created slice system-getty.slice.
[   42.908740] systemd[1]: Created slice system-modprobe.slice.
[   42.936756] systemd[1]: Created slice system-serial\x2dgetty.slice.
[   42.964127] systemd[1]: Created slice system-systemd\x2dfsck.slice.
[   42.991388] systemd[1]: Created slice User and Session Slice.
[   43.007927] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[   43.051846] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[   43.089656] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
[   43.113175] systemd[1]: Reached target Local Encrypted Volumes.
[   43.124516] systemd[1]: Reached target Paths.
[   43.136465] systemd[1]: Reached target Remote File Systems.
[   43.146693] systemd[1]: Reached target Slices.
[   43.171505] systemd[1]: Listening on Syslog Socket.
[   43.201222] systemd[1]: Listening on fsck to fsckd communication Socket.
[   43.222577] systemd[1]: Listening on initctl Compatibility Named Pipe.
[   43.251467] systemd[1]: Listening on Journal Audit Socket.
[   43.272630] systemd[1]: Listening on Journal Socket (/dev/log).
[   43.295215] systemd[1]: Listening on Journal Socket.
[   43.322506] systemd[1]: Listening on udev Control Socket.
[   43.340170] systemd[1]: Listening on udev Kernel Socket.
[   43.431381] systemd[1]: Mounting Huge Pages File System...
[   43.544086] systemd[1]: Mounting POSIX Message Queue File System...
[   43.742769] systemd[1]: Mounting Kernel Debug File System...
[   43.984081] systemd[1]: Mounting Kernel Trace File System...
[   44.292134] systemd[1]: Starting Set the console keyboard layout...
[   44.474322] systemd[1]: Starting Create list of static device nodes for the current kernel...
[   44.818461] systemd[1]: Starting Load Kernel Module configfs...
[   45.111839] systemd[1]: Starting Load Kernel Module drm...
[   45.465143] systemd[1]: Starting Load Kernel Module fuse...
[   45.564290] systemd[1]: Condition check resulted in Set Up Additional Binary Formats being skipped.
[   45.584864] systemd[1]: Condition check resulted in File System Check on Root Device being skipped.
[   46.116927] systemd[1]: Starting Journal Service...
[   46.677268] systemd[1]: Starting Load Kernel Modules...
[   46.756127] fuse: init (API version 7.32)
[   46.982301] systemd[1]: Starting Remount Root and Kernel File Systems...
[   47.245137] systemd[1]: Starting Coldplug All udev Devices...
[   48.515090] systemd[1]: Mounted Huge Pages File System.
[   48.636903] systemd[1]: Mounted POSIX Message Queue File System.
[   48.760569] systemd[1]: Mounted Kernel Debug File System.
[   48.859040] systemd[1]: Mounted Kernel Trace File System.
[   49.059735] systemd[1]: Finished Create list of static device nodes for the current kernel.
[   49.304031] systemd[1]: modprobe@configfs.service: Succeeded.
[   49.431574] systemd[1]: Finished Load Kernel Module configfs.
[   49.673685] systemd[1]: modprobe@drm.service: Succeeded.
[   49.767328] systemd[1]: Finished Load Kernel Module drm.
[   49.971012] systemd[1]: modprobe@fuse.service: Succeeded.
[   50.051282] systemd[1]: Finished Load Kernel Module fuse.
[   50.523315] systemd[1]: Mounting FUSE Control File System...
[   50.896486] systemd[1]: Mounting Kernel Configuration File System...
[   52.400680] systemd[1]: Mounted FUSE Control File System.
[   52.495289] systemd[1]: Mounted Kernel Configuration File System.
[   56.899409] systemd[1]: Finished Load Kernel Modules.
[   57.238947] systemd[1]: Starting Apply Kernel Variables...
[   57.659168] EXT4-fs (sda2): re-mounted. Opts: errors=remount-ro
[   58.259161] systemd[1]: Finished Remount Root and Kernel File Systems.
[   58.361432] systemd[1]: Condition check resulted in Rebuild Hardware Database being skipped.
[   58.405318] systemd[1]: Condition check resulted in Platform Persistent Storage Archival being skipped.
[   58.653291] systemd[1]: Starting Load/Save Random Seed...
[   59.029827] systemd[1]: Starting Create System Users...
[   63.225620] systemd[1]: Started Journal Service.
[   70.624026] systemd-journald[163]: Received client request to flush runtime journal.
[   79.853041] sd 0:0:0:0: Attached scsi generic sg0 type 0
[   79.890668] sr 1:0:0:0: Attached scsi generic sg1 type 5
[   89.404783] Adding 992960k swap on /dev/sda4.  Priority:-2 extents:1 across:992960k FS
[   94.182956] EXT4-fs (sda1): mounting ext2 file system using the ext4 subsystem
[   94.216709] EXT4-fs (sda1): mounted filesystem without journal. Opts: (null)
[   94.217381] ext2 filesystem being mounted at /boot supports timestamps until 2038 (0x7fffffff)
[  102.294187] enp1s1f1: Link is up using 
[  102.294246] internal 
[  102.294539] transceiver at 
[  102.294720] 100Mb/s, Full Duplex.

Lots of stuff in here, mostly relating to the detection of the relevant bits of emulated hardware. Thus we see the QEMU manufacturer on some devices.

Benchmark

To get an idea of how the emulated machine compares with real hardware we need some benchmarks...

BogoMips

The BogoMips (Wikipedia) pseudo-benchmark has a behavior where the score is related to the processor clock speed, and has an easily available collection of results from a range of systems (see BogoMips mini-Howto).

[    2.496167] calibrate_delay_direct() dropping min bogoMips estimate 1 = 436692
[    2.497405] Calibrating delay using timer specific routine.. 255.71 BogoMIPS (lpj=511431)

The BogoMips method here uses a timer rather than the system clock, to measure CPU clock ticks in an shorter interval. This method gives a result that is around double the CPU clock speed. So from our result of about 256 BogoMips, we can estimate the processor clock to be around 128 MHz. Which suggests performance around that of the first generation of UltraSPARC workstations, and around half of the expected performance of the Ultra 5 & Ultra 10 workstations.

Note: on some UltraSPARC systems a very low BogoMips result is returned. This is apparently due to an issue with the timer used being of a higher frequency than expected. As far as I can tell this issue does not affect the Ultra 5 & Ultra 10 workstations the QEMU sun4u machine is based on.

OpenSSL

The OpenSSL library of cryptographic methods provides a means to test the performance of the methods. Using this we can get a feel for the computational performance of a system, and comparisons with real hardware and other emulations can show how well a particular emulation performs. Since we are mainly interested in old hardware, we'll test using two of the older methods: MD5 and RSA.

First Message Digest 5 (MD5) (Wikipedia):

$ openssl speed md5
Doing md5 for 3s on 16 size blocks: 963775 md5's in 2.99s
Doing md5 for 3s on 64 size blocks: 912624 md5's in 2.99s
Doing md5 for 3s on 256 size blocks: 746261 md5's in 2.99s
Doing md5 for 3s on 1024 size blocks: 430432 md5's in 2.99s
Doing md5 for 3s on 8192 size blocks: 88506 md5's in 2.99s
Doing md5 for 3s on 16384 size blocks: 44569 md5's in 2.99s
OpenSSL 1.1.1k  25 Mar 2021
built on: Thu Mar 25 20:49:34 2021 UTC
options:bn(64,32) rc4(char) des(int) aes(partial) blowfish(ptr) 
compiler: gcc -fPIC -pthread -Wa,--noexecstack -Wall -m64 -mcpu=ultrasparc -DB_ENDIAN -Wa,--noexecstack -g -O2 -ffile-prefix-map=/build/openssl-RqngBi/openssl-1.1.1k=. -fstack-protector-strong -Wformat -Werror=format-security -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DNDEBUG -Wdate-time -D_FORTIFY_SOURCE=2
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
md5               5157.32k    19534.43k    63893.92k   147412.16k   242488.68k   244220.23k

And then RSA (Rivest–Shamir–Adleman) (Wikipedia):

$ openssl speed rsa
Doing 512 bits private rsa's for 10s: 5387 512 bits private RSA's in 9.98s
Doing 512 bits public rsa's for 10s: 47102 512 bits public RSA's in 9.99s
Doing 1024 bits private rsa's for 10s: 1142 1024 bits private RSA's in 9.97s
Doing 1024 bits public rsa's for 10s: 19684 1024 bits public RSA's in 9.98s
Doing 2048 bits private rsa's for 10s: 177 2048 bits private RSA's in 10.04s
Doing 2048 bits public rsa's for 10s: 6441 2048 bits public RSA's in 9.99s
Doing 3072 bits private rsa's for 10s: 61 3072 bits private RSA's in 10.03s
Doing 3072 bits public rsa's for 10s: 3054 3072 bits public RSA's in 9.98s
Doing 4096 bits private rsa's for 10s: 27 4096 bits private RSA's in 10.03s
Doing 4096 bits public rsa's for 10s: 1755 4096 bits public RSA's in 9.97s
Doing 7680 bits private rsa's for 10s: 5 7680 bits private RSA's in 11.47s
Doing 7680 bits public rsa's for 10s: 527 7680 bits public RSA's in 10.00s
Doing 15360 bits private rsa's for 10s: 1 15360 bits private RSA's in 17.50s
Doing 15360 bits public rsa's for 10s: 135 15360 bits public RSA's in 10.05s
OpenSSL 1.1.1k  25 Mar 2021
built on: Thu Mar 25 20:49:34 2021 UTC
options:bn(64,32) rc4(char) des(int) aes(partial) blowfish(ptr) 
compiler: gcc -fPIC -pthread -Wa,--noexecstack -Wall -m64 -mcpu=ultrasparc -DB_ENDIAN -Wa,--noexecstack -g -O2 -ffile-prefix-map=/build/openssl-RqngBi/openssl-1.1.1k=. -fstack-protector-strong -Wformat -Werror=format-security -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DNDEBUG -Wdate-time -D_FORTIFY_SOURCE=2
                  sign    verify    sign/s verify/s
rsa  512 bits 0.001853s 0.000212s    539.8   4714.9
rsa 1024 bits 0.008730s 0.000507s    114.5   1972.3
rsa 2048 bits 0.056723s 0.001551s     17.6    644.7
rsa 3072 bits 0.164426s 0.003268s      6.1    306.0
rsa 4096 bits 0.371481s 0.005681s      2.7    176.0
rsa 7680 bits 2.294000s 0.018975s      0.4     52.7
rsa 15360 bits 17.500000s 0.074444s      0.1     13.4

Extracting the relevant figures for comparisons (see OpenSSL Speed Results):

  • OpenSSL speed MD5 8,192 bytes: 242,488.68k
  • OpenSSL speed RSA 4,096 bytes sign/s: 2.7
  • OpenSSL speed RSA 4,096 bytes verify/s: 176.0

These provide a rough idea of computational workload performance for this particular machine. From the collected results these figures look very good considering this is emulation.

Thoughts

QEMU's sun4u machine is a generic UltraSPARC IIi system, with similarities to Sun's Ultra 5 and Ultra 10 workstations, which supports Linux well. Performance is less than for those workstations (as expected of emulation of a late 1990s workstation), and looks to be more akin to the Ultra 1 and Ultra 2 workstations. Still this is more than sufficient for typical hobbyist usage.

Further Sources

More information can be found at:


No comments: