Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> The exact cycle value will vary significantly between different types of hardware (older hardware was observed to take significantly more cycles)

This makes me think it uses the CPU itself. Microcode updates are not an everyday thing and don't need to be fast, they have no reason to update the circuitry for that. They still might have changed it, but this makes it seems lightly less likely.



This isn't true.

Ucode is updated every time you reset, and on each CPU. At the fab, the release ucode is burned into the design. But rarely does this last through the lifetime of a stepping. In fact, one of the main reasons why BIOS/EFI exists is to update microcode, and this is usually on one of the first things it does.

From the Intel SDM, Vol III, 9.11.6.1 "The effects of a loaded update are cleared from the processor upon a hard reset. Therefore, each time a hard reset is asserted during the BIOS POST, the update must be reloaded on all processors that observed the reset. The effects of a loaded update are, however, maintained across a processor INIT. There are no side effects caused by loading an update into a processor multiple times."

EDIT: I realize you were talking about it being a daily occurrence, and few of us reboot daily. But still, OEMs and most customers don't want a long boot time. Also note that in certain power states (deep sleep), the CPU is off, and waking up your laptop actually will cause a ucode load.


I think the discussion here is missing the fact that "long boot time" is on the order of milliseconds. From the article: the average time for a ucode update on the test machine was 489k cycles, which at 2.53GHz is 193 microseconds. I hardly count that as a large part of the boot time...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: