From 6111e79686ef34644cf58d08a50bceff41f88ac3 Mon Sep 17 00:00:00 2001 From: rubberhead Date: Sun, 17 Mar 2024 23:50:44 +0000 Subject: [PATCH] ... --- results/lshw-rose.out | 813 +++++++++++++++++++++++++++++++++++++++++ tex/.gitignore | 3 + tex/draft/skeleton.pdf | Bin 250336 -> 256036 bytes tex/draft/skeleton.tex | 115 +++++- 4 files changed, 918 insertions(+), 13 deletions(-) create mode 100644 results/lshw-rose.out diff --git a/results/lshw-rose.out b/results/lshw-rose.out new file mode 100644 index 0000000..8c4459b --- /dev/null +++ b/results/lshw-rose.out @@ -0,0 +1,813 @@ +rose + description: Rack Mount Chassis + product: R152-P31-00 (01234567890123456789AB) + vendor: GIGABYTE + version: 0100 + serial: GMGBN5912A0001 + width: 64 bits + capabilities: smbios-3.4.0 dmi-3.4.0 smp cp15_barrier setend swp tagged_addr_disabled + configuration: administrator_password=disabled boot=normal chassis=rackmount family=Server frontpanel_password=disabled keyboard_password=disabled power-on_password=disabled sku=01234567890123456789AB uuid=00000000-0000-4000-8000-74563c400508 + *-core + description: Motherboard + product: MP32-AR1-00 + vendor: GIGABYTE + physical id: 0 + version: 01010101 + serial: MG5N7200007 + slot: 01234567890123456789AB + *-firmware + description: BIOS + vendor: GIGABYTE + physical id: 0 + version: F31h (SCP: 2.10.20220531) + date: 07/27/2022 + size: 1MiB + capabilities: pci upgrade cdboot bootselect acpi uefi + *-memory + description: System Memory + physical id: 11 + slot: System board or motherboard + size: 256GiB + capacity: 4TiB + capabilities: ecc + configuration: errordetection=multi-bit-ecc + *-bank:0 + description: DIMM DDR4 3200 MHz (0.3 ns) + product: M393A4K40DB3-CWE + vendor: Samsung + physical id: 0 + serial: 46BD4FB0 + slot: DIMM_P0_A0 + size: 32GiB + width: 64 bits + clock: 3200MHz (0.3ns) + *-bank:1 + description: DIMM DDR4 3200 MHz (0.3 ns) + product: M393A4K40DB3-CWE + vendor: Samsung + physical id: 1 + serial: 1777F656 + slot: DIMM_P0_A1 + size: 32GiB + width: 64 bits + clock: 3200MHz (0.3ns) + *-bank:2 + description: DIMM DDR4 3200 MHz (0.3 ns) + product: M393A4K40DB3-CWE + vendor: Samsung + physical id: 2 + serial: 46BD4F9E + slot: DIMM_P0_B0 + size: 32GiB + width: 64 bits + clock: 3200MHz (0.3ns) + *-bank:3 + description: DIMM DDR4 3200 MHz (0.3 ns) + product: M393A4K40DB3-CWE + vendor: Samsung + physical id: 3 + serial: 46BD4FB1 + slot: DIMM_P0_B1 + size: 32GiB + width: 64 bits + clock: 3200MHz (0.3ns) + *-bank:4 + description: DIMM [empty] + product: Array 1 Part Number 5 + vendor: Array 1 Manufacturer 5 + physical id: 4 + serial: Array 1 Serial Number 5 + slot: DIMM_P0_C0 + *-bank:5 + description: DIMM [empty] + product: Array 1 Part Number 6 + vendor: Array 1 Manufacturer 6 + physical id: 5 + serial: Array 1 Serial Number 6 + slot: DIMM_P0_C1 + *-bank:6 + description: DIMM [empty] + product: Array 1 Part Number 7 + vendor: Array 1 Manufacturer 7 + physical id: 6 + serial: Array 1 Serial Number 7 + slot: DIMM_P0_D0 + *-bank:7 + description: DIMM [empty] + product: Array 1 Part Number 8 + vendor: Array 1 Manufacturer 8 + physical id: 7 + serial: Array 1 Serial Number 8 + slot: DIMM_P0_D1 + *-bank:8 + description: DIMM DDR4 3200 MHz (0.3 ns) + product: M393A4K40DB3-CWE + vendor: Samsung + physical id: 8 + serial: 46BD501D + slot: DIMM_P0_E0 + size: 32GiB + width: 64 bits + clock: 3200MHz (0.3ns) + *-bank:9 + description: DIMM DDR4 3200 MHz (0.3 ns) + product: M393A4K40DB3-CWE + vendor: Samsung + physical id: 9 + serial: 1777FF07 + slot: DIMM_P0_E1 + size: 32GiB + width: 64 bits + clock: 3200MHz (0.3ns) + *-bank:10 + description: DIMM DDR4 3200 MHz (0.3 ns) + product: M393A4K40DB3-CWE + vendor: Samsung + physical id: a + serial: 46BD501E + slot: DIMM_P0_F0 + size: 32GiB + width: 64 bits + clock: 3200MHz (0.3ns) + *-bank:11 + description: DIMM DDR4 3200 MHz (0.3 ns) + product: M393A4K40DB3-CWE + vendor: Samsung + physical id: b + serial: 46BD5040 + slot: DIMM_P0_F1 + size: 32GiB + width: 64 bits + clock: 3200MHz (0.3ns) + *-bank:12 + description: DIMM [empty] + product: Array 1 Part Number 13 + vendor: Array 1 Manufacturer 13 + physical id: c + serial: Array 1 Serial Number 13 + slot: DIMM_P0_G0 + *-bank:13 + description: DIMM [empty] + product: Array 1 Part Number 14 + vendor: Array 1 Manufacturer 14 + physical id: d + serial: Array 1 Serial Number 14 + slot: DIMM_P0_G1 + *-bank:14 + description: DIMM [empty] + product: Array 1 Part Number 15 + vendor: Array 1 Manufacturer 15 + physical id: e + serial: Array 1 Serial Number 15 + slot: DIMM_P0_H0 + *-bank:15 + description: DIMM [empty] + product: Array 1 Part Number 16 + vendor: Array 1 Manufacturer 16 + physical id: f + serial: Array 1 Serial Number 16 + slot: DIMM_P0_H1 + *-cpu + description: CPU + product: ARMv8 (Q32-17) + vendor: Ampere(R) + physical id: 65 + bus info: cpu@0 + version: Ampere(R) Altra(R) Processor + serial: 0000000000000000920D0306033940C4 + slot: CPU 0 + size: 1028MHz + capacity: 1700MHz + clock: 1100MHz + capabilities: lm cpufreq + configuration: cores=32 enabledcores=32 threads=32 + *-cache:0 + description: L1 cache + physical id: 66 + slot: Socket 0 L1 Instruction Cache + size: 2MiB + capacity: 2MiB + capabilities: synchronous internal write-back instruction + configuration: level=1 + *-cache:1 + description: L1 cache + physical id: 67 + slot: Socket 0 L1 Data Cache + size: 2MiB + capacity: 2MiB + capabilities: synchronous internal write-back data + configuration: level=1 + *-cache:2 + description: L2 cache + physical id: 68 + slot: Socket 0 L2 Cache + size: 32MiB + capacity: 32MiB + capabilities: synchronous internal write-back unified + configuration: level=2 + *-pci:0 + description: Host bridge + product: Altra PCI Express Root Complex A + vendor: Ampere Computing, LLC + physical id: 100 + bus info: pci@0000:00:00.0 + version: 00 + width: 32 bits + clock: 33MHz + *-pci + description: PCI bridge + product: Altra PCI Express Root Port a0 + vendor: Ampere Computing, LLC + physical id: 1 + bus info: pci@0000:00:01.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:84 memory:70000000-701fffff ioport:3c0000000000(size=2097152) + *-pci:1 + description: Host bridge + product: Altra PCI Express Root Complex A + vendor: Ampere Computing, LLC + physical id: 101 + bus info: pci@0001:00:00.0 + version: 00 + width: 32 bits + clock: 33MHz + *-pci + description: PCI bridge + product: Altra PCI Express Root Port a0 + vendor: Ampere Computing, LLC + physical id: 1 + bus info: pci@0001:00:01.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:89 memory:60000000-602fffff ioport:380000000000(size=150994944) + *-network:0 + description: Ethernet interface + product: MT42822 BlueField-2 integrated ConnectX-6 Dx network controller + vendor: Mellanox Technologies + physical id: 0 + bus info: pci@0001:01:00.0 + logical name: enP1p1s0f0np0 + logical name: /dev/fb0 + version: 01 + serial: b8:ce:f6:a8:82:52 + capacity: 40Gbit/s + width: 64 bits + clock: 33MHz + capabilities: pciexpress vpd msix pm bus_master cap_list rom ethernet physical 1000bt-fd 10000bt-fd 25000bt-fd 40000bt-fd autonegotiation fb + configuration: autonegotiation=on broadcast=yes depth=32 driver=mlx5_core driverversion=5.15.0-78-generic duplex=full firmware=24.35.3006 (MT_0000000561) ip=172.16.25.3 latency=0 link=yes mode=1024x768 multicast=yes visual=truecolor xres=1024 yres=768 + resources: iomemory:38000-37fff iomemory:38000-37fff irq:89 memory:380000000000-380001ffffff memory:380004000000-3800047fffff memory:60000000-600fffff memory:380005000000-380006ffffff + *-network:1 + description: Ethernet interface + product: MT42822 BlueField-2 integrated ConnectX-6 Dx network controller + vendor: Mellanox Technologies + physical id: 0.1 + bus info: pci@0001:01:00.1 + logical name: enP1p1s0f1np1 + version: 01 + serial: b8:ce:f6:a8:82:53 + capacity: 40Gbit/s + width: 64 bits + clock: 33MHz + capabilities: pciexpress vpd msix pm bus_master cap_list rom ethernet physical 1000bt-fd 10000bt-fd 25000bt-fd 40000bt-fd autonegotiation + configuration: autonegotiation=on broadcast=yes driver=mlx5_core driverversion=5.15.0-78-generic duplex=full firmware=24.35.3006 (MT_0000000561) ip=172.16.26.3 latency=0 link=yes multicast=yes + resources: iomemory:38000-37fff iomemory:38000-37fff irq:182 memory:380002000000-380003ffffff memory:380004800000-380004ffffff memory:60100000-601fffff memory:380007000000-380008ffffff + *-generic + description: DMA controller + product: MT42822 BlueField-2 SoC Management Interface + vendor: Mellanox Technologies + physical id: 0.2 + bus info: pci@0001:01:00.2 + version: 01 + width: 32 bits + clock: 33MHz + capabilities: pciexpress vpd pm 8237 bus_master cap_list + configuration: driver=vfio-pci latency=0 + resources: irq:89 memory:60200000-602fffff + *-pci:2 + description: Host bridge + product: Altra PCI Express Root Complex B + vendor: Ampere Computing, LLC + physical id: 102 + bus info: pci@0002:00:00.0 + version: 00 + width: 32 bits + clock: 33MHz + *-pci:0 + description: PCI bridge + product: Altra PCI Express Root Port b0 + vendor: Ampere Computing, LLC + physical id: 1 + bus info: pci@0002:00:01.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:88 memory:8000000-81fffff ioport:200000000000(size=2097152) + *-pci:1 + description: PCI bridge + product: Altra PCI Express Root Port b4 + vendor: Ampere Computing, LLC + physical id: 5 + bus info: pci@0002:00:05.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:88 memory:8200000-83fffff ioport:200000200000(size=2097152) + *-pci:3 + description: Host bridge + product: Altra PCI Express Root Complex B + vendor: Ampere Computing, LLC + physical id: 103 + bus info: pci@0003:00:00.0 + version: 00 + width: 32 bits + clock: 33MHz + *-pci:0 + description: PCI bridge + product: Altra PCI Express Root Port b0 + vendor: Ampere Computing, LLC + physical id: 1 + bus info: pci@0003:00:01.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:86 memory:10000000-101fffff ioport:240000000000(size=2097152) + *-pci:1 + description: PCI bridge + product: Altra PCI Express Root Port b4 + vendor: Ampere Computing, LLC + physical id: 5 + bus info: pci@0003:00:05.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:86 memory:10200000-103fffff ioport:240000200000(size=3145728) + *-network:0 + description: Ethernet interface + product: I350 Gigabit Network Connection + vendor: Intel Corporation + physical id: 0 + bus info: pci@0003:02:00.0 + logical name: eno1 + version: 01 + serial: 74:56:3c:40:05:08 + size: 1Gbit/s + capacity: 1Gbit/s + width: 32 bits + clock: 33MHz + capabilities: pm msi msix pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation + configuration: autonegotiation=on broadcast=yes driver=igb driverversion=5.15.0-78-generic duplex=full firmware=1.63, 0x800009fa ip=10.1.10.1 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s + resources: irq:86 memory:10200000-1021ffff memory:10240000-10243fff memory:240000200000-24000021ffff memory:240000220000-24000023ffff + *-network:1 + description: Ethernet interface + product: I350 Gigabit Network Connection + vendor: Intel Corporation + physical id: 0.1 + bus info: pci@0003:02:00.1 + logical name: eno2 + version: 01 + serial: 74:56:3c:40:05:09 + capacity: 1Gbit/s + width: 32 bits + clock: 33MHz + capabilities: pm msi msix pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation + configuration: autonegotiation=on broadcast=yes driver=igb driverversion=5.15.0-78-generic firmware=1.63, 0x800009fa latency=0 link=no multicast=yes port=twisted pair + resources: irq:108 memory:10220000-1023ffff memory:10244000-10247fff memory:240000240000-24000025ffff memory:240000260000-24000027ffff + *-pci:4 + description: Host bridge + product: Altra PCI Express Root Complex B + vendor: Ampere Computing, LLC + physical id: 104 + bus info: pci@0004:00:00.0 + version: 00 + width: 32 bits + clock: 33MHz + *-pci:0 + description: PCI bridge + product: Altra PCI Express Root Port b0 + vendor: Ampere Computing, LLC + physical id: 1 + bus info: pci@0004:00:01.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:90 memory:20000000-22ffffff ioport:280000000000(size=2097152) + *-pci + description: PCI bridge + product: AST1150 PCI-to-PCI Bridge + vendor: ASPEED Technology, Inc. + physical id: 0 + bus info: pci@0004:01:00.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci msi pm pciexpress normal_decode bus_master cap_list + resources: memory:20000000-22ffffff + *-display + description: VGA compatible controller + product: ASPEED Graphics Family + vendor: ASPEED Technology, Inc. + physical id: 0 + bus info: pci@0004:02:00.0 + logical name: /dev/fb0 + version: 41 + width: 32 bits + clock: 33MHz + capabilities: pm msi vga_controller cap_list fb + configuration: depth=32 driver=ast latency=0 resolution=1024,768 + resources: irq:90 memory:20000000-21ffffff memory:22000000-2201ffff + *-pci:1 + description: PCI bridge + product: Altra PCI Express Root Port b2 + vendor: Ampere Computing, LLC + physical id: 3 + bus info: pci@0004:00:03.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:90 memory:23000000-231fffff ioport:280000200000(size=2097152) + *-usb + description: USB controller + product: uPD720201 USB 3.0 Host Controller + vendor: Renesas Technology Corp. + physical id: 0 + bus info: pci@0004:03:00.0 + version: 03 + width: 64 bits + clock: 33MHz + capabilities: pm msi msix pciexpress xhci bus_master cap_list + configuration: driver=xhci_hcd latency=0 + resources: irq:90 memory:23000000-23001fff + *-usbhost:0 + product: xHCI Host Controller + vendor: Linux 5.15.0-78-generic xhci-hcd + physical id: 0 + bus info: usb@1 + logical name: usb1 + version: 5.15 + capabilities: usb-2.00 + configuration: driver=hub slots=4 speed=480Mbit/s + *-usb + description: USB hub + product: USB2.0 Hub + vendor: GenesysLogic + physical id: 3 + bus info: usb@1:3 + version: 93.10 + capabilities: usb-2.10 + configuration: driver=hub slots=4 speed=480Mbit/s + *-usbhost:1 + product: xHCI Host Controller + vendor: Linux 5.15.0-78-generic xhci-hcd + physical id: 1 + bus info: usb@2 + logical name: usb2 + version: 5.15 + capabilities: usb-3.00 + configuration: driver=hub slots=4 speed=5000Mbit/s + *-usb + description: USB hub + product: USB3.1 Hub + vendor: GenesysLogic + physical id: 3 + bus info: usb@2:3 + version: 93.10 + capabilities: usb-3.20 + configuration: driver=hub slots=4 speed=5000Mbit/s + *-pci:2 + description: PCI bridge + product: Altra PCI Express Root Port b4 + vendor: Ampere Computing, LLC + physical id: 5 + bus info: pci@0004:00:05.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:90 memory:23200000-233fffff ioport:280000400000(size=2097152) + *-pci:5 + description: Host bridge + product: Altra PCI Express Root Complex B + vendor: Ampere Computing, LLC + physical id: 105 + bus info: pci@0005:00:00.0 + version: 00 + width: 32 bits + clock: 33MHz + *-pci:0 + description: PCI bridge + product: Altra PCI Express Root Port b0 + vendor: Ampere Computing, LLC + physical id: 1 + bus info: pci@0005:00:01.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:85 memory:30000000-301fffff ioport:2c0000000000(size=2097152) + *-pci:1 + description: PCI bridge + product: Altra PCI Express Root Port b4 + vendor: Ampere Computing, LLC + physical id: 5 + bus info: pci@0005:00:05.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:85 memory:30200000-303fffff ioport:2c0000200000(size=2097152) + *-pci:2 + description: PCI bridge + product: Altra PCI Express Root Port b6 + vendor: Ampere Computing, LLC + physical id: 7 + bus info: pci@0005:00:07.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:85 memory:30400000-305fffff ioport:2c0000400000(size=2097152) + *-pci:6 + description: Host bridge + product: Altra PCI Express Root Complex A + vendor: Ampere Computing, LLC + physical id: 106 + bus info: pci@000c:00:00.0 + version: 00 + width: 32 bits + clock: 33MHz + *-pci:0 + description: PCI bridge + product: Altra PCI Express Root Port a0 + vendor: Ampere Computing, LLC + physical id: 1 + bus info: pci@000c:00:01.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:87 memory:40000000-401fffff ioport:300000000000(size=2097152) + *-sata + description: SATA controller + product: ASMedia Technology Inc. + vendor: ASMedia Technology Inc. + physical id: 0 + bus info: pci@000c:01:00.0 + logical name: scsi0 + logical name: scsi2 + logical name: scsi3 + version: 02 + width: 32 bits + clock: 33MHz + capabilities: sata pm pciexpress ahci_1.0 bus_master cap_list rom emulated + configuration: driver=ahci latency=0 + resources: irq:87 memory:40080000-40081fff memory:40082000-40083fff memory:40000000-4007ffff + *-disk:0 + description: ATA Disk + product: INTEL SSDSC2KB48 + physical id: 0 + bus info: scsi@0:0.0.0 + logical name: /dev/sda + version: 0132 + serial: PHYF05200592480BGN + size: 447GiB (480GB) + capabilities: gpt-1.00 partitioned partitioned:gpt + configuration: ansiversion=5 guid=ceb012f0-148e-45e3-a2e2-d959d4e8f308 logicalsectorsize=512 sectorsize=4096 + *-volume:0 + description: Windows FAT volume + vendor: mkfs.fat + physical id: 1 + bus info: scsi@0:0.0.0,1 + logical name: /dev/sda1 + logical name: /boot/efi + version: FAT32 + serial: c07f-03dd + size: 1073MiB + capacity: 1074MiB + capabilities: boot fat initialized + configuration: FATs=2 filesystem=fat mount.fstype=vfat mount.options=rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro state=mounted + *-volume:1 + description: EXT4 volume + vendor: Linux + physical id: 2 + bus info: scsi@0:0.0.0,2 + logical name: /dev/sda2 + logical name: /boot + version: 1.0 + serial: 1c969869-6c83-4794-a47c-55a4c25fd8c4 + size: 2GiB + capabilities: journaled extended_attributes large_files huge_files dir_nlink recover 64bit extents ext4 ext2 initialized + configuration: created=2023-02-24 20:20:27 filesystem=ext4 lastmountpoint=/boot modified=2024-03-16 22:18:19 mount.fstype=ext4 mount.options=rw,relatime mounted=2024-03-16 22:18:19 state=mounted + *-volume:2 + description: EFI partition + physical id: 3 + bus info: scsi@0:0.0.0,3 + logical name: /dev/sda3 + serial: ZQNhl1-aWtv-edSb-dk3Z-xJym-l50Z-1AQh4Y + size: 444GiB + capabilities: lvm2 + *-disk:1 + description: ATA Disk + product: ST4000LM024-2AN1 + physical id: 1 + bus info: scsi@2:0.0.0 + logical name: /dev/sdb + version: 0001 + serial: cfwMdB-jfA5-t3Sk-20nq-deBM-PAdV-ScYOpJ + size: 3726GiB + capacity: 3726GiB + capabilities: lvm2 + configuration: ansiversion=5 logicalsectorsize=512 sectorsize=4096 + *-disk:2 + description: ATA Disk + product: ST4000LM024-2AN1 + physical id: 0.0.0 + bus info: scsi@3:0.0.0 + logical name: /dev/sdc + version: 0001 + serial: pIGorR-NXtM-Hw9E-z0aG-Y566-GUku-MyGYNh + size: 3726GiB + capacity: 3726GiB + capabilities: lvm2 + configuration: ansiversion=5 logicalsectorsize=512 sectorsize=4096 + *-pci:1 + description: PCI bridge + product: Altra PCI Express Root Port a1 + vendor: Ampere Computing, LLC + physical id: 2 + bus info: pci@000c:00:02.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:87 memory:40200000-403fffff ioport:300000200000(size=2097152) + *-sata + description: SATA controller + product: ASMedia Technology Inc. + vendor: ASMedia Technology Inc. + physical id: 0 + bus info: pci@000c:02:00.0 + logical name: scsi24 + logical name: scsi25 + version: 02 + width: 32 bits + clock: 33MHz + capabilities: sata pm pciexpress ahci_1.0 bus_master cap_list rom emulated + configuration: driver=ahci latency=0 + resources: irq:87 memory:40280000-40281fff memory:40282000-40283fff memory:40200000-4027ffff + *-disk:0 + description: ATA Disk + product: ST4000LM024-2AN1 + physical id: 0 + bus info: scsi@24:0.0.0 + logical name: /dev/sdd + version: 0001 + serial: PfecXJ-y7LI-QwO6-XuMT-Uyhk-B4At-mt7g0o + size: 3726GiB + capacity: 3726GiB + capabilities: lvm2 + configuration: ansiversion=5 logicalsectorsize=512 sectorsize=4096 + *-disk:1 + description: ATA Disk + product: ST4000LM024-2U81 + physical id: 1 + bus info: scsi@25:0.0.0 + logical name: /dev/sde + version: 0001 + serial: 8nDaPv-fJo9-fRao-fRxJ-4goq-cP8b-QJcZIh + size: 3726GiB + capacity: 3726GiB + capabilities: lvm2 + configuration: ansiversion=5 logicalsectorsize=512 sectorsize=4096 + *-pci:2 + description: PCI bridge + product: Altra PCI Express Root Port a2 + vendor: Ampere Computing, LLC + physical id: 3 + bus info: pci@000c:00:03.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:87 memory:40400000-405fffff ioport:300000400000(size=2097152) + *-pci:3 + description: PCI bridge + product: Altra PCI Express Root Port a3 + vendor: Ampere Computing, LLC + physical id: 4 + bus info: pci@000c:00:04.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:87 memory:40600000-407fffff ioport:300000600000(size=2097152) + *-pci:7 + description: Host bridge + product: Altra PCI Express Root Complex A + vendor: Ampere Computing, LLC + physical id: 107 + bus info: pci@000d:00:00.0 + version: 00 + width: 32 bits + clock: 33MHz + *-pci:0 + description: PCI bridge + product: Altra PCI Express Root Port a0 + vendor: Ampere Computing, LLC + physical id: 1 + bus info: pci@000d:00:01.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:83 memory:50000000-501fffff ioport:340000000000(size=2097152) + *-pci:1 + description: PCI bridge + product: Altra PCI Express Root Port a1 + vendor: Ampere Computing, LLC + physical id: 2 + bus info: pci@000d:00:02.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:83 memory:50200000-503fffff ioport:340000200000(size=2097152) + *-pci:2 + description: PCI bridge + product: Altra PCI Express Root Port a2 + vendor: Ampere Computing, LLC + physical id: 3 + bus info: pci@000d:00:03.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:83 memory:50400000-505fffff ioport:340000400000(size=2097152) + *-pci:3 + description: PCI bridge + product: Altra PCI Express Root Port a3 + vendor: Ampere Computing, LLC + physical id: 4 + bus info: pci@000d:00:04.0 + version: 04 + width: 32 bits + clock: 33MHz + capabilities: pci pm pciexpress normal_decode bus_master cap_list + configuration: driver=pcieport + resources: irq:83 memory:50600000-507fffff ioport:340000600000(size=2097152) + *-pnp00:00 + product: PnP device PNP0c02 + physical id: 1 + capabilities: pnp + configuration: driver=system + *-power:0 UNCLAIMED + description: SPRIN651AM + product: YM-2651Y + vendor: 3Y POWER + physical id: 1 + version: A10R + serial: SA00A3632213000844 + capacity: 650mWh + *-power:1 UNCLAIMED + description: SPRIN651AM + product: YM-2651Y + vendor: 3Y POWER + physical id: 2 + version: A10R + serial: SA00A3632213000845 + capacity: 650mWh + *-input + product: Power Button + physical id: 3 + logical name: input0 + logical name: /dev/input/event0 + capabilities: platform diff --git a/tex/.gitignore b/tex/.gitignore index e964244..707efab 100644 --- a/tex/.gitignore +++ b/tex/.gitignore @@ -299,3 +299,6 @@ TSWLatexianTemp* # option is specified. Footnotes are the stored in a file with suffix Notes.bib. # Uncomment the next line to have this generated file ignored. #*Notes.bib + +# minted +**/_minted-skeleton diff --git a/tex/draft/skeleton.pdf b/tex/draft/skeleton.pdf index 29533469529ab732db54cdb222b7145a39ca1677..6742133a2e5ba06a55b28ae9ee54d531a85817da 100644 GIT binary patch delta 75439 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�-T)YbO!Wv1{2PZpUZzT% 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 Cy+(cj diff --git a/tex/draft/skeleton.tex b/tex/draft/skeleton.tex index 066e424..368fb37 100644 --- a/tex/draft/skeleton.tex +++ b/tex/draft/skeleton.tex @@ -13,10 +13,10 @@ % \usepackage{natbib} % recommended for citations % but I have no experience with natbib... \usepackage[utf8]{inputenc} \usepackage[dvipsnames]{xcolor} -\usepackage{hyperref} \usepackage[justification=centering]{caption} \usepackage{graphicx} \usepackage[english]{babel} +\usepackage{float} % -> biblatex \usepackage{biblatex} \addbibresource{mybibfile.bib} @@ -36,6 +36,9 @@ % -> draw textbook-style frames \usepackage{mdframed} % <- frames +% -> href (LOAD LAST) +\usepackage{hyperref} +% <- href \begin{document} \begin{preliminary} @@ -102,7 +105,9 @@ from the Informatics Research Ethics committee. \begin{acknowledgements} -Jordanian River to the Mediterranean Sea, maybe\dots +\textcolor{red}{For unbounded peace and happiness among all peoples of the world.} + +\textcolor{red}{May we, one day, be able to see each other as equals.} \end{acknowledgements} @@ -425,7 +430,7 @@ extern void dcache_inval_poc( unsigned long start, unsigned long end ); -/* Clean data cache region [start, end) to PoC. $\ref{code:dcache_clean_poc}$ +/* Clean data cache region [start, end) to PoC. $\label{code:dcache_clean_poc}$ * * Write-back CPU cache entries that intersect with [start, end), * such that data from CPU becomes visible to external writers. @@ -554,14 +559,16 @@ The rest of the chapter is structured as follows: \end{itemize} \section{Experiment Setup}\label{sec:sw-coherency-setup} -\subsection{QEMU-over-x86: \texttt{star}} -The primary source of experimental data come from a virtualized machine: a virtualized guest running a lightly-customized Linux v6.7.0 preemptive kernel with standard non-graphical Debian 12 distribution installed to provide userspace support. The specifics of this QEMU-emulated ARM64 test-bench, running atop of an x86-64 host PC, is at \ref{table:2}. +\subsection{QEMU-over-x86: \texttt{star}}\label{subsec:spec-star} +The primary source of experimental data come from a virtualized machine: a virtualized guest running a lightly-modified Linux v6.7.0 preemptive kernel with standard non-graphical Debian 12 distribution installed to provide userspace support. Table \ref{table:star} describes the specifics of the QEMU-emulated ARM64 test-bench, while table \ref{table:starhost} describes the specifics of its host. \begin{table}[h] \centering \begin{tabular}{|c|c|} \hline - Processors & 3x QEMU virt-8.2 (2-way SMT; emulates Cortex-A76) \\ + Processors & QEMU virt-8.2 (3 $\times$ 2-way SMT; emulates Cortex-A76) \\ + \hline + Frequency & 2.0 GHz (\textit{sic.}\footnotemark[3]) \\ \hline CPU Flags & \begin{tabular}{@{}cccccc@{}} @@ -571,31 +578,113 @@ The primary source of experimental data come from a virtualized machine: a virtu asimdrdm & lrcpc & dcpop & asimddp & & \\ \end{tabular} \\ \hline - NUMA Nodes & 1: $\{P_0, \dots, P_5\}$ \\ + NUMA Topology & 1: $\{P_0,\ \dots,\ P_5\}$ \\ \hline - Memory & 4GiB \\ + Memory & 1: 4GiB \\ + \hline + Kernel & Linux 6.7.0 (modified) SMP Preemptive \\ + \hline + Distribution & Debian 12 (bookworm) \\ \hline \end{tabular} \caption{Specification of \texttt{star}} - \label{table:2} + \label{table:star} \end{table} +\footnotetext[3]{As reported from \texttt{lscpu}.} + \begin{table}[h] \centering \begin{tabular}{|c|c|} \hline + Processors & AMD Ryzen 7 4800HS (8-core, 2-way SMT) \\ + \hline + Freuqnecy & 2.9 GHz (4.2 GHz Turbo) \\ + \hline + NUMA Topology & 1: $\{P_0,\ \dots,\ P_{15}\}$ \\ + \hline + Cache Structure & + \begin{tabular}{@{}c|c@{}} + L3 & $P_0 \dots P_7$: 4MiB, $P_8 \dots P_{15}$: 4MiB \\ + L2 & Per core\footnotemark[4]: 512KiB \\ + L1 & Per core: d-cache 32KiB, i-cache 32KiB \\ + \end{tabular} \\ + \hline + Memory & 1: 40 GiB DDR4-3200 SO-DIMM \\ + \hline + Filesystem & ext4 on Samsung SSD 970 EVO Plus \\ + \hline + Kernel & Linux 6.7.9 (arch1-1) SMP Preemptive \\ + \hline + Distribution & Arch Linux \\ + \hline \end{tabular} \caption{Specification of Host} - \label{table:3} + \label{table:starhost} \end{table} -\subsection{\textit{Neoverse N1}: \texttt{rose}} -% - QEMU-over-x86; preemptive-on-preemptive -% - Native server-ready ARM64 (preemptive), which I didn't run for long ngl +\footnotetext[4]{i.e., per 2 threads. For example: $P_0$, $P_1$ comprises one core.} + +\subsection{\textit{Ampere Altra}: \texttt{rose}}\label{subsec:spec-rose} +\begin{table}[H] % suboptimal, but otherwise gets placed in next sec... + \centering + \begin{tabular}{|c|c|} + \hline + Processors & Ampere Altra (32 core; Neoverse N1 microarch.) \\ + \hline + Frequency & 1.7 GHz (3.0 GHz max) \\ + \hline + NUMA Topology & 1: $\{P_0,\ \dots,\ P_{31}\}$ \\ + \hline + Cache Structure & + \begin{tabular}{@{}c|c@{}} + L2 & Per core: 1MiB \\ + L1 & Per core: d-cache 64KiB, i-cache 64KiB \\ + \end{tabular} \\ + \hline + Memory & 1: 256 GiB DDR4-3200 DIMM ECC \\ + \hline + Kernel & Linux 6.7.0 (modified) SMP Preemptive \\ + \hline + Distribution & Ubuntu 22.04 LTS (Jammy Jellyfish) \\ + \hline + \end{tabular} + \caption{Specification of \texttt{rose}} + \label{table:rose} +\end{table} + +Additional to virtualized testbench, I have had the honor to access \texttt{rose}, a ARMv8 server rack system hosted by the \textcolor{red}{Systems Group} at the \textit{Informatics Forum}, through the invaluable assistance of my primary advisor, \textit{Amir Noohi}, for instrumentation of similar experimental setups on server-grade bare-metal systems. + +The specifications of \texttt{rose} is listed in table \ref{table:rose}. \section{Methodology}\label{sec:sw-coherency-method} \subsection{Exporting \texttt{dcache\_clean\_poc}} +As established in subsection \ref{subsec:armv8a-swcoherency}, software cache-coherence maintenance operations (e.g., \texttt{dcache\_[clean|inval]\_poc}) are wrapped behind DMA API function calls and are hence unavailable for direct use in drivers. Moreover, instrumentation of assembly code becomes non-trivial when compared to instrumenting C function symbols, likely due to automatically stripped assembly symbols during kernel linkage. Consequently, it becomes impossible to utilize the existing instrumentation tools available in the Linux kernel (e.g., \texttt{ftrace}) to trace assembly routines. + +In order to convert \texttt{dcache\_clean\_poc} to a traceable equivalent, a wrapper function \texttt{\_\_dcache\_clean\_poc} is created as follows: +\begin{minted}[mathescape, linenos, bgcolor=code-bg]{c} +/* In arch/arm64/mm/flush.c */ +#include + +/* ... */ + +void __dcache_clean_poc(ulong start, ulong end) +{ + dcache_clean_poc(start, end); // see $\ref{code:dcache_clean_poc}$ +} +EXPORT_SYMBOL(__dcache_clean_poc); +\end{minted} + +Correspondingly, the header \texttt{arch/arm64/include/asm/cacheflush\_extra.h} is created to export the symbol \texttt{\_\_dcache\_clean\_poc} into kernel module namespace. This has the additional benefit of creating a corresponding \texttt{ftrace} target, allowing the symbol to be instrumented using existing Linux instrumentation mechanisms. The entirety of modifications done to the in-tree v6.7.0 kernel culminates to a 44-line patch file (inclusive of metadata, context, etc.). It is expected that the introduction of additional symbols would increment the function latency by (at least) the amount of time necessary to fetch the instruction, but such latency is expected to be miniscule when compared to cache coherency operations. + \subsection{Kernel Module: \texttt{my\_shmem}} +To simulate module-initiated cache coherence behavior over allocated kernel buffers, a kernel module, \texttt{my\_shmem}, is written such that specially-written userspace programs could cause the kernel to invoke \texttt{\_\_dcache\_clean\_poc} at will. + +\subsubsection{\texttt{my\_shmem}: Design} +The \texttt{my\_shmem} module is a utility for (lazily) allocating one or more kernel-space pages, re-mapping them into the userspace for reading/writing operations, and invoking cache-coherency operations \emph{as if} accessed via DMA on unmap. + +\subsubsection{\texttt{my\_shmem}: Implementation} + \subsection{Instrumentation: \texttt{ftrace} and \textit{eBPF}} \subsection{Userspace Programs}