Skip to content

hello_world performance regression #97

Open
@jbreitbart

Description

@jbreitbart

The execution time of hello_world degraded by about 13% over the last several month.

Version checked in the uhyve repo:

time:   [224.29 ms 225.64 ms 226.60 ms]

Current master version with all features enabled, i.e. fsgsbase, pci, acpi:

time:   [253.29 ms 255.99 ms 258.55 ms]

Current master version with pci and acpi enabled:

time:   [250.02 ms 252.49 ms 254.95 ms]

Current master version with pci enabled:

time:   [250.88 ms 254.38 ms 257.67 ms]

Current master version with acpi enabled:

time:   [252.18 ms 254.48 ms 256.79 ms]

It seems to be that regardless of which feature is enabled, execution time is slower than it used to be and I am not sure why it is. The version checked in the uhyve repo seems to have at least pci enabled:

 ᨂ target/release/uhyve -v benches_data/hello_world_old
[0][INFO] Welcome to HermitCore-rs 0.3.37
[0][INFO] Kernel starts at 0x400000
[0][INFO] BSS starts at 0x5ca000
[0][INFO] TLS starts at 0x553dd0 (size 184 Bytes)
[0][INFO] Total memory size: 64 MB
[0][INFO] Kernel region: [0x400000 - 0x600000]
[0][INFO] A pure Rust application is running on top of HermitCore!
[0][INFO] Heap: size 50 MB, start address 0x600000
[0][INFO] Heap is located at 0x600000 -- 0x3800000 (0 Bytes unmapped)
[0][INFO]
[0][INFO] ===================== PHYSICAL MEMORY FREE LIST ======================
[0][INFO] 0x00000003800000 - 0x00000004000000
[0][INFO] ======================================================================
[0][INFO]
[0][INFO]
[0][INFO] ================== KERNEL VIRTUAL MEMORY FREE LIST ===================
[0][INFO] 0x00000003800000 - 0x00800000000000
[0][INFO] ======================================================================
[0][INFO]
[0][INFO]
[0][INFO] ========================== CPU INFORMATION ===========================
[0][INFO] Model:                   uhyve - unikernel hypervisor
[0][INFO] Frequency:               3693 MHz (from Hypervisor)
[0][INFO] SpeedStep Technology:    Not Available
[0][INFO] Features:                MMX SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AVX AESNI RDRAND FMA MOVBE MCE FXSR XSAVE RDTSCP CLFLUSH TSC-DEADLINE X2APIC HYPERVISOR AVX2 BMI1 BMI2 FSGSBASE
[0][INFO] Physical Address Width:  48 bits
[0][INFO] Linear Address Width:    48 bits
[0][INFO] Supports 1GiB Pages:     Yes
[0][INFO] ======================================================================
[0][INFO]
[0][INFO] HermitCore-rs booted on 2020-12-24 at 11:43:26
[0][INFO]
[0][INFO] ======================== PCI BUS INFORMATION =========================
[0][INFO] 00:00 Ethernet controller [0200]: Red Hat, Inc. Virtio network device [1AF4:1000], MemoryBar: 0xc000 (size 0x10)
[0][INFO] ======================================================================
[0][INFO]
[0][INFO] IOAPIC v0 has 1 entries
[0][INFO] HermitCore is running on uhyve!
[0][INFO] Found virtio device with device id 0x1000
[0][WARN] Legacy Virtio devices are not supported, skipping!
[INFO] Spawn network thread with id 2
[WARN] Ethernet interface not available
Hello World!
[0][INFO] Number of interrupts
[0][INFO] [0][7]: 3

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions