EDBT 2026 Demo / reviewers in the wild / expert
Xinmin Tian
dblp:79/5741
· DBLP profile ↗
27ranked-venue papers
7as first author
0since 2021 · last 2009
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 18 · 3 first-authorSoftware engineering, systems software and programming languages · 5Applied, interdisciplinary, general and emerging computing · 4 · 3 first-author
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
3 papers |
Concurrent programming · 49% Programming languages and type systems · 29% Compilers and program optimization · 22% | |
| Computer architecture, parallel and distributed computing, and storage systems
5 papers |
Parallel and multicore computing · 59% GPUs and heterogeneous computing · 22% Performance modeling and evaluation · 10% |
Topics — the 15 heaviest of 17, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Concurrent programming
transactional memory |
0.2 | 2 | 2009 | NePalTM: design and implementation of nested parallelism for transactional memory systems · PPoPP 2009 Design and implementation of transactional constructs for C/C++ · OOPSLA 2008 |
Compilers and program optimization › parallelization
nested parallelism |
0.1 | 1 | 2009 | NePalTM: design and implementation of nested parallelism for transactional memory systems · PPoPP 2009 |
Parallel and multicore computing
parallel programming models |
0.1 | 1 | 2009 | NePalTM: design and implementation of nested parallelism for transactional memory systems · PPoPP 2009 |
Programming languages and type systems › concurrent programming languages
language constructs for concurrency |
0.1 | 1 | 2008 | Design and implementation of transactional constructs for C/C++ · OOPSLA 2008 |
Concurrent programming › transactional memory
software transactional memory |
0.1 | 1 | 2008 | Design and implementation of transactional constructs for C/C++ · OOPSLA 2008 |
GPUs and heterogeneous computing › heterogeneous programming models
heterogeneous multicore programming |
0.1 | 1 | 2007 | EXOCHI: architecture and programming environment for a heterogeneous multi-core multithreaded system · PLDI 2007 |
Parallel and multicore computing
speculative parallelization |
0.1 | 1 | 2007 | Tight analysis of the performance potential of thread speculation using spec CPU 2006 · PPoPP 2007 |
Parallel and multicore computing › speculative parallelization
thread-level speculation |
0.1 | 1 | 2007 | Tight analysis of the performance potential of thread speculation using spec CPU 2006 · PPoPP 2007 |
Compilers and program optimization › compiler construction
compiler support for transactional memory |
0.0 | 1 | 2008 | Design and implementation of transactional constructs for C/C++ · OOPSLA 2008 |
Performance modeling and evaluation › benchmarking
benchmark evaluation |
0.0 | 1 | 2007 | Tight analysis of the performance potential of thread speculation using spec CPU 2006 · PPoPP 2007 |
GPUs and heterogeneous computing › heterogeneous architecture
heterogeneous multicore architecture |
0.0 | 1 | 2007 | EXOCHI: architecture and programming environment for a heterogeneous multi-core multithreaded system · PLDI 2007 |
Performance modeling and evaluation
workload characterization |
0.0 | 1 | 2007 | Tight analysis of the performance potential of thread speculation using spec CPU 2006 · PPoPP 2007 |
Processor architecture and microarchitecture
multithreading |
0.0 | 1 | 1997 | Experiences with Non-numeric Applications on Multithreaded Architectures · PPoPP 1997 |
Processor architecture and microarchitecture › exception handling
interrupt handling |
0.0 | 1 | 1996 | Polling Watchdog: Combining Polling and Interrupts for Efficient Message Handling · ISCA 1996 |
Parallel and multicore computing › parallel programming models
message passing |
0.0 | 1 | 1996 | Polling Watchdog: Combining Polling and Interrupts for Efficient Message Handling · ISCA 1996 |
Methods — techniques the papers use, named apart from their topics
transactional memory · 0.2fat binary compilation · 0.1OpenMP pragma extension · 0.1speedup analysis · 0.1misspeculation modeling · 0.1simulation · 0.0performance measurement · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2009 | NePaLTM: Design and Implementation of Nested Parallelism for Transactional Memory Systems
Haris Volos 0001, Adam Welc, Ali-Reza Adl-Tabatabai, Tatiana Shpeisman, Xinmin Tian, Ravi Narayanaswamy |
ECOOP | 5 |
| 2009 | NePalTM: design and implementation of nested parallelism for transactional memory systemsabstractWe present the programming model, design and implementation of NePalTM; a transactional memory system where atomic blocks can be used for concurrency control at an arbitrary level of nested parallelism. Haris Volos 0001, Adam Welc, Ali-Reza Adl-Tabatabai, Tatiana Shpeisman, Xinmin Tian, Ravi Narayanaswamy |
PPoPP | 5 |
| 2009 | On the exploitation of loop-level parallelism in embedded applicationsabstractAdvances in the silicon technology have enabled increasing support for hardware parallelism in embedded processors. Vector units, multiple processors/cores, multithreading, special-purpose accelerators such as DSPs or cryptographic engines, or a combination of the above have appeared in a number of processors. They serve to address the increasing performance requirements of modern embedded applications. To what extent the available hardware parallelism can be exploited is directly dependent on the amount of parallelism inherent in the given application and the congruence between the granularity of hardware and application parallelism. This paper discusses how loop-level parallelism in embedded applications can be exploited in hardware and software. Specifically, it evaluates the efficacy of automatic loop parallelization and the performance potential of different types of parallelism, viz., true thread-level parallelism (TLP), speculative thread-level parallelism and vector parallelism, when executing loops. Additionally, it discusses the interaction between parallelization and vectorization. Applications from both the industry-standard EEMBC®,11.1, EEMBC 2.0 and the academic MiBench embedded benchmark suites are analyzed using the Intel®2C compiler. The results show the performance that can be achieved today on real hardware and using a production compiler, provide upper bounds on the performance potential of the different types of thread-level parallelism, and point out a number of issues that need to be addressed to improve performance. The latter include parallelization of libraries such as libc and design of parallel algorithms to allow maximal exploitation of parallelism. The results also point to the need for developing new benchmark suites more suitable to parallel compilation and execution. 1Other names and brands may be claimed as the property of others. 2Intel is a trademark of Intel Corporation or its subsidiaries in the United States and other countries. Arun Kejariwal, Alexander V. Veidenbaum, Alexandru Nicolau, Milind Girkar, Xinmin Tian, Hideki Saito 0001 |
ACM Trans. Embed. Comput. Syst. | 5 |
| 2008 | Design and implementation of transactional constructs for C/C++abstractThis paper presents a software transactional memory system that introduces first-class C++ language constructs for transactional programming. We describe new C++ language extensions, a production-quality optimizing C++ compiler that translates and optimizes these extensions, and a high-performance STM runtime library. The transactional language constructs support C++ language features including classes, inheritance, virtual functions, exception handling, and templates. The compiler automatically instruments the program for transactional execution and optimizes TM overheads. The runtime library implements multiple execution modes and implements a novel STM algorithm that supports both optimistic and pessimistic concurrency control. The runtime switches a transaction's execution mode dynamically to improve performance and to handle calls to precompiled functions and I/O libraries. We present experimental results on 8 cores (two quad-core CPUs) running a set of 20 non-trivial parallel programs. Our measurements show that our system scales well as the numbers of cores increases and that our compiler and runtime optimizations improve scalability. Adam Welc, Ali-Reza Adl-Tabatabai, Moshe Bach, Sion Berkowits, James Cownie, Robert Geva, Sergey Kozhukow, Ravi Narayanaswamy, Jeffrey Olivier, Serguei Preis, Bratin Saha, Ady Tal, Xinmin Tian |
OOPSLA | 14 |
| 2008 | Exploring the Emerging Applications for Transactional MemoryabstractWith the dominance of multicore processors, parallel programming has become more important. Transactional Memory is a promising solution to synchronisation issues that are hurting parallel programmers. While there are a lot of researches on the implementation tradeoffs of TM, there is rare study on the applications that may utilize the techniques, which is essential to both providing feedbacks to the TM designers and to helping potential users. This paper makes the first step of this work by presenting our identification of emerging applications for the comprehensive study of TM. The selection is based on application-domains including popular server/client softwares, multimedia applications, bioinformatics applications, data mining applications, and other scientific applications, which cover most of the dwarfs. A preliminary experiment is also provided to illustrate what we can get from this work. Xinmin Tian |
PDCAT | 3 |
| 2007 | EXOCHI: architecture and programming environment for a heterogeneous multi-core multithreaded systemabstractFuture mainstream microprocessors will likely integrate specialized accelerators, such as GPUs, onto a single die to achieve better performance and power efficiency. However, it remains a keen challenge to program such a heterogeneous multicore platform, since these specialized accelerators feature ISAs and functionality that are significantly different from the general purpose CPU cores. In this paper, we present EXOCHI: (1) Exoskeleton Sequencer(EXO), an architecture to represent heterogeneous acceleratorsas ISA-based MIMD architecture resources, and a shared virtual memory heterogeneous multithreaded program execution model that tightly couples specialized accelerator cores with generalpurpose CPU cores, and (2) C for Heterogeneous Integration(CHI), an integrated C/C++ programming environment that supports accelerator-specific inline assembly and domain-specific languages. The CHI compiler extends the OpenMP pragma for heterogeneous multithreading programming, and produces a single fat binary with code sections corresponding to different instruction sets. The runtime can judiciously spread parallel computation across the heterogeneous cores to optimize performance and power. Perry H. Wang, Jamison D. Collins, Gautham N. Chinya, Xinmin Tian, Milind Girkar, Nick Y. Yang, Guei-Yuan Lueh, Hong Wang 0003 |
PLDI | 5 |
| 2007 | Tight analysis of the performance potential of thread speculation using spec CPU 2006abstractMulti-cores such as the Intel®1 Core™2 Duo processor, facilitate efficient thread-level parallel execution of ordinary programs, wherein the different threads-of-execution are mapped onto different physical processors. In this context, several techniques have been proposed for auto-parallelization of programs. Recently, thread-level speculation (TLS) has been proposed as a means to parallelize difficult-to-analyze serial codes. In general, more than one technique can be employed for parallelizing a given program. The overlapping nature of the applicability of the various techniques makes it hard to assess the intrinsic performance potential of each. In this paper, we present a tight analysis of the (unique) performance potential of both: (a) TLS in general and (b) specific types of thread-level speculation, viz., control speculation, data dependence speculation and data value speculation, for the SPEC2 CPU2006 benchmark suite in light of the various limiting factors such as the threading overhead and misspeculation penalty. To the best of our knowledge, this is the first evaluation of TLS based on SPEC CPU2006 and accounts for the aforementioned real-life con-straints. Our analysis shows that, at the innermost loop level, the upper bound on the speedup uniquely achievable via TLS with the state-of-the-art thread implementations for both SPEC CINT2006 and CFP2006 is of the order of 1%. Arun Kejariwal, Xinmin Tian, Milind Girkar, Wei Li 0015, Sergey Kozhukhov, Utpal Banerjee, Alexandru Nicolau, Alexander V. Veidenbaum, Constantine D. Polychronopoulos |
PPoPP | 2 |
| 2007 | Parallel protein secondary structure prediction schemes using Pthread and OpenMP over hyper-threading technology
Gulsah Altun, Xinmin Tian, Robert W. Harrison, Phang C. Tai, Yi Pan 0001 |
J. Supercomput. | 3 |
| 2006 | Probablistic Self-Scheduling
Milind Girkar, Arun Kejariwal, Xinmin Tian, Hideki Saito 0001, Alexandru Nicolau, Alexander V. Veidenbaum, Constantine D. Polychronopoulos |
Euro-Par | 3 |
| 2006 | Lightweight lock-free synchronization methods for multithreadingabstractEmergence of chip multiprocessors has created a need for exploitation of beyond DOALL-type thread-level parallelism (TLP). This calls for development of efficient thread synchronization techniques to exploit TLP in general parallel programs with dependences. For this, several thread synchronization techniques have been proposed in the past. However, these limit the exploitation of fine-grain TLP due to large run-time overhead. Furthermore, the existing approaches can potentially result in (i) deadlocks between the different threads and (ii) non-deterministic run-time execution behavior as these techniques are oblivious of the underlying memory model. In this paper, we propose lightweight lock-free thread synchronization methods to exploit TLP in general parallel programs with dependences. Each synchronization method intrinsically guarantees the following in a multithreaded program: (a) sequential consistency, (b) atomicity of writes to the shared synchronization construct and (c) absence of deadlocks. This reduces the programming effort considerably, thereby easing the development of software for multithreaded systems. For each method we formally prove that there cannot occur a deadlock between the different threads. This obviates the cumbersome and time-consuming process of detecting and eliminating deadlocks from the programmer. Experiments show that our synchronization methods incur a minimal overhead of 7.16% on an average. Further, we achieve performance speedups upto 3.39x on kernels extracted from the industry standard SPEC OMPM 2001 benchmarks, on a dedicated Intel® Xeon® 2.78 GHz 4-way multiprocessor. Arun Kejariwal, Hideki Saito 0001, Xinmin Tian, Milind Girkar, Wei Li 0015, Utpal Banerjee, Alexandru Nicolau, Constantine D. Polychronopoulos |
ICS | 3 |
| 2006 | On the performance potential of different types of speculative thread-level parallelism: The DL version of this paper includes corrections that were not made available in the printed proceedingsabstractRecent research in thread-level speculation (TLS) has proposed several mechanisms for optimistic execution of difficult-to-analyze serial codes in parallel. Though it has been shown that TLS helps to achieve higher levels of parallelism, evaluation of the unique performance potential of TLS, i.e., performance gain that be achieved only through speculation, has not received much attention. In this paper, we evaluate this aspect, by separating the speedup achievable via true TLP (thread-level parallelism) and TLS, for the SPEC CPU2000 benchmark. Further, we dissect the performance potential of each type of speculation --- control speculation, data dependence speculation and data value speculation. To the best of our knowledge, this is the first dissection study of its kind. Assuming an oracle TLS mechanism --- which corresponds to perfect speculation and zero threading overhead --- whereby the execution time of a candidate program region (for speculative execution) can be reduced to zero, our study shows that, at the loop-level, the upper bound on the arithmetic mean and geometric mean speedup achievable via TLS across SPEC CPU2000 is 39.16% (standard deviation = 31.23) and 18.18% respectively. Arun Kejariwal, Xinmin Tian, Wei Li 0015, Milind Girkar, Sergey Kozhukhov, Hideki Saito 0001, Utpal Banerjee, Alexandru Nicolau, Alexander V. Veidenbaum, Constantine D. Polychronopoulos |
ICS | 2 |
| 2006 | A general approach for partitioning N-dimensional parallel nested loops with conditionalsabstractParallel loops account for the greatest amount of parallelism in scientific and numerical codes. For example, most of the DO loops in SPEC CFP2000 and SPEC OMPM2001 are of DOALL type and account for a large percentage of the total execution time. One of the ways to exploit parallelism is to partition the iteration space of a DOALL loop amongst different processors in a parallel processor system. Naturally, a good partitioning is of key importance to achieve high performance and for efficient use of multiprocessor systems. Although a significant amount of work has been done in partitioning and scheduling of loops with both rectangular and non-rectangular iteration spaces, the problem of partitioning loops with conditionals has not been addressed so far to the best of our knowledge. In this paper, we present a mathematical model for partitioning parallel nested loops, both perfect and non-perfect, with conditionals, where the expressions in a conditional are affine functions of the outer loop indices. We present a loop transformation based on elimination of redundant constraints bounding the iteration space of a nested loop. The transformation plays a critical role during the (static) partitioning process as it helps to capture the "exact" lower and upper bounds (can be either a constant or symbolic) of the loop indices. We generate a canonical form of the loop nest using the transformation and employ the geometric approach we proposed earlier (in [1, 2]) for partitioning the iteration space along an axis corresponding to the outermost loop. For cases in which such a transformation does not exist, we propose a general approach for loop canonicalization. We present several examples from the literature and numerical packages to illustrate the effectiveness of our approach. Arun Kejariwal, Alexandru Nicolau, Hideki Saito 0001, Xinmin Tian, Milind Girkar, Utpal Banerjee, Constantine D. Polychronopoulos |
SPAA | 4 |
| 2006 | Multimedia vectorization of floating-point MIN/MAX reductionsabstractAbstract Finding the minimum or maximum value in an array forms an important step in a variety of applications. This paper discusses vectorization schemes that take advantage of the streaming‐SIMD‐extensions in commonly used floating‐point MIN and MAX reductions. Performance advantages are demonstrated with experimental results. Copyright © 2006 John Wiley & Sons, Ltd. Aart J. C. Bik, Xinmin Tian, Milind Girkar |
Concurr. Comput. Pract. Exp. | 2 |
| 2005 | Practical Compiler Techniques on Efficient Multithreaded Code Generation for OpenMP ProgramsabstractState-of-the-art multiprocessor systems pose several difficulties: (i) the user has to parallelize the existing serial code; (ii) explicitly threaded programs using a thread library are not portable; (iii) writing efficient multi-threaded programs requires intimate knowledge of machine's architecture and micro-architecture. Thus, well-tuned parallelizing compilers are in high demand to leverage state-of-the-art computer advances of NUMA-based multiprocessors, simultaneous multi-threading processors and chip-multiprocessor systems in response to the performance quest from the high-performance computing community. On the other hand, OpenMP* has emerged as the industry standard parallel programming model. Applications can be parallelized using OpenMP with less effort in a way that is portable across a wide range of multiprocessor systems. In this paper, we present several practical compiler optimization techniques and discuss their effect on the performance of OpenMP programs. We elaborate on the major design considerations in a high performance OpenMP compiler and present experimental data based on the implementation of the optimizations in the Intel® C++ and Fortran compilers. Interactions of the OpenMP transformation with other sequential optimizations in the compiler are discussed. The techniques in this paper have achieved significant performance improvements on the industry standard SPEC* OMPM2001 and SPEC* OMPL2001 benchmarks, and these performance results are presented for Intel® Pentium® and Itanium® processor based systems. Xinmin Tian, Milind Girkar, Aart J. C. Bik, Hideki Saito 0001 |
Comput. J. | 1 |
| 2005 | A compiler for exploiting nested parallelism in OpenMP programs
Xinmin Tian, Jay P. Hoeflinger, Grant Haab, Yen-Kuang Chen, Milind Girkar, Sanjiv Shah |
Parallel Comput. | 1 |
| 2004 | Physical Experimentation with Prefetching Helper Threads on Intel's Hyper-Threaded ProcessorsabstractPre-execution techniques have received much attention as an effective way of prefetching cache blocks to tolerate the ever-increasing memory latency. A number of pre-execution techniques based on hardware, compiler, or both have been proposed and studied extensively by researchers. They report promising results on simulators that model a simultaneous multithreading (SMT) processor. We apply the helper threading idea on a real multithreaded machine, i.e., Intel Pentium 4 processor with hyper-threading technology, and show that indeed it can provide wall-clock speedup on real silicon. To achieve further performance improvements via helper threads, we investigate three helper threading scenarios that are driven by automated compiler infrastructure, and identify several key challenges and opportunities for novel hardware and software optimizations. Our study shows a program behavior changes dynamically during execution. In addition, the organizations of certain critical hardware structures in the hyper-threaded processors are either shared or partitioned in the multithreading mode and thus, the tradeoffs regarding resource contention can be intricate. Therefore, it is essential to judiciously invoke helper threads by adapting to the dynamic program behavior so that we can alleviate potential performance degradation due to resource contention. Moreover, since adapting to the dynamic behavior requires frequent thread synchronization, having light-weight thread synchronization mechanisms is important. Dongkeun Kim, Shih-Wei Liao, Perry H. Wang, Juan del Cuvillo, Xinmin Tian, Hong Wang 0003, Donald Yeung, Milind Girkar, John Paul Shen |
CGO | 5 |
| 2004 | Effect of Optimizations on Performance of OpenMP Programs
Xinmin Tian, Milind Girkar |
HiPC | 1 |
| 2004 | Towards Efficient Multi-Level Threading of H.264 Encoder on Intel Hyper-Threading ArchitecturesabstractSummary form only given. Exploiting thread-level parallelism is a promising way to improve the performance of multimedia applications that are running on multithreading general-purpose processors. We describe the work in developing our threaded H.264 encoder. We parallelize the H.264 encoder using the OpenMP programming model, which allows us to leverage the advanced compiler technologies in the Intel/spl reg/ C++ compiler for Intel hyper-threading architectures. After we present our design considerations in the parallelization process, we describe two efficient methods for multilevel data partitioning, which can improve the performance of our multithreaded H.264 encoder. Furthermore, we exploit different options in the OpenMP programming. While one implementation that uses the task queuing model is slightly slower than the other implementation, it is easier to be read than the other one. The results have shown good speedups ranging from 3.74x to 4.53x over the well-optimized sequential code performance on a system of 4 Intel Xeon/spl trade/processors with hyper-threading technology. Yen-Kuang Chen, Xinmin Tian, Steven Ge, Milind Girkar |
IPDPS | 2 |
| 2003 | Compiler and Runtime Support for Running OpenMP Programs on Pentium-and Itanium-ArchitecturesabstractExploiting Thread-Level Parallelism (TLP) is a promising way to improve the performance of applications with the advent of general-purpose cost effective uni-processor and shared-memory multiprocessor systems. In this paper, we describe the OpenMP* implementation in the Intel/spl reg/ C++ and Fortran compilers for Intel platforms. We present our major design consideration and decisions in the Intel compiler for generating efficient multithreaded codes guided by OpenMP directives and pragmas. We describe several transformation phases in the compiler for the OpenMP* parallelization. In addition to compiler support, the OpenMP runtime library is a critical part of the Intel compiler. We present runtime techniques developed in the Intel OpenMP runtime library for exploiting thread-level parallelism as well as integrating the OpenMP support with other forms of threading termed as sibling parallelism. The performance results of a set of benchmarks show good speedups over the well-optimized serial code performance on Intel/spl reg/ Pentium- and Itanium-processor based systems. Xinmin Tian, Milind Girkar, Sanjiv Shah, Douglas Armstrong, Ernesto Su, Paul Petersen |
HIPS | 1 |
| 1997 | Experiences with Non-numeric Applications on Multithreaded ArchitecturesabstractS.124-135 Angela C. Sodan, Guang R. Gao, Olivier Maquelin, Jens-Uwe Schultz, Xinmin Tian |
PPoPP | 5 |
| 1996 | Multithreading implementation of a distributed shortest path algorithm on EARTH multiprocessorabstractNetwork optimization refers to those optimization problems defined on weighted graphs. In general, the shortest path and max-flow problems have served as critical building blocks in formulating solutions to more complex network optimization problems. In this paper, as the first step in studying and evaluating implementations of network optimization problems on multithreaded multiprocessors, we present a multithreaded implementation of a distributed shortest path algorithm proposed by K.M. Chandy and J. Misra (1982) on the EARTH-MANNA multithreaded architecture, and discuss performance results on the ERTH-MANNA system. Parimala Thulasiraman, Xinmin Tian, Guang R. Gao |
HiPC | 2 |
| 1996 | Quantitive studies of data-locality sensitivity on the EARTH multithreaded architecture: preliminary resultsabstractMultithreading has been promoted as an effective mechanism to hide inter-processor communications and remote data access latencies by quickly switching among a set of ready threads. In this paper, we show that multitreading provides an immunity to the performance variations due to changes in data distributions in a distributed-memory multiprocessor. First, toe propose two performance metrics to quantify the sensitivity of performance to data-locality. Second, we perform a quantitative comparison of data-locality sensitivity with both single-threaded and multithreaded computations. These experiments are performed on a 20-node EARTH-MANNA system. Our results show that not only does a multithreaded computation yields higher performance than the single-threaded version, but also that its performance is more robust (less affected) by variations in data-locality. Xinmin Tian, Shashank S. Nemawarkar, Guang R. Gao, Herbert H. J. Hum, Olivier Maquelin, Angela C. Sodan, Kevin B. Theobald |
HiPC | 1 |
| 1996 | Polling Watchdog: Combining Polling and Interrupts for Efficient Message HandlingabstractParallel systems supporting multithreading, or message passing in general, have typically used either polling or interrupts to handle incoming messages. Neither approach is ideal; either may lead to excessive overheads or message-handling latencies, depending on the application. This paper investigates a combined approach---Polling Watchdog, where both are used depending on the circumstances. The Polling Watchdog is a simple hardware extension that limits the generation of interrupts to the cases where explicit polling fails to handle the message quickly. As an added benefit, this mechanism also has the potential to simplify the interaction between interrupts and the network accesses performed by the program.We present the resulting performance for the EARTH-MANNA-S system, an implementation of the EARTH (Efficient Architecture for Running THreads) execution model on the MANNA multiprocessor. In contrast to the original EARTH-MANNA system, this system does not use a dedicated communication processor. Rather, synchronization and communication tasks are performed on the same processor as the regular computations. Therefore, an efficient message-handling mechanism is essential to good performance. Simulation results and performance measurements show that the Polling Watchdog indeed performs better than either polling or interrupts alone. In fact, this mechanism allows the EARTH-MANNA-S system to achieve the same level of performance as the original EARTH-MANNA multithreaded system. Olivier Maquelin, Guang R. Gao, Herbert H. J. Hum, Kevin B. Theobald, Xinmin Tian |
ISCA | 5 |
| 1995 | A design study of the EARTH multiprocessor
Herbert H. J. Hum, Olivier Maquelin, Kevin B. Theobald, Xinmin Tian, Xinan Tang, Guang R. Gao, Phil Cupryk, Nasser Elmasri, Laurie J. Hendren, Alberto Jimenez, Shoba Krishnan, Andrés Márquez 0001, Shamir Merali, Shashank S. Nemawarkar, Prakash Panangaden, Xun Xue, Yingchun Zhu |
PACT | 4 |
| 1994 | Granularity analysis for exploiting adaptive parallelism of declarative programs on multiprocessors
Xinmin Tian, Dingxing Wang, Meiming Shen, Dongchan Wen |
J. Comput. Sci. Technol. | 1 |
| 1994 | Compiling CIL rewriting language for multiprocessors
Xinmin Tian, Dingxing Wang, Meiming Shen |
J. Comput. Sci. Technol. | 1 |
| 1993 | Optimized parallel execution of declarative programs on distributed memory multiprocessors
Meiming Shen, Xinmin Tian, Dingxing Wang, Dongchan Wen |
J. Comput. Sci. Technol. | 2 |