Changes in / [1260224:35ece70]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/theses/thierry_delisle_PhD/thesis/glossary.tex
r1260224 r35ece70 17 17 {name={Thread},text={thread}} 18 18 { 19 A thread is an independent sequential execution path through a program. Each thread is scheduled for execution separately and independently from other threads. Systems offer one or more concrete implementations of this concept, \eg \gls{kthrd}, \gls{job}, task. However, most of the concepts of scheduling are independent of the particular implementations of the thread representation. For this reason, this document uses the term \gls{at} to mean any of these representation that meets the general definition.19 A thread is an independent sequential execution path through a program. Each thread is scheduled for execution separately and independently from other threads. A thread must have its own stack to save its state when it is scheduled. Systems offer one or more concrete implementations of this concept, \eg \gls{kthrd}, \gls{job}, task. However, most of the concepts of scheduling are independent of the particular implementations of the thread representation. For this reason, this document uses the term \gls{at} to mean any of these representation that meets the general definition. 20 20 21 21 \textit{Synonyms : Tasks, Jobs, Blocks.} … … 33 33 {name={Ready Queue}, text={ready-queue}} 34 34 { 35 Data structure holding \ats that are ready to \glslink{atrun}{run} . Often a \glsxtrshort{fifo} queue for fairness, but can take many different forms, \eg binary tree and priority queue are also common.35 Data structure holding \ats that are ready to \glslink{atrun}{run}, but currently all the processors are in use. Often a \glsxtrshort{fifo} queue for fairness, but can take many different forms, \eg binary tree and priority queue are also common. 36 36 } 37 37 38 38 \longnewglossaryentry{uthrding} 39 {name={User-Level Threading},text={user-level threading}}39 {name={User-Level \Gls{at}ing},text={user-level threading}} 40 40 { 41 Threading model where a scheduler runs in users space and maps threads managed and created inside the user-space onto \glspl{kthrd}.41 \Gls{at}ing model where a scheduler runs in users space and maps threads managed and created inside the user-space onto \glspl{kthrd}. 42 42 43 43 \textit{Synonyms : User threads, Lightweight threads, Green threads, Virtual threads, Tasks.} … … 47 47 {name={Remote Memory Reference},text={remote memory reference}} 48 48 { 49 A memory reference to an address not in the current \gls{hthrd}'s cache is a remote reference. Memory references that \emph{are} in the current \gls{hthrd}'s cache is a \newterm{local} memory reference. For example, a cache line that must be updated from theany cache on another socket, or from RAM in a \glsxtrshort{numa} context.49 A memory reference to an address not in the current \gls{hthrd}'s L1 or L2 cache is a remote reference. L1 and L2 cache references are considered \emph{local}. For example, a cache line that must be updated from the L3 cache or from any cache on another socket, or from RAM in a \glsxtrshort{numa} context. 50 50 } 51 51 … … 53 53 54 54 \longnewglossaryentry{hthrd} 55 {name={Hardware Threading},text={hardware thread}}55 {name={Hardware \Gls{at}},text={hardware thread}} 56 56 { 57 Threads representing the underlying hardware, \eg a CPU core or hyper-thread, if the hardware supports multiple threads of execution per core. The number of hardware threads presentis fixed on any given computer.57 \Gls{at}s representing the underlying hardware, \eg a CPU core or hyper-thread, if the hardware supports multiple threads of execution per core. The maximum number of hardware threads is fixed on any given computer. 58 58 59 \textit{Synonyms : Core, Hyper- Thread, Processing Unit, CPU.}59 \textit{Synonyms : Core, Hyper-\Gls{at}, Processing Unit, CPU.} 60 60 } 61 61 62 62 \longnewglossaryentry{kthrd} 63 {name={Kernel-Level Thread},text={kernel-level thread}}63 {name={Kernel-Level \Gls{at}},text={kernel-level thread}} 64 64 { 65 Threads created and managed inside kernel space. Each kernel thread has its own stack and its own thread of execution. Kernel-level threads are owned, managed and scheduled by the underlying operating system.65 \Gls{at}s created and managed inside kernel space. Each kernel thread has its own stack and its own thread of execution. Kernel-level threads are owned, managed and scheduled by the underlying operating system. 66 66 67 67 \textit{Synonyms : OS threads, Hardware threads, Physical threads.} … … 85 85 86 86 \longnewglossaryentry{pool} 87 {name={ ThreadPool},text={thread-pool}}87 {name={\Gls{at} Pool},text={thread-pool}} 88 88 { 89 89 Group of homogeneous threads that loop executing units of works. Often executing \glspl{jobs}.
Note:
See TracChangeset
for help on using the changeset viewer.