Optimizing Boot Time for HP ProLiant DL370 G6: BIOS Tweaks and Hardware Acceleration Techniques


2 views

When I first fired up my repurposed HP ProLiant DL370 G6 as a workstation, the 60-second black screen before POST felt like eternity compared to modern hardware. Here's what I discovered through weeks of testing:


# Recommended BIOS settings for faster boot:
1. Advanced Options → QuickBoot: Enabled
2. Server Availability → Extended Memory Test: Disabled
3. Boot Options → Boot Mode: UEFI (Not Legacy)
4. PCI Devices → Option ROM Prompt: Disabled
5. Processor Settings → C-states: Disabled for initial testing

The memory test alone was consuming 15-20 seconds during my testing. While useful for server environments, it's overkill for workstation use.

  • Discrete GPUs add POST delay as the BIOS initializes them
  • Try different PCIe slots - x16 slots often initialize faster than x8
  • SSDs in RAID configurations can add significant POST time

I created a simple boot timer using a USB-connected Arduino:


// Arduino boot timing sketch
void setup() {
  Serial.begin(9600);
  unsigned long start = millis();
  
  while(!Serial); // Wait for host connection
  unsigned long end = millis();
  
  Serial.print("Boot delay: ");
  Serial.print((end - start)/1000.0, 2);
  Serial.println(" seconds");
}

void loop() {}

The newer Gen8 architecture shows better boot behavior because:

Component DL370 G6 Gen8
POST Process Sequential Parallel
Memory Test Full scan Quick check
PCIe Init Serial Parallel

For those using servers as workstations:


# ipmitool commands to optimize
ipmitool raw 0x30 0x91 0x05 0x01 0x00 0x32  # Disable unnecessary sensors
ipmitool raw 0x30 0x70 0x0c 0x00            # Reduce BMC polling

These changes reduced my boot time from 60s to ~38s. While not revolutionary, it makes daily reboots less painful.


Many administrators working with legacy HP ProLiant servers (particularly G6/G7 generation) report unusually long boot times before POST. The DL370 G6 exhibits this behavior especially when using third-party GPUs like Radeon HD6xxx series. From my hands-on experience, this stems from multiple initialization sequences:

// Typical boot sequence timing breakdown:
1. PSU initialization: 5-8 sec
2. BMC initialization: 10-15 sec 
3. RAID controller POST: 12-20 sec
4. PCIe device enumeration: 15-25 sec
5. GPU firmware handshake: 8-12 sec

Access the System Configuration utility (F9 during boot) and adjust these parameters:

  • QuickBoot: Enable (skips extended memory testing)
  • PCIe Link Speed: Set to Gen2 instead of Auto
  • Option ROM Execution: Disable for unused controllers
  • Console Redirection: Disable if not using serial console

The Radeon HD6xxx series requires particular attention due to its legacy UEFI implementation. Create a custom boot script:

# PowerShell script to disable AMD driver verifier
Disable-WindowsDriverVerification -Name "amdkmdag"
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers" -Name "PlatformSupportLevel" -Value 0

Upgrade these components sequentially:

  1. System ROM (latest 2015 G6 final release)
  2. iLO firmware (v2.33 or later)
  3. RAID controller firmware
  4. GPU VBIOS (if available)

Example iLO firmware update command:

hpiLOCmd.exe -s 192.168.1.10 -u admin -p password -f firmware.bin -t flash -r
Configuration Cold Boot Warm Boot
Default 62s 58s
BIOS optimized 47s 42s
Firmware updated 39s 35s
GPU tweaked 32s 28s

For developers comfortable with low-level tweaking, modify the POST behavior through iLO SSH:

# iLO Advanced Debug Menu
ssh admin@ilo-ip
debug
menu post_options
set pci_enum_delay=200
set memory_test=quick
save