Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Wait state
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{More citations needed|date=December 2009}} A '''wait state''' is a delay experienced by a computer [[central processing unit|processor]] when accessing external [[computer storage|memory]] or another device that is slow to respond. Computer microprocessors generally run much faster than the computer's other subsystems, which hold the data the CPU reads and writes. Even memory, the fastest of these, cannot supply data as fast as the CPU could process it. In an example from 2011, typical PC processors like the [[Intel]] [[Core 2]] and the [[AMD]] [[Athlon 64 X2]] run with a clock of several [[GHz]], which means that one [[clock cycle]] is less than 1 [[nanosecond]] (typically about 0.3 ns to 0.5 ns on modern desktop CPUs), while main memory has a [[Memory timings|latency]] of about 15β30 ns. Some second-level [[CPU cache]]s run slower than the processor core. When the processor needs to access external memory, it starts placing the address of the requested information on the [[address bus]]. It then must wait for the answer, that may come back tens if not hundreds of cycles later. Each of the cycles spent waiting is called a wait state. Wait states are a pure waste of a processor's performance. Modern designs try to eliminate or hide them using a variety of techniques: [[CPU cache]]s, [[instruction pipeline]]s, [[instruction prefetch]], [[branch prediction]], [[simultaneous multithreading]] and others. No single technique is 100% successful, but together can significantly reduce the problem. ==Energy conservation== Wait states can be used to reduce the energy consumption of a processor, by allowing the main processor clock to either slow down or temporarily pause during the wait state if the CPU has no other work to do. Rather than spinning uselessly in a tight loop waiting for data, sporadically reducing the clock speed in this manner helps to keep the processor core cool and to extend battery life in portable computing devices. ==Alternative meaning on IBM mainframes== On [[IBM mainframes]], the term ''wait state'' is used with a different meaning. A wait state refers to a CPU being halted, possibly due to some kind of serious error condition (such as an unrecoverable error during operating system to [[IBM_System/360_architecture#Initial_Program_Load|IPL]]). A wait state is indicated by bit 14 of the [[Program status word|PSW]] being set to 1, with other bits of the PSW providing a wait state code giving a reason for the wait. In [[z/Architecture]] mode, the wait state code is found in bits 116-127.<ref>{{cite web|title=IBM Knowledge Center|url=https://www.ibm.com/support/knowledgecenter/SSLTBW_2.2.0/com.ibm.zos.v2r2.ieah700/iea3h7_Wait_State_Codes_in_z_Architecture_Mode.htm|website=www.ibm.com|date=9 December 2016 |accessdate=14 April 2017}}</ref> ==See also== * [[Bubble (computing)]] * {{section link|Cache coherence|Coherence protocols}} * [[Consistency model]] * [[Cache miss]] ** [[Page fault]] * [[Multithreading (computer architecture)]] == References == <references /> {{DEFAULTSORT:Wait State}} [[Category:Central processing unit]] [[Category:IBM mainframe technology]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite web
(
edit
)
Template:More citations needed
(
edit
)
Template:Section link
(
edit
)