Conceptually, multithreading is equivalent to a context switch at the operating system level. The difference is that a multithreaded CPU can do a thread switch in one CPU cycle instead of the hundreds or thousands of CPU cycles a context switch normally requires. This is achieved by replicating the state hardware (such as the register file and program counter) for each active thread.
k ə n s ɛ p t̠ʃ uː ə l i WORD_BOUNDARY m ʌ l t ɪ θ ɹ ɛ d ɪ ŋ WORD_BOUNDARY ɪ z WORD_BOUNDARY ɪ k w ɪ v ə l ə n t WORD_BOUNDARY t ʊ WORD_BOUNDARY ʌ WORD_BOUNDARY k ɑ n t ɛ k s t WORD_BOUNDARY s w ɪ t̠ʃ WORD_BOUNDARY æ t WORD_BOUNDARY ð ɪ WORD_BOUNDARY ɑ p ə ɹ ɹ eɪ t ɪ ŋ WORD_BOUNDARY s ɪ s t ə m WORD_BOUNDARY l ɛ v ə l WORD_BOUNDARY ð ə WORD_BOUNDARY d ɪ f ɹ ə n s WORD_BOUNDARY ɪ z WORD_BOUNDARY ð æ t ə WORD_BOUNDARY m ʌ l t ɪ θ ɹ ɛ d ɪ d WORD_BOUNDARY s iː p iː j uː WORD_BOUNDARY k æ n WORD_BOUNDARY d uː WORD_BOUNDARY ʌ WORD_BOUNDARY θ ɹ ɛ d WORD_BOUNDARY s w ɪ t̠ʃ WORD_BOUNDARY ɪ n WORD_BOUNDARY w ʌ n WORD_BOUNDARY s iː p iː j uː WORD_BOUNDARY s aɪ k ə l WORD_BOUNDARY ɪ n s t ɛ d WORD_BOUNDARY ʌ v ð ə WORD_BOUNDARY h ʌ n d ɹ ɪ d z WORD_BOUNDARY ɔ ɹ WORD_BOUNDARY θ aʊ z ə n d z WORD_BOUNDARY ʌ v WORD_BOUNDARY s iː p iː j uː WORD_BOUNDARY s aɪ k ə l z WORD_BOUNDARY ʌ WORD_BOUNDARY k ɑ n t ɛ k s t WORD_BOUNDARY s w ɪ t̠ʃ WORD_BOUNDARY n ɔ ɹ m ə l i WORD_BOUNDARY ɹ ɪ k w aɪ ə ɹ z WORD_BOUNDARY ð ɪ s WORD_BOUNDARY ɪ z WORD_BOUNDARY ʌ t̠ʃ iː v d WORD_BOUNDARY b aɪ WORD_BOUNDARY ɹ ɛ p l ɪ k eɪ t ɪ ŋ WORD_BOUNDARY ð ə WORD_BOUNDARY s t eɪ t WORD_BOUNDARY h ɑ ɹ d w ɛ ɹ WORD_BOUNDARY s ʌ t̠ʃ WORD_BOUNDARY ʌ z WORD_BOUNDARY ð ə WORD_BOUNDARY ɹ ɛ d̠ʒ ɪ s t ə ɹ WORD_BOUNDARY f aɪ l WORD_BOUNDARY æ n d WORD_BOUNDARY p ɹ oʊ ɡ ɹ æ m WORD_BOUNDARY k aʊ n t ə ɹ WORD_BOUNDARY f ɔ ɹ WORD_BOUNDARY iː t̠ʃ WORD_BOUNDARY æ k t ɪ v WORD_BOUNDARY θ ɹ ɛ d WORD_BOUNDARY