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. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

David M. Gallagher

dblp:92/4215 · DBLP profile ↗
← Back
5ranked-venue papers
1as first author
1since 2021 · last 2024
—ORCID · none

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

Systems, architecture and hardware · 3 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 2 · 1 since 2021Software engineering, systems software and programming languages · 1 · 1 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
4 papers
Processor architecture and microarchitecture · 59% Memory systems · 20% Electronic design automation · 14%
Software engineering, system software, and programming languages
2 papers
Compilers and program optimization · 100%

Topics — the 10 heaviest of 12, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Processor architecture and microarchitecture
instruction-level parallelism
0.031995
Characterizing the impact of predicated execution on branch prediction · MICRO 1994
Dynamic Memory Disambiguation Using the Memory Conflict Buffer · ASPLOS 1994
Compiler technology for future microprocessors · Proc. IEEE 1995
Compilers and program optimization
dependence analysis
0.011995
Compiler technology for future microprocessors · Proc. IEEE 1995
Compilers and program optimization › instruction scheduling
instruction-level parallelism
0.011995
Compiler technology for future microprocessors · Proc. IEEE 1995
Compilers and program optimization
predicated compilation
0.011995
Compiler technology for future microprocessors · Proc. IEEE 1995
Processor architecture and microarchitecture
branch prediction
0.011994
Characterizing the impact of predicated execution on branch prediction · MICRO 1994
Processor architecture and microarchitecture › instruction-level parallelism
predicated execution
0.011994
Characterizing the impact of predicated execution on branch prediction · MICRO 1994
Electronic design automation
logic synthesis
0.011989
Design and application of an optimizing XROM silicon compiler · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1989
Integrated circuit design
memory circuit design
0.011989
Design and application of an optimizing XROM silicon compiler · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1989
Memory systems › non-volatile memory
read-only memory
0.011989
Design and application of an optimizing XROM silicon compiler · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1989
Electronic design automation › system-level design › system synthesis
silicon compiler
0.011989
Design and application of an optimizing XROM silicon compiler · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1989

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

hardware memory conflict buffer · 0.0compiler repair code · 0.0simulation · 0.0traveling salesman problem · 0.0graph partitioning heuristic · 0.0
YearPublicationVenuePosition
2024 Translating ethical and quality principles for the effective, safe and fair development, deployment and use of artificial intelligence technologies in healthcare
abstract
OBJECTIVE: The complexity and rapid pace of development of algorithmic technologies pose challenges for their regulation and oversight in healthcare settings. We sought to improve our institution's approach to evaluation and governance of algorithmic technologies used in clinical care and operations by creating an Implementation Guide that standardizes evaluation criteria so that local oversight is performed in an objective fashion. MATERIALS AND METHODS: Building on a framework that applies key ethical and quality principles (clinical value and safety, fairness and equity, usability and adoption, transparency and accountability, and regulatory compliance), we created concrete guidelines for evaluating algorithmic technologies at our institution. RESULTS: An Implementation Guide articulates evaluation criteria used during review of algorithmic technologies and details what evidence supports the implementation of ethical and quality principles for trustworthy health AI. Application of the processes described in the Implementation Guide can lead to algorithms that are safer as well as more effective, fair, and equitable upon implementation, as illustrated through 4 examples of technologies at different phases of the algorithmic lifecycle that underwent evaluation at our academic medical center. DISCUSSION: By providing clear descriptions/definitions of evaluation criteria and embedding them within standardized processes, we streamlined oversight processes and educated communities using and developing algorithmic technologies within our institution. CONCLUSIONS: We developed a scalable, adaptable framework for translating principles into evaluation criteria and specific requirements that support trustworthy implementation of algorithmic technologies in patient care and healthcare operations.
Nicoleta J. Economou-Zavlanos, Sophia Bessias, Michael P. Cary, Armando Bedoya, Benjamin Goldstein 0001, John Eric Jelovsek, Cara O'Brien, Nancy Walden, Matthew Elmore, Amanda B. Parrish, Scott Elengold, Kay Lytle, Suresh Balu, Michael E. Lipkin, Afreen Idris Shariff, Michael Gao, David Leverenz, Ricardo Henao, David Y. Ming, David M. Gallagher, Michael J. Pencina, Eric G. Poon
J. Am. Medical Informatics Assoc.20
1995 Compiler technology for future microprocessors
abstract
Advances in hardware technology have made it possible for microprocessors to execute a large number of instructions concurrently (i.e., in parallel). These microprocessors take advantage of the opportunity to execute instructions in parallel to increase the execution speed of a program. As in other forms of parallel processing, the performance of these microprocessors can vary greatly depending on the qualify of the software. In particular the quality of compilers can make an order of magnitude difference in performance. This paper presents a new generation of compiler technology that has emerged to deliver the large amount of instruction-level-parallelism that is already required by some current state-of-the-art microprocessors and will be required by more future microprocessors. We introduce critical components of the technology which deal with difficult problems that are encountered when compiling programs for a high degree of instruction-level-parallelism. We present examples to illustrate the functional requirements of these components. To provide more insight into the challenges involved, we present in-depth case studies on predicated compilation and maintenance of dependence information, two of the components that are largely missing from most current commercial compilers.
Wen-Mei W. Hwu, Richard E. Hank, David M. Gallagher, Scott A. Mahlke, Daniel M. Lavery, Grant E. Haab, John C. Gyllenhaal, David I. August
Proc. IEEE3
1994 Dynamic Memory Disambiguation Using the Memory Conflict Buffer
abstract
To exploit instruction level parallelism, compilers for VLIW and superscalar processors often employ static code scheduling. However, the available code reordering may be severely restricted due to ambiguous dependences between memory instructions. This paper introduces a simple hardware mechanism, referred to as the memory conflict buffer, which facilitates static code scheduling in the presence of memory store/load dependences. Correct program execution is ensured by the memory conflict buffer and repair code provided by the compiler. With this addition, significant speedup over an aggressive code scheduling model can be achieved for both non-numerical and numerical programs.
David M. Gallagher, William Y. Chen, Scott A. Mahlke, John C. Gyllenhaal, Wen-Mei W. Hwu
ASPLOS1
1994 Characterizing the impact of predicated execution on branch prediction
abstract
Branch instructions are recognized as a major impediment to exploiting instruction level parallelism. Even with sophisticated branch prediction techniques, many frequently executed branches remain difficult to predict. An architecture supporting predicated execution may allow the compiler to remove many of these hard-to-predict branches, reducing the number of branch mispredictions and thereby improving performance. We present an in-depth analysis of the characteristics of those branches which are frequently mispredicted and examine the effectiveness of an advanced compiler to eliminate these branches. Over the benchmarks studied, an average of 27% of the dynamic branches and 56% of the dynamic branch mispredictions are eliminated with predicated execution support.
Scott A. Mahlke, Richard E. Hank, Roger A. Bringmann, John C. Gyllenhaal, David M. Gallagher, Wen-Mei W. Hwu
MICRO5
1989 Design and application of an optimizing XROM silicon compiler
abstract
It is demonstrated that optimization techniques incorporated within a silicon compiler for read-only memories (ROMs) can achieve significant yield, power, and speed improvements by minimizing the number of transistors, drains, and metal interconnections in the ROM. Transistor minimization adopts a heuristic solution to the NP-complete graph partitioning problem with a powerful technique applicable to various ROM design styles and technologies. If diffusion mask personalization is permitted, the design can be further improved by solving the traveling salesman problem to minimize transistor source/drain regions. In table look-up ROMs compiled for 3- and 1.2- mu m CMOS with diffusion mask programming, the compiler eliminated over 45% of the transistors and drains. Test results show that 3- mu m CMOS ROMs have access times between 50 and 70 ns. ROMs with 1.2- mu m features achieve simulated access times below 20 ns. A simple interface allows the optimizing compiler to work easily with other CAD tools such as microcode assemblers.>
Richard W. Linderman, Paul C. Rossbach, David M. Gallagher
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.3