Jamaica Project - Related Work

The aim of this document is to encapsulate into one single page relavent work to the Jamaica project. Some attempts at organization have been made. The sections are:


All of the books below are available in IT 303, unless they have been borrowed.


Computer Architecture - A Quantitative Approach
by J. Hennessy and D. Patterson
Parallel Computer Architecture - A Hardware/Software Approach
by D. Culler, J. Singh, with A. Gupta


Advanced Compiler Design & Implementation
by Steven S. Muchnick
High Performance Compilers For Parallel Computing
by Michael Wolfe
Optimizing Compilers for Modern Architectures
by Randy Allen & Ken Kennedy

Operating System

Modern Operating Systems
by Andrew S. Tanenbaum



Sponsored by the ACM in cooperation with SIGPLAN, SIGARCH, SIGACT.
Paper submission by 30th January.
Conference 31st August to 3rd September
PREP 2004
EPSRC conference for research students
Paper submission by 23rd January
Conference April 5th-7th


IEEE and ACM SIGARCH sponsored conference.
Paper submission by February 5th, 2005.
Conference September 5th to 9th
Winter Simulation Conference
IEEE and ACM SIGSIM sponsored conference.
Paper submission by April 1, 2004.
Conference December 5th to 8th.
IEEE and ACM SIGARCH sponsored conference.
Paper submission by April 19th, 2004.
Conference November 6th to 12th
IEEE and ACM SIGARCH sponsored conference.
Paper submission by May 3rd, 2004.
Conference December 19th to 22nd
Workshop on Hardware Support for Objects and Microarchitectures for Java (1st, 2nd)


Java Grande
A fourm to explore the use of the Java programming language for scientific and engineering computing and high-performance network computing.
Interpreters Virtual Machines and Emulators
ACM conference, part of PLDI.
Paper submission by March 12th.
Conference June 7th.
Languages and Compilers for Parallel Computing.
ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications.
VM ('04 - previously JVM)
Usenix conference.
Work-in-progress paper submission by March 7th.
Conference May 6th-7th.
JVM '01, JVM '02
Working Conference on Reverse Engineering
IEEE Computer Society published conference. 2004 conference

Operating Systems

Nothing to list yet


ACM Journals

ACM Computing Surveys (lead time ~2years)
These comprehensive, readable tutorials and survey papers give guided tours through the literature and explain topics to those who seek to learn the basics of areas outside their specialties. The carefully planned and presented introductions in Computing Surveys (CSUR) are also an excellent way for professionals to develop perspectives on, and identify trends in complex technologies. Recent issues have covered image understanding, software reusability, and object and relational database topics.
ACM Transactions on Computer Systems (lead time ~2years)
ACM Transactions on Computer Systems (TOCS) publishes the newest findings of the computing research field. Papers published in TOCS are theoretical and conceptual explorations of operating systems, distributed systems and networks. Readers will find design principles, case studies and experimental results in specification, processor management, memory and communication management, implementation techniques and protocols. TOCS also discusses security and reliability, and offers experience-based papers on all these topics.
ACM Transactions on Design Automation of Electronic Systems (lead time ~2years)
ACM Transactions on Design Automation of Electronic Systems (TODAES) is a new CAD publication emphasizing a computer science/engineering orientation. TODAES contains a varied array of article formats, including research papers, tutorial and survey papers, as well as short technical notes. Let this new reference tool be your pulse to the rapidly changing field of design technology of electronic systems.
ACM Transactions on Mathematical Software (lead time ~2years)
As a scientific journal, ACM Transactions on Mathematical Software (TOMS) documents the theoretical underpinnings of numeric, symbolic, algebraic, and geometric computing applications. It focuses on analysis and construction of algorithms and programs, and the interaction of programs and architecture. Algorithms documented in TOMS are available as the Collected Algorithms of the ACM in print, on microfiche, on disk, and online.
ACM Transactions on Modeling and Computer Simulation (lead time ~2years)
Systems modeling and computer simulation are powerful tools for understanding, and ACM Transactions on Modeling and Computer Simulation (TOMACS) is a primary source for research on all aspects of these two areas. Emphasizing discrete event simulation, this journal publishes applications, reviews, and tutorials on such topics as combined, distributed, and hybrid simulation, simulation and computer graphics, process generators, and random number generation.
ACM Transactions on Programming Languages and Systems (lead time ~2years)
The purpose of ACM Transactions on Programming Languages and Systems (TOPLAS) is to present research results on all aspects of the design, definition, implementation, and use of programming languages and programming systems.
The scope of TOPLAS includes: programming languages and their semantics; programming systems (systems to assist the programming task, such as compilers, runtime systems, and language environments); storage allocation and garbage collection; languages and methods for writing specifications; testing and verification methods; and algorithms specifically related to the implementation of language processors.


The Computer Bulletin
The Computer Bulletin is 'the voice of the BCS' and publishes articles on all aspects of computing and IT.

Elsevier Computer Science

Information Sciences
Information Sciences will publish original, innovative and creative research results. A smaller number of timely tutorial and surveying contributions will be published from time to time.
The journal is designed to serve researchers, developers, managers, strategic planners, graduate students and others interested in state-of-the art research activities in information, knowledge engineering and intelligent systems. Readers are assumed to have a common interest in information science, but with diverse backgrounds in fields such as engineering, mathematics, statistics, physics, computer science, cell biology, molecular biology, management science, cognitive science, neurobiology, behavioural sciences and biochemistry.
The journal publishes high-quality, refereed articles. It emphasizes a balanced coverage of both theory and practice. It fully acknowledges and vividly promotes a breadth of the discipline of Informations Sciences.
Journal of Systems and Software (lead time ~6months)
The Journal of Systems and Software publishes papers covering all aspects of programming methodology, software engineering and related hardware/software systems issues. Topics of interest include, but are not limited to, software systems, prototyping issues, high-level specification techniques, procedural and functional programming techniques, data-flow concepts, multiprocessing, real-time, distributed, concurrent, and telecommunications systems, software metrics, reliability models for software, performance issues, and management concerns. The journal publishes research papers, state-of-the-art surveys, and reports of practical experience. All articles should consider the practical application of the ideas advanced through case studies, experiments, or systematic comparisons with other approaches already in practice. Occasionally, special issues are devoted to topics of particular interest; proposals for such issues are invited.
Parallel Computing
Parallel Computing is an international journal presenting the theory and use of parallel computer systems, including vector, pipeline, array and fifth and future generation computers and neural computers. Within this context the journal covers all aspects of high-speed computing.
Parallel Computing features original research work, tutorial and review articles as well as accounts of practical experience with (and techniques for) the use of parallel computers. Contributions can cover: Parallel Computing includes special issues on Applications.


Journal of Systems Architecture (lead time ~2years)
The Journal of Systems Architecture is a journal covering all aspects of system architecture design and implementation. It ranges from the microarchitecture level via the system software level up to the application-specific architecture level. Aspects such as dedicated systems, high-performance systems, parallel and distributed architectures as well as additional subjects in the computer and system architecture area will fall within the scope of this journal.
Hardware as well as software design techniques, tools and performance evaluation techniques will be discussed insofar as they are central to the digital architecture design process. Technology will not be a main focus, but its use and relevance to particular designs will be.


Computer magazine
Computers and Digital Techniques (lead time ~6months to 1year)
Computer architecture journal focussing on digital design.
IEEE Design and Test of Computers
Computer architecture journal focussing on digital design.
Micro (lead time ~6months)
Computer architecture journal.
Software (lead time ~3months)
Journal covering aspects of computer software.
IEEE Transactions on Computers
Computer architecture journal
IEEE Transactions on Parallel and Distributed Systems
IEEE Transactions on Software Engineering


Journal of Supercomputing (lead time ~2years)
An International Journal of High-Performance Computer Design, Analysis, and Use

Springer-Verlag Heidelberg

Lecture Notes in Computer Science
The series Lecture Notes in Computer Science (LNCS), including its subseries Lecture Notes in Artificial Intelligence (LNAI) and Lecture Notes in Bioinformatics (LNBI), has established itself as a medium for the publication of new developments in computer science and information technology research and teaching - quickly, informally, and at a high level.


Java Developer's Journal
Java Developer's Journal is the world's premier independent, vendor-neutral print resource for the ever-expanding international community of Internet technology professionals using the Java programming language and the Java development platform.

West World Publications

Computer Technology Review
Computer Technology Review serves the technology information needs of Systems Integrators, VARs and OEMs, covering new and emerging technologies across the entire spectrum of computer systems technology, both hardware and software.


Concurrency: Practice and Experience, Concurrency and Computation: Practice and Experience
Concurrency is seen in an increasing number of computing and communication systems. We have tens of millions of clients on the World Wide Web and many thousands of powerful nodes in high-end massively parallel machines (MPP). One can project continued rapid progress within ten years, Exaop performance from the Web and Petaflop capabilities in closely coupled parallel machines. This leads to a confusing rich choice of architectures with distributed memory PC clusters or Web-based computers and shared memory MPPs. These are enabled and coupled with corresponding boosts in wide-area network performance and deployment with a blurring and convergence of computing and communication. This hardware juggernaut is coupled to new languages and programming paradigms, such as Java and VRML for the Web and multithreading HPF and MPI for parallel systems. The combination of concurrent digital and optical technology is expected to create a Global Information Infrastructure (GII) that will enable new applications, and open up a new set of communication and computer software and architecture challenges. We need portable and scalable (portable to the future and to hybrid heterogeneous world-wide systems) solutions. This technology is being driven by and used in a wide range of academic, research, and commercial application areas. This use is producing a substantial amount of practical experience in those problems that are enabled or enhanced by this amazing infrastructure. There are also new computational methods, such as mobile agents, cellular automata and massively parallel neural networks, which are particularly suited to concurrent execution. There is a rapid growth in both scientific (grand challenges) and information (national challenge) applications that drive both the functionality and high performance of the base technologies. These will impact academia, business, the homes and education. New applications are also being opened up by advances in human-computer interfaces with full immersive environments becoming available, and tools to support those with disabilities broadening the reach of the computer and communication revolution. This journal will, therefore, focus on practical experience with the application of these converging trends to solve real problems. In particular, themes of our papers include:
Software: Practice and Experience
Software - Practice and Experience is an internationally respected and rigorously refereed vehicle for the dissemination and discussion of practical experience with new and established software for both systems and applications.

World Scientific

Parallel Processing Letters (PPL)
Parallel Processing Letters (PPL) aims to rapidly disseminate results on a worldwide basis in the field of parallel processing in the form of short papers. It fills the need for an information vehicle which can convey recent achievements and further the exchange of scientific information in the field.


Todd C. Mowry
Associate Professor at Carnegie Mellon University.
Ken Kennedy
Professor in Computational Engineering at Rice University's Computer Science Department
Lawrence Rauchwerger
Associate Professor at Texas A&M University.



The Agassiz project includes several subprojects on superthreaded architectures and parallelizing compilers.
Cilk is a language for multithreaded parallel programming based on ANSI C. Cilk is designed for general-purpose parallel programming, but it is especially effective for exploiting dynamic, highly asynchronous parallelism, which can be difficult to write in data-parallel or message-passing style.
ClearSpeed / Advance
A New, High-Performance, Low-Power, Floating-Point Embedded Processor for Scientific Computing and DSP Applications. Made up of a large number of Processing Elements (PEs) comprising ALU,MAC,FPU, Register file, I/O and SRAM.
The Stanford Hydra Single-Chip Multiprocessor project (publications).
The Multiplex Project proposes a novel architecture for future billion-transistor chips.
Understanding program behavior, observing phenomenon, and developing novel architectural and microarchitectural techniques to exploit it.
The M-Machine project explores new computer architectures that match semiconductor technology trends by more efficiently exploiting increased circuit density through multi-ALU processing nodes and by minimizing and carefully managing required global communications to reduce the performance impact resulting from increasing wire delays.
The Niagara product, what Sun calls a "radical" design, will have 8 processor cores per chip and each core will support 4 software threads. Niagara will truly be a milticore chip on Viagra. The sun link contains information on their 'throughput' computing stratedgy, their 2-core chip, as well as there rational for the SMT approach. (http://www.theregister.com/content/3/32390.html)
There PC102 chip recently launced contains some 400+ 16 bit processors, connected by a patented interconnect network on chip. Used in processing 3G base station tasks.
The Raw Architecture Workstation (Raw) is a simple, wire-efficient architecture that scales with increasing VLSI gate densities.
Speculative Processors
The interest of this project is to research on novel micro-architectural paradigms that can boost the performance limits of current dynamically-secheduled processors.
The STAMPede project is investigating the architectural, compiler, and OS support necessary to effectively exploit single-chip multiprocessors.
Thread-Level Speculation Systems for Multiprocessors
The project's goal is to take a software-centric view on the speculative execution model on shared-memory multiprocessors problem, using as little hardware support as possible to implement this speculation system.
Top 500 Supercomputers
The TOP500 project was started in 1993 to provide a reliable basis for tracking and detecting trends in high-performance computing (Ad's corner).


The Agassiz project includes several subprojects on superthreaded architectures and parallelizing compilers.
GNU Classpath is a set of essential libraries for supporting the Java language.
High ARithmetic Performance Object-Oriented Numerics.
High Performance Java
Research at Indiana University
Jikes RVM
The Jikes Research Virtual Machine (publications, presentations, user's guide, API)

Operating System

A desktop in pure Java
A new Java Operating System
JX is a Java operating system that focuses on a flexible and robust operating system architecture. The JX system is developed as an open source system by the University of Erlangen and Siemens Corporate Technology.
The Janos project's objective is to develop a principled local operating system for active network nodes, oriented to executing untrusted Java bytecode. The primary focus is resource management and control, with secondary objectives of information security, performance, and technology transfer of broadly and separately useful software components.
The Janos Project is primarily sponsored by DARPA as part of the Active Networks program, with additional support from Novell, Compaq, and the University of Utah.

Research groups


HPCAG Chalmers
Hardware and software design methods for mainstream high-performance computer systems to meet the performance and real-time demands of emerging applications in e.g. telecommunications, information processing, multimedia, and process control in a cost-effective way.
A group focused on new processor, memory, and system technologies and organizations to build novel computer architectures.
Waikato Warp Group
A group focussed on overcoming the cost and complexity of parallel software.


At CRPC sites across the nation, computer scientists, mathematicians, and engineers are working to make parallel computation accessible to industry, government, and academia and to educate a new generation of technical professionals.

Operating Systems

The Flux Research Group
The Flux Research Group works in software systems. Our interests and work cover many areas, including both local and distributed operating systems, networking, component-based systems, programming and non-traditional languages, compilers, information and resource security, and even a pinch of software engineering and formal methods.