[Skiboot] [RFC v2 PATCH 0/6] Faster fast reboot (2x!)
Stewart Smith
stewart at linux.ibm.com
Thu Jun 28 12:54:55 AEST 2018
Currently, on a 128GB p9dsu system (with all that memory on node0), it
takes around 13 seconds in skiboot to do a fast reboot.
By doing the clear in parallel, we get this down to ~11seconds.
By then doing it in parallel with PCI scanning, we're down to ~9
seconds.
By then caching BOOTKERNEL rather than re-reading it, we're down to
~5seconds.
With this patchset, we're down to the following big consumers of time:
- 2.5s decompressing initramfs in BOOTKERNEL
- the amazing amount of time it takes for a linux OS to get to the point
of issuing 'reboot' to firmware.
Nicholas Piggin (1):
Add cpu_queue_job_on_node() to do node local jobs
Stewart Smith (5):
fast-reboot: parallel memory clearing
Scan PCI and clear memory simultaneously
mem_region: log region name on mem_alloc failure
mem_check(): Correct alignment assumptions
core/flash.c: cache loaded resources
core/cpu.c | 77 ++++++++---
core/device.c | 2 +-
core/fast-reboot.c | 12 +-
core/flash.c | 49 ++++++-
core/init.c | 24 ++--
core/mem_region.c | 121 +++++++++++++++++-
core/test/dummy-cpu.h | 40 ++++++
core/test/run-malloc-speed.c | 7 +-
core/test/run-malloc.c | 7 +-
core/test/run-mem_range_is_reserved.c | 8 +-
core/test/run-mem_region.c | 10 +-
core/test/run-mem_region_init.c | 8 +-
core/test/run-mem_region_next.c | 8 +-
core/test/run-mem_region_release_unused.c | 8 +-
.../run-mem_region_release_unused_noalloc.c | 8 +-
core/test/run-mem_region_reservations.c | 8 +-
core/test/stubs.c | 44 +++++++
hdata/test/hdata_to_dt.c | 9 ++
hdata/test/stubs.c | 47 +++++++
include/cpu.h | 4 +
include/device.h | 5 +-
include/mem_region.h | 3 +-
include/skiboot.h | 4 +-
23 files changed, 413 insertions(+), 100 deletions(-)
create mode 100644 core/test/dummy-cpu.h
--
2.17.1
More information about the Skiboot
mailing list