thumb = T = thunk

thundering herd problem

Scheduler thrashing. This can happen under Unix when you have a number of processes that are waiting on a single event. When that event (a connection to the web server, say) happens, every process which could possibly handle the event is awakened. In the end, only one of those processes will actually be able to do the work, but, in the meantime, all the others wake up and contend for CPU time before being put back to sleep. Thus the system thrashes briefly while a herd of processes thunders through. If this starts to happen many times per second, the performance impact can be significant.

--Jargon File, autonoded by rescdsk.

The Everyone Project.
Log in: "everyone" Password: "everyone"
First created by: rescdsk
Modified by: (nobody)

The thundering herd problem for Web servers and the like can be solved with a "wake one" methodology. Under a "wake one" regime, when an event (such as a TCP connection) occurs, only one of the processes blocking on that event is awoken by the kernel and given the event to process.

Wake-one semantics have apparently been available for TCP connections in the Linux kernel for some time now.

Log in or register to write something here or to contact authors.