Changes in / [1260224:35ece70]


Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • doc/theses/thierry_delisle_PhD/thesis/glossary.tex

    r1260224 r35ece70  
    1717{name={Thread},text={thread}}
    1818{
    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.
     19A 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.
    2020
    2121\textit{Synonyms : Tasks, Jobs, Blocks.}
     
    3333{name={Ready Queue}, text={ready-queue}}
    3434{
    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.
     35Data 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.
    3636}
    3737
    3838\longnewglossaryentry{uthrding}
    39 {name={User-Level Threading},text={user-level threading}}
     39{name={User-Level \Gls{at}ing},text={user-level threading}}
    4040{
    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}.
    4242
    4343\textit{Synonyms : User threads, Lightweight threads, Green threads, Virtual threads, Tasks.}
     
    4747{name={Remote Memory Reference},text={remote memory reference}}
    4848{
    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 the any cache on another socket, or from RAM in a \glsxtrshort{numa} context.
     49A 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.
    5050}
    5151
     
    5353
    5454\longnewglossaryentry{hthrd}
    55 {name={Hardware Threading},text={hardware thread}}
     55{name={Hardware \Gls{at}},text={hardware thread}}
    5656{
    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 present is 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.
    5858
    59 \textit{Synonyms : Core, Hyper-Thread, Processing Unit, CPU.}
     59\textit{Synonyms : Core, Hyper-\Gls{at}, Processing Unit, CPU.}
    6060}
    6161
    6262\longnewglossaryentry{kthrd}
    63 {name={Kernel-Level Thread},text={kernel-level thread}}
     63{name={Kernel-Level \Gls{at}},text={kernel-level thread}}
    6464{
    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.
    6666
    6767\textit{Synonyms : OS threads, Hardware threads, Physical threads.}
     
    8585
    8686\longnewglossaryentry{pool}
    87 {name={Thread Pool},text={thread-pool}}
     87{name={\Gls{at} Pool},text={thread-pool}}
    8888{
    8989Group of homogeneous threads that loop executing units of works. Often executing \glspl{jobs}.
Note: See TracChangeset for help on using the changeset viewer.