Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data.

Jack B. Dennis

dblp:58/1580 · DBLP profile ↗
← Back
14ranked-venue papers
11as first author
0since 2021 · last 2017
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 9 · 7 first-authorSoftware engineering, systems software and programming languages · 5 · 3 first-authorApplied, interdisciplinary, general and emerging computing · 3 · 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.

Computer architecture, parallel and distributed computing, and storage systems
7 papers
Processor architecture and microarchitecture · 52% Parallel and multicore computing · 45% High-performance computing · 1%
Software engineering, system software, and programming languages
3 papers
Operating systems · 87% Programming languages and type systems · 13%

Topics — the 24 heaviest of 28, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Processor architecture and microarchitecture
multicore design
0.112009
How to build programmable multi-core chips · PPoPP 2009
Parallel and multicore computing
parallel programming models
0.112009
How to build programmable multi-core chips · PPoPP 2009
Processor architecture and microarchitecture › dataflow architecture
dataflow machine
0.021988
An efficient pipelined dataflow processor architecture · SC 1988
A Preliminary Architecture for a Basic Data Flow Processor · ISCA 1974
Processor architecture and microarchitecture › pipelining
pipelined processor
0.011988
An efficient pipelined dataflow processor architecture · SC 1988
Processor architecture and microarchitecture
dataflow architecture
0.031980
Building Blocks for Data Flow Prototypes · ISCA 1980
A Preliminary Architecture for a Basic Data Flow Processor · ISCA 1974
A Computer Simulation Facility for Packet Communication Architecture · ISCA 1976
Interconnection networks and networks-on-chip
router
0.011980
Building Blocks for Data Flow Prototypes · ISCA 1980
Processor architecture and microarchitecture
instruction scheduling
0.011988
An efficient pipelined dataflow processor architecture · SC 1988
Performance modeling and evaluation › simulation › simulation software
simulation infrastructure
0.011976
A Computer Simulation Facility for Packet Communication Architecture · ISCA 1976
Parallel and multicore computing › parallel computing › parallel programming languages
parallel functional programming
0.011984
Modeling the Weather with a Data Flow Supercomputer · IEEE Trans. Computers 1984
Memory systems › memory hierarchy
two-level memory system
0.011974
A Preliminary Architecture for a Basic Data Flow Processor · ISCA 1974
Operating systems › resource management › memory management
virtual memory
0.021967
Virtual memory, processes, and sharing in Multics · SOSP 1967
Segmentation and the Design of Multiprogrammed Computer Systems · J. ACM 1965
Operating systems
dynamic linking
0.011967
Virtual memory, processes, and sharing in Multics · SOSP 1967
Interconnection networks and networks-on-chip
packet communication
0.011976
A Computer Simulation Facility for Packet Communication Architecture · ISCA 1976
Operating systems › resource management › memory management › virtual memory
address translation
0.011965
Segmentation and the Design of Multiprogrammed Computer Systems · J. ACM 1965
Programming languages and type systems › programming paradigms
dataflow language
0.011974
A Preliminary Architecture for a Basic Data Flow Processor · ISCA 1974
Operating systems › resource management
memory management
0.011965
Segmentation and the Design of Multiprogrammed Computer Systems · J. ACM 1965
Operating systems › resource management › process management
multiprogramming
0.011965
Segmentation and the Design of Multiprogrammed Computer Systems · J. ACM 1965
Memory systems
memory hierarchy
0.011965
Segmentation and the Design of Multiprogrammed Computer Systems · J. ACM 1965
Physical-layer communications › multiple access
multiaccess systems
0.011967
A position paper on computing and communications · SOSP 1967
Operating systems › resource management
process management
0.011967
Virtual memory, processes, and sharing in Multics · SOSP 1967
Mathematical optimization
combinatorial optimization
0.011958
A High-Speed Computer Technique for the Transportation Problem · J. ACM 1958
Mathematical optimization
linear programming
0.011958
A High-Speed Computer Technique for the Transportation Problem · J. ACM 1958
Graph algorithms and graph theory › graph algorithms
network flow
0.011958
A High-Speed Computer Technique for the Transportation Problem · J. ACM 1958
Mathematical optimization › combinatorial optimization › network optimization
transportation problem
0.011958
A High-Speed Computer Technique for the Transportation Problem · J. ACM 1958

Methods — techniques the papers use, named apart from their topics

pipelined instruction execution · 0.0argument-fetch dataflow · 0.0performance projection · 0.0dataflow analysis · 0.0simulation · 0.0microprocessor emulation · 0.0architecture description language · 0.0virtual memory · 0.0simplex method · 0.0name space vs memory space · 0.0high-speed computer implementation · 0.0dynamic linking · 0.0address mapping · 0.0
YearPublicationVenuePosition
2017 Principles to Support Modular Software Construction
Jack B. Dennis
J. Comput. Sci. Technol.1
2009 How to build programmable multi-core chips
abstract
The arrival of multi-core chips has heightened interest in the discipline of parallel programming, a topic that has received much attention for many years. Computer architects have much to learn from sound principles for structuring software and expressing parallel computation. This talk will cover principles for the design of computer systems to support composable parallel software - the idea that any parallel program is usable, without change, as a component of larger parallel programs. By following these principles, a revolution in the ease of building robust and high-performance parallel software can be achieved. The principles suggest interesting directions for computer architecture; the tools to experiment with new architecture concepts are ready and waiting for the savvy and ambitious researcher
Jack B. Dennis
PPoPP1
2008 The fresh breeze project: A multi-core chip supporting composable parallel programming
abstract
The Fresh Breeze Project concerns the architecture and design of a multicore chip that can achieve superior performance while supporting composability of parallel programs. The requirements of composability imply that the management of processor allocation and memory management must be sufficiently flexible to permit reassignment of resources according to the current needs of computations. The Fresh Breeze Programming model combines the spawn/join threading model of Cilk[4] with a write-once memory model based on fixed-size chunks that are allocated and freed by efficient hardware mechanisms. This model supports computing jobs by many users, each consisting of a hierarchy of function activations. The model satisfies all six principles for supporting modular program construction[3]. Within this programming model, it is possible for any parallel program to be used, without change, as a component in building larger parallel programs.
Jack B. Dennis
IPDPS1
1992 Report of the Purdue Workshop on Grand Challenges in Computer Architecture for the Support of High Performance Computing
Howard Jay Siegel, Seth Abraham, William L. Bain, Kenneth E. Batcher, Thomas L. Casavant, Doug DeGroot, Jack B. Dennis, David C. Douglas, Tse-Yun Feng, James R. Goodman, Alan Huang, Harry F. Jordan, J. Robert Jamp, Yale N. Patt, Alan Jay Smith, James E. Smith 0001, Lawrence Snyder 0001, Harold S. Stone, Russ Tuck, Benjamin W. Wah
J. Parallel Distributed Comput.7
1988 An efficient pipelined dataflow processor architecture
abstract
It is demonstrated that the principles of pipelined instruction execution can be effectively applied in data-flow computers, yielding an architecture that avoids the main sources of pipeline gaps during program execution in many conventional designs. The processing element uses an architecture called argument-fetch data-flow architecture. It has two parts: a data-flow instruction scheduling unit (DISU) and a pipelined instruction processing unit (PIPU). The PIPU is an instruction processor that uses many conventional techniques to achieve fast pipelined operation. The DISU holds the data-flow signal graph of the collection of data-flow instructions allocated to the processing element and maintains a large pool of enabled instructions available for execution by the PIPU. The architecture provides a basis for achieving high performance for many scientific applications. The trial design and fabrication of an enable memory, a key component of the DISU, are reported.>
Jack B. Dennis, Guang R. Gao
SC1
1984 Modeling the Weather with a Data Flow Supercomputer
abstract
Data flow computers promise efficient parallel computation limited in speed only by data dependencies in the calculation being performed. At the Massachusetts Institute of Technology Laboratory for Computer Science, the Computation Structures Group is working to design practical data flow computers that can outperform conventional supercomputers. Since data flow computers differ radically in structure from conventional (sequential) computers, the projection of their performance must be done through analysis of specific computations. The performance improvement that data flow computers offer is shown for a NASA benchmark program that implements a global weather model. We present the structure of the weather code as expressed in VAL, a functional programming language designed by the Computation Structures Group, and develop the corresponding machine-level program structures for efficient execution on a data flow supercomputer. On the basis of this analysis, we specify the capacities of hardware units and the number of each type of unit required to achieve a twenty-fold improvement in performance for the weather simulation application.
Jack B. Dennis, Guang R. Gao, Kenneth W. Todd
IEEE Trans. Computers1
1983 Maximum Pipelining of Array Operations on Static Data Flow Machine
Jack B. Dennis, Guang R. Gao
ICPP1
1980 Building Blocks for Data Flow Prototypes
abstract
A variety of proposed architectures for data flow computers have been advanced. Evaluation of the practical potential of these proposals is being studied through analysis and simulation, but these techniques cannot be used to study a machine design in sufficient detail to make accurate predictions of performance. As a basis for extrapolating cost/performance of these architectures, and for developing a methodology for data flow program preparation, the construction of prototype machines is needed. In this paper we present our plan for realizing experimental data flow machines as packet communication systems using two types of hardware elements: a microprogrammed processing element with provision for packet transmission and reception; and a router unit used to build networks to support packet communication among processing elements.
Jack B. Dennis, G. Andrew Boughton, Clement K. C. Leung
ISCA1
1976 A Computer Simulation Facility for Packet Communication Architecture
abstract
Several proposals for computer data processing and memory systems that exploit the inherent parallelism in programs expressed in data flow form have been advanced recently.These systems have packet communication architecture --each system consists of many units that interact only through the transmission of information packets through channels that link pairs of units.A simulation facility for evaluating the prograranability and potential performance of these proposed data processing and memory systems has been designed.The facility uses microprocessor modules to emulate the behavior of system units or groups of units.By conducting a simulation in accurate scale time a precise extrapolation of performance of a proposed system may be obtained.The user of the facility will specify the system to be simulated in an architecture description language.A host computer translates the system description modules into microprocessor programs and controls the loading and monitors the operation of the microprocessors.Application of the facility is illustrated by considerat:ion of a simple data flow processor.
C. Leung, David Misunas, A. Neczwid, Jack B. Dennis
ISCA4
1974 A Preliminary Architecture for a Basic Data Flow Processor
abstract
A processor is described which can achieve highly parallel execution of programs represented in data-flow form. The language implemented incorporates conditional and iteration mechanisms, and the processor is a step toward a practical data-flow processor for a Fortran-level data-flow language. The processor has a unique architecture which avoids the problems of processor switching and memory/processor interconnecion that usually limit the degree of realizable concurrent processing. The architecture offers an unusual solution to the problem of structuring and managing a two-level memory system.
Jack B. Dennis, David Misunas
ISCA1
1967 Virtual memory, processes, and sharing in Multics
abstract
The value of a computer system to its users is greatly enhanced if a user can, in a simple and general way, build his work upon procedures developed by others. The attainment of this essential generality requires that a computer system possess the features of equipment-independent addressing, an effectively infinite virtual memory, and provision for the dynamic linking of shared procedure and data objects. The paper explains how these features are realized in the Multics system.
Robert C. Daley, Jack B. Dennis
SOSP2
1967 A position paper on computing and communications
abstract
The effective operation of free enterprise in creating the envisioned information service industry is dependent on three accomplishments: 1. The restructuring of our information processing industry to provide a clear separation among costs for computing, communications, and the development of information services. 2. The wide use of multi-access system concepts so that information services may share in the use of computer installations, and so their cost of construction is reasonable. 3. The development of public, message-switched communications services with adaquate provisions for information security.
Jack B. Dennis
SOSP1
1965 Segmentation and the Design of Multiprogrammed Computer Systems
abstract
Problems that must be solved by any scheme for multiprogramming include: (1) dynamic allocation of information to a hierarchy of memory devices, (2) means for programs to reference procedures and data in a manner that is independent of their location in physical memory, (3) provision for the use of common procedure and data information by many programs, (4) protection of system resources from unauthorized access, and (5) rapid switching of computation resources from one program to another.The concept of name space, the set of addresses a process can generate, is contrasted with the memory space, the set of physical memory locations, and memory referencing schemes are described by address mappings from name space into memory space.In this context, the inadequacies of several approaches for solving the problems of multiprogranuning become evident.The segmentation of procedures and data forms a model of program structure that is the basis of an address mapping function which will be a valuable feature of future computer systems.
Jack B. Dennis
J. ACM1
1958 A High-Speed Computer Technique for the Transportation Problem
abstract
article Free Access Share on A High-Speed Computer Technique for the Transportation Problem Author: Jack B. Dennis Massachusetts Institute of Technology, Cambridge, Mass. Massachusetts Institute of Technology, Cambridge, Mass.View Profile Authors Info & Claims Journal of the ACMVolume 5Issue 2pp 132–153https://doi.org/10.1145/320924.320927Published:01 April 1958Publication History 36citation627DownloadsMetricsTotal Citations36Total Downloads627Last 12 Months40Last 6 weeks8 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
Jack B. Dennis
J. ACM1