The Experts below are selected from a list of 42 Experts worldwide ranked by ideXlab platform

Ivan D. Baev - One of the best experts on this subject based on the ideXlab platform.

  • Techniques for Region-Based Register Allocation
    2009 International Symposium on Code Generation and Optimization, 2009
    Co-Authors: Ivan D. Baev
    Abstract:

    Register allocation is an important component of every compiler and numerous studies have investigated ways to improve allocation quality or reduce allocation time. However, techniques proposed to reduce Register allocation time tend to have a detrimental impact on application run-time. In this paper we propose three enhancements to region-based Register allocation that not only provide scalable allocation times across multiple applications, but also improve application run-time. We have developed a Register pressure based model to determine when using multiple regions is profitable, proposed the use of different regions for each Register Class, and designed a new region formation algorithm. Our implementation in HP-UX C/C++/Fortran production compilers led to 29% allocation time and 1.4% run-time improvements over a global allocator on the SPEC2006FP suite of benchmarks.

  • CGO - Techniques for Region-Based Register Allocation
    2009 International Symposium on Code Generation and Optimization, 2009
    Co-Authors: Ivan D. Baev
    Abstract:

    Register allocation is an important component of every compiler and numerous studies have investigated ways to improve allocation quality or reduce allocation time. However, techniques proposed to reduce Register allocation time tend to have a detrimental impact on application run-time. In this paper we propose three enhancements to region-based Register allocation that not only provide scalable allocation times across multiple applications, but also improve application run-time. We have developed a Register pressure based model to determine when using multiple regions is profitable, proposed the use of different regions for each Register Class, and designed a new region formation algorithm. Our implementation in HP-UX C/C++/Fortran production compilers led to 29% allocation time and 1.4% run-time improvements over a global allocator on the SPEC2006FP suite of benchmarks.

Yunheung Paek - One of the best experts on this subject based on the ideXlab platform.

  • A preliminary study on data allocation of on-chip dual memory banks
    Proceedings Sixth Annual Workshop on Interaction between Compilers and Computer Architectures, 2002
    Co-Authors: Yunheung Paek
    Abstract:

    Efficient utilization of memory space is extremely important in embedded applications. Many DSP vendors provide a dual memory bank system that allows the applications to access two memory banks simultaneously. Unfortunately, we have found that existing vendor-provided compilers cannot generate highly efficient code for dual memory space because current compiler technology is unable to fully exploit this DSP hardware feature. Thus, software developers for an embedded processor have hard time developing software by hand in assembly to exploit the hardware feature efficiently. In this paper, we present a preliminary study of a memory allocation technique for dual memory space. Through there has been some work done for dual memory banks, efficient code was generated but it required so long compilation time. Although the compilation speed is relatively of less importance for embedded processors, it still should have a reasonable upper bound particularly for industry compilers due to ever increasing demands on faster time-to-market embedded software design and implementation. To achieve such reasonable compilation speed, we simplified the dual memory bank allocation problem by decoupling our code generation into five phases: Register Class allocation, code compaction, memory bank assignment, Register assignment and memory offset assignment. The experimental results show that our generated codes perform as good as previous work, yet reducing the compilation time dramatically.

  • Interaction between Compilers and Computer Architectures - A Study on Data Allocation of On-Chip Dual Memory Banks
    2002
    Co-Authors: Yunheung Paek
    Abstract:

    Efficient utilization of memory space is extremely important in embedded applications. Many DSP vendors provide a dual memory bank system that allows the applications to access two memory banks simultaneously. Unfortunately, we have found that existing vendor-provided compilers cannot generate highly efficient code for dual memory space because current compiler technology is unable to fully exploit this DSP hardware feature. Thus, software developers for an embedded processor have hard time developing software by hand in assembly to exploit the hardware feature efficiently. In this paper, we present a preliminary study of a memory allocation technique for dual memory space. Through there has been some work done for dual memory banks, efficient code was generated but it required so long compilation time. Although the compilation speed is relatively of less importance for embedded processors, it still should have a reasonable upper bound particularly for industry compilers due to ever increasing demands on faster time-to-market embedded software design and implementation. To achieve such reasonable compilation speed, we simplified the dual memory bank allocation problem by decoupling our code generation into five phases: Register Class allocation, code compaction, memory bank assignment, Register assignment and memory offset assignment. The experimental results show that our generated codes perform as good as previous work, yet reducing the compilation time dramatically.

Ardis Cameron - One of the best experts on this subject based on the ideXlab platform.

  • Spaces of Encounter: The Cultural Labor of Class Difference
    International Labor and Working-Class History, 2020
    Co-Authors: Ardis Cameron
    Abstract:

    This article explores the complicated relationship between narratives of working-Class America and formations of national Otherness. Arguing that Class, sex, and ethnicity are deeply relational, it seeks to map the symbolic terrain and emotional depth of Class difference as it circulates in the American imaginary. It ask how we might think about the cultural poetics of Class difference in ways that make a difference—in ways that Register Class narratives as participants in constructions of the Nation and the “normal,” the irregular and the queer? Attending to the kinds of emotional and conceptual services stories of Class perform, it locates “Class” as part of a discursive imaginary topography that structures and turns narratives of working men and women into spaces of encounter, contest, and containment.

  • Spaces of Encounter: The Cultural Labor of Class Difference
    International Labor and Working-class History, 2006
    Co-Authors: Ardis Cameron
    Abstract:

    This article explores the complicated relationship between narratives of working-Class America and formations of national Otherness. Arguing that Class, sex, and ethnicity are deeply relational, it seeks to map the symbolic terrain and emotional depth of Class difference as it circulates in the American imaginary. It ask how we might think about the cultural poetics of Class difference in ways that make a difference––in ways that Register Class narratives as participants in constructions of the Nation and the “normal,” the irregular and the queer? Attending to the kinds of emotional and conceptual services stories of Class perform, it locates “Class” as part of a discursive imaginary topography that structures and turns narratives of working men and women into spaces of encounter, contest, and containment. My own feeling is that ‘identity’ is an acutely double-edged weapon––not useless, but dependent on the context, sometimes risky––and that the closeness between an identity and a derogatory identification may . . . resemble that between being a subject and the process of subjectification. Denise Riley Let me begin with two images that saturated the news media during one week in the winter of 2004. The first is the international speedway at the Daytona 500 where 180,000 racing fans (“some a few beers into the celebrations”), rev up to hear President Bush commence race week activities. Air Force One is parked on an airfield adjacent to the stands as Bush dons his snappy new Nascar jacket, rolls into the stadium and shouts the traditional, “Gentlemen, start your engines.” The other image is of hundreds of gay couples flocking to San Francisco to get married before state lawmakers can go to court to seek an injunction. On the opposite coast Massachusetts lawmakers are shown heatedly debating a constitutional ban against gay marriage as opponents, unable to get into the gallery, spill over into Boston’s angry streets where demonstrations continue for three days. At fist glance, these images seem disconnected and worlds apart: the former a cynical nod to the rural working Classes and the votes they represent, the latter a familiar reportage of the sexually deviant “acting up” and “in your face.” But in the discursive imaginary topography of American culture, these two media moments share a complicated history of encounter that has shaped modernist conceptions of national Otherness in ways that conjoin the International Labor and Working-Class History No. 69, Spring 2006, pp. 177–194 # 2006 International Labor and Working-Class History, Inc. working Classes, especially rural wage-earners, with the spectacular and the illicit––oddities of the eye their irregularities represent. In his recent examination of social thought and American literature, Michael Trask argues that “Class and sex are deeply relational,” historically moving in tandem as mutual sites of social anxiety, threat, and displacement, especially during times of rapid change and wide spread dislocation. “The disobedience and lawlessness that social theorists located in the erotic realm,” Trash points out, “had a close affinity to the disobedience that contemporaries saw as the defining attribute of the Class other.” While Trask is concerned with the first quarter of the twentieth century, the deployment of sexual illicitness in the making of working-Class identity has a long genealogy rooted in a tradition of representational practices. In recent years scholars have begun to map the symbolic charge and psychological depth of such practices and the ways in which “mismatches between sex, gender, and desire” have been central to the establishment of the “unnatural” Otherness of the margins and the normalizing “us-ness” of the center. Because national unity demands the erasure or masking of Class difference, moral discourses and “sex panics” have been especially effective in mobilizing a national sense of belonging, especially during moments of crisis. Anna Marie Smith shows, for example, that in the Thatcherite purge against British homosexuality “Englishness” depended upon queerness as a way to imagine spaces of national harmony and collective memories of “our” nation. Homophobic discourse is organized not around a fear of otherness but around an obsession with otherness. This obsession is structured symptomatically; insofar as homophobic representations condensed a whole range of anxieties onto the queerness signifier, queerness began to function as a supplement to Thatcherite discourse. Queerness became one of the enemy elements which supported the phantasmatic construction of the family as the antagonism-free center of the British nation. Studies like these push labor historians to think about representational practices that weld together cultural unity in the face of economic disparities and social inequalities. The operations of Otherness underscore as well the instability of Class identities and the limits of conceptualizing Class difference in socioeconomic terms alone; Class becomes both an emotionally charged social identity and a signifying practice always at work. And for many Americans, Class resonates less as a function of economic power, than as an effect of cultural difference and social style, “a matter of embodied identity akin to the Classification of erotic desire less in terms of object choice, than according to sexual types.” Picture the Nascar fan as his rural, southern, unassimilated image took hold in relation to the threatened chaos and queer desires enacted by gay marriage. Long before the death of the Nascar racing hero Dale Earnhardt, stock car fans hovered in the nooks and crannies of national culture, a vague part of the rural “toothless and couthless.” Their motto, “Guns, God and Guts,” emblazoned 178 ILWCH, 69, Spring 2006

Dukki Chung - One of the best experts on this subject based on the ideXlab platform.

  • Device Register Classes for embedded systems
    2011 11th International Conference on Control Automation and Systems, 2011
    Co-Authors: Jonathan R. Engdahl, Dukki Chung
    Abstract:

    A device Register is the view any peripheral device presents to the software world. Low-level routines in typical embedded systems, e.g., device drivers, communicate with devices by reading and writing device Registers. Many processors use memory-mapped I/O, which assigns device Registers to fixed addresses in conventional memory. To high level languages like C or C++, memory mapped devices behave like ordinary data objects to some extent. Programs use assignment operators to read values from or write values to memory mapped device Registers. Unfortunately, traditional approaches for organizing and accessing memory-mapped devices are inconvenient and error prone. In this paper, a new way of writing and using C++ Classes which encapsulate memory mapped device Registers is described. The principle is extended to handle I/O mapped device Registers for coprocessors. A Device Register Class description language is also described.

Vivek Sarkar - One of the best experts on this subject based on the ideXlab platform.

  • A decoupled non-SSA global Register allocation using bipartite liveness graphs
    ACM Transactions on Architecture and Code Optimization, 2013
    Co-Authors: Rajkishore Barik, Jisheng Zhao, Vivek Sarkar
    Abstract:

    Register allocation is an essential optimization for all compilers. A number of sophisticated Register allocation algorithms have been developed over the years. The two fundamental Classes of Register allocation algorithms used in modern compilers are based on Graph Coloring (GC) and Linear Scan (LS). However, these two algorithms have fundamental limitations in terms of precision. For example, the key data structure used in GC-based algorithms, the interference graph, lacks information on the program points at which two variables may interfere. The LS-based algorithms make local decisions regarding spilling, and thereby trade off global optimization for reduced compile-time and space overheads. Recently, researchers have proposed Static Single Assignment (SSA)-based decoupled Register allocation algorithms that exploit the live-range split points of the SSA representation to optimally solve the spilling problem. However, SSA-based Register allocation often requires extra complexity in repairing Register assignments during SSA elimination and in addressing architectural constraints such as aliasing and ABI encoding; this extra overhead can be prohibitively expensive in dynamic compilation contexts. This article proposes a decoupled non-SSA--based global Register allocation algorithm for dynamic compilation. It addresses the limitations in current algorithms by introducing a Bipartite Liveness Graph (BLG)-based Register allocation algorithm that models the spilling phase as an optimization problem on the BLG itself and the assignment phase as a separate optimization problem. Advanced Register allocation optimizations such as move coalescing, live-range splitting, and Register Class handling are also performed along with the spilling and assignment phases. In the presence of Register Classes, we propose a bucket-based greedy heuristic for assignment that strikes a balance between spill-cost and Register Class constraints. We present experimental evaluation of our BLG-based Register allocation algorithm and compare it with production-quality Register allocators in Jikes RVM and LLVM.