TL;DR: This review will focus on the current understanding of heterogeneity within the antigen-specific memory CD8 T cell compartment and classifications of memory CD9 T cell subsets with defined and discrete functionalities.
Abstract: CD8 T cells comprising the memory pool display considerable heterogeneity, with individual cells differing in phenotype and function. This review will focus on our current understanding of heterogeneity within the antigen-specific memory CD8 T cell compartment and classifications of memory CD8 T cell subsets with defined and discrete functionalities. While numbers of circulatory memory CD8 T cells can be stably maintained in secondary lymphoid organs following contraction, recent data suggest that phenotype and/or function are defined by the age of memory CD8 T cell (or time after initial antigen-encounter). In addition, history of antigen stimulations has a profound effect on memory CD8 T cell populations, suggesting that repeated infections (or vaccination) have the capacity to further shape the memory CD8 T cell pool. Finally, genetic background of hosts and history of exposure to diverse microorganisms likely contribute to the observed heterogeneity in the memory CD8 T cell compartment. Extending our tool box and exploring alternative mouse models (i.e. ‘dirty’ and/or outbred mice) to encompass and better model diversity observed in humans will remain an important goal for the near future that will likely shed new light into the mechanisms that govern biology of memory CD8 T cells.
TL;DR: Automatic Pool Allocation is described, a transformation framework that segregates distinct instances of heap-based data structures into seperate memory pools and allows heuristics to be used to partially control the internal layout of those data structures.
Abstract: This paper describes Automatic Pool Allocation, a transformation framework that segregates distinct instances of heap-based data structures into seperate memory pools and allows heuristics to be used to partially control the internal layout of those data structures. The primary goal of this work is performance improvement, not automatic memory management, and the paper makes several new contributions. The key contribution is a new compiler algorithm for partitioning heap objects in imperative programs based on a context-sensitive pointer analysis, including a novel strategy for correct handling of indirect (and potentially unsafe) function calls. The transformation does not require type safe programs and works for the full generality of C and C++. Second, the paper describes several optimizations that exploit data structure partitioning to further improve program performance. Third, the paper evaluates how memory hierarchy behavior and overall program performance are impacted by the new transformations. Using a number of benchmarks and a few applications, we find that compilation times are extremely low, and overall running times for heap intensive programs speed up by 10-25% in many cases, about 2x in two cases, and more than 10x in two small benchmarks. Overall, we believe this work provides a new framework for optimizing pointer intensive programs by segregating and controlling the layout of heap-based data structures.
TL;DR: An operating system for a non-uniform memory access (NUMA) multiprocessor system that utilizes a software abstraction of the NUMA system hardware representing a hierarchical tree structure to maintain the most efficient level of affinity and to maintain balanced processor and memory loads is presented in this paper.
Abstract: An operating system for a non-uniform memory access (NUMA) multiprocessor system that utilizes a software abstraction of the NUMA system hardware representing a hierarchical tree structure to maintain the most efficient level of affinity and to maintain balanced processor and memory loads. The hierarchical tree structure includes leaf nodes representing the job processors, a root node representing at least one system resource shared by all the job processors, and a plurality of intermediate level nodes representing resources shared by different combinations of the job processors. The operating system includes a medium term scheduler for monitoring the progress of active thread groups distributed throughout the system and for assisting languishing thread groups, and a plurality of dispatchers each associated with one of the job processors for monitoring the status of the associated job processor and for obtaining thread groups for the associated job processor to execute. The operating system further includes a memory manager for allocating virtual and physical memory using a plurality of memory pools and frame treasuries.
TL;DR: In this article, a method of building a computer system is provided, which comprises determining an average memory storage per virtual machine, determining the average number of virtual machines per host computer, and determining an amount of memory storage each memory pool.
Abstract: A method of building a computer system is provided. The method comprises determining an average memory storage per virtual machine, determining an average number of virtual machines per host computer, and determining an amount of memory storage per memory pool. The method also comprises determining a maximum number of host computers per memory pool based on the average memory storage per virtual machine, the average number of virtual machines per host computer, and the amount of memory storage per memory pool. The method also includes assembling the appropriate number of host computers and memory storage, organized around memory pools, to handle a specific number of virtual machines.
TL;DR: It is argued that specific functional characteristics, such as the ability to persist and undergo vigorous secondary expansion leading to elevated memory cell numbers, remain the best markers of ‘good’ memory cells.
Abstract: In response to infection, antigen-specific CD8 + T cells undergo massive expansion in numbers, acquire effector mechanisms, and disseminate throughout the body. The expansion phase is followed by a contraction (death) phase, where 90-95% of antigen-specific CD8 + T cells are eliminated. The remaining antigen-specific CD8 + T cells form the initial memory pool, which can be stably maintained for life. In this review, we discuss evidence that early events after infection 'program' CD8 + T cells to expand, contract, and generate memory in a fashion that is largely insensitive to the duration of infection or antigen display. Recent data demonstrate, despite numerical stability, that memory CD8 + T-cell populations undergo phenotypic and functional changes with time after immunization. However, the early suggestion that specific markers can be used to identify memory CD8 + T cells has not been supported by recent studies. Thus, we argue that specific functional characteristics, such as the ability to persist and undergo vigorous secondary expansion leading to elevated memory cell numbers, remain the best markers of 'good' memory cells. Finally, we discuss experimental approaches to manipulate and accelerate generation of CD8 + T cells with memory characteristics, and how these systems can inform both basic and applied immunology.