S(o)OS Deliverables

Print

 

A

C

D

F

G:

 H

I

  • IR / Intermediary Representation: is the language of an abstract machine designed to aid analysis and optimisations before final compilation into specific architecture binary code (object code).

M

  • Module: Each of the individual pieces of S(o)OS that can perform a OS task.
  • MPI: Message-Passing Interface

N

  • NFS: Network File System
  • NoC: Network-on-a-Chip
  • NUMA: Non-Uniform Memory Architecture 

O

  • Object Code: a sequence of instructions in a computer language in architecture specific code language.

P

  • Parallelised code: a program that spawns multiple threads in order to distribute the workload of a specific task over multiple processors. Generally this implies data distribution, which means that each thread fulfills the same task on different data. In some cases it can imply work distribution, in which case it relates to concurrency.
  • Processing Unit: the smallest processing entity in a processor - generally these are the cores in a multi- or many-core system, but with modern processor architectures, the boundaries of cores are not always clear
  • Processor: denotes generally the CPU (see there) of the system. Large scale environments are formed by integrating multiple processors into the system, so that we can no longer talk of a central processing unit, but of just processors. Typically in HPC (see there), multiple processors are co-located on one single board, thus forming a "node" (see there). In modern systems, processors generally incoporate multiple cores or processing units

Q

  • QoS: Quality of Service
  • QMS: Query Management Service 

R

  • RD: Resource Discovery
  • RDMPI: Resource Discovery Message Passing Interface
  • Resource: Each of the computing or memory  units available in the system
  • RR: Resource Requester
  • RP: Resource Provider 

S

  • SAM: Speculative Access to Memory
  • Service Orientation:
  • Supercomputer: a machine that is built with the most modern means to achieve high performance.

T

  • Thread: Each of the application's instruction sequences
  • TM: Transactional Memory

V

  • VFS: Virtual File System
  • Virtual Memory: generally the distinction between the physical (global) address space and the address space assigned for an individual process ("local" space). With processes being distributed across multiple processing units, the mapping from virtual to actual, physical space becomes more difficult, as each processing unit may host different part of the memory. Typically, this mapping is mostly executed by hardware. In S(o)OS, two approaches are discussed:
    (1) classical approach with virtual space mapping directly to physical space, but each unit having a different mapping table
    (2) completely virtualised approach, where the virtual address is a meaningless identifier to map to any physical address. This allows better distribution, but makes it difficult to identify overlaps, respectively to advance through memory.
    The realistic case will maintain a software memory mapping table with different endpoints for different regions. Overlaps can be explicitly noted.