Global Software Pipelining with Iteration Preselection. - David Gregg (CC, 2000)

Comparing Tail Duplication with Compensation Code in Single Path Global Instruction Scheduling. - David Gregg (CC, 2001)

The Behavior of Efficient Virtual Machine Interpreters on Modern Architectures. - M. Anton Ertl; David Gregg (Euro-Par, 2001)

Implementing an Efficient Java Interpreter. - David Gregg; M. Anton Ertl; Andreas Krall (HPCN Europe, 2001)

Identification and Quantification of Hotspots in Java Grande Programs. - John Waldron; David Gregg (HPCN Europe, 2001)

Building an Interpreter with Vmgen. - M. Anton Ertl; David Gregg (CC, 2002)

Measuring the impact of object-oriented techniques in grande applications: a method-level analysis. - David Gregg; James F. Power; John Waldron (Java Grande, 2002)

Vmgen - a generator of efficient virtual machine interpreters. - M. Anton Ertl; David Gregg; Andreas Krall; Bernd Paysan (Softw. Pract. Exp., 2002)

A Language and Tool for Generating Efficient Virtual Machine Interpreters. - David Gregg; M. Anton Ertl (Domain-Specific Program Generation, 2003)

The case for virtual register machines. - Brian Davis; Andrew Beatty; Kevin Casey; David Gregg; John Waldron (IVME, 2003)

Optimizing indirect branch prediction accuracy in virtual machine interpreters. - M. Anton Ertl; David Gregg (PLDI, 2003)

An Optimized Java Interpreter for Connected Devices and Embedded Systems. - Andrew Beatty; Kevin Casey; David Gregg; Andrew Nisbet (SAC, 2003)

Towards Superinstructions for Java Interpreters. - Kevin Casey; David Gregg; M. Anton Ertl; Andrew Nisbet (SCOPES, 2003)

Platform independent dynamic Java virtual machine analysis: the Java Grande Forum benchmark suite. - David Gregg; James F. Power; John Waldron (Concurr. Comput. Pract. Exp., 2003)

The Structure and Performance of Efficient Interpreters. - M. Anton Ertl; David Gregg (J. Instr. Level Parallelism, 2003)

Retargeting JIT Compilers by using C-Compiler Generated Executable Code. - M. Anton Ertl; David Gregg (IEEE PACT, 2004)

Stochastic Bit-Width Approximation Using Extreme Value Theory for Customizable Processors. - Emre Özer 001; Andy Nisbet; David Gregg (CC, 2004)

Automatic Customization of Embedded Applications for Enhanced Performance and Reduced Power Using Optimizing Compiler Techniques. - Emre Özer 001; Andy Nisbet; David Gregg (Euro-Par, 2004)

Fine-Tuning Loop-Level Parallelism for Increasing Performance of DSP Applications on FPGAs. - Emre Özer 001; Andy Nisbet; David Gregg (FCCM, 2004)

Combining stack caching with dynamic superinstructions. - M. Anton Ertl; David Gregg (IVME, 2004)

Tiger - An Interpreter Generation Tool. - Kevin Casey; David Gregg; M. Anton Ertl (CC, 2005)

B.Sc. Computer Game Development ... Why not? - Libero Ficocelli; David Gregg (DiGRA Conference, 2005)

FPGA Implementation of a Lattice Quantum Chromodynamics Algorithm Using Logarithmic Arithmetic. - Owen Callanan; Andy Nisbet; Emre Özer 001; James Sexton; David Gregg (IPDPS, 2005)

Multiple-Valued Caches for Power-Efficient Embedded Systems. - Emre Özer 001; Resit Sendag; David Gregg (ISMVL, 2005)

Virtual machine showdown: stack versus registers. - Yunhe Shi; David Gregg; Andrew Beatty; M. Anton Ertl (VEE, 2005)

A method-level comparison of the Java Grande and SPEC JVM98 benchmark suites. - David Gregg; James F. Power; John Waldron (Concurr. Pract. Exp., 2005)

Estimating data bus size for custom processors in embedded systems. - Emre Özer 001; Andy Nisbet; David Gregg; Owen Callanan (Des. Autom. Embed. Syst., 2005)

The case for virtual register machines. - David Gregg; Andrew Beatty; Kevin Casey; Brian Davis; Andy Nisbet (Sci. Comput. Program., 2005)

Efficient Floating-Point Implementation of High-Order (N)LMS Adaptive Filters in FPGA. - Milan Tichý; Jan Schier; David Gregg (ARC, 2006)

GSFAP adaptive filtering using log arithmetic for resource-constrained embedded systems. - Milan Tichý; Andy Nisbet; David Gregg (FPGA, 2006)

High Performance Scientific Computing Using FPGAs with IEEE Floating Point and Logarithmic Arithmetic for Lattice QCD. - Owen Callanan; David Gregg; Andy Nisbet; Mike Peardon (FPL, 2006)

Low-Cost Microarchitectural Techniques for Enhancing the Prediction of Return Addresses on High-Performance Trace Cache Processors. - Yunhe Shi; Emre Özer 001; David Gregg (ISCIS, 2006)

Fast and flexible instruction selection with on-demand tree-parsing automata. - M. Anton Ertl; Kevin Casey; David Gregg (PLDI, 2006)

FPGA Implementation of Adaptive Filters based on GSFAP using Log Arithmetic. - Milan Tichý; Jan Schier; David Gregg (SiPS, 2006)

Optimizing code-copying JIT compilers for virtual stack machines. - David Gregg; M. Anton Ertl (Concurr. Comput. Pract. Exp., 2006)

Analyzing Effects of Trace Cache Configurations on the Prediction of Indirect Branches. - Yunhe Shi; Emre Özer 001; David Gregg (J. Instr. Level Parallelism, 2006)

FPGA based Sparse Matrix Vector Multiplication using Commodity DRAM Memory. - David Gregg; Colm McSweeney; Ciarán McElroy; Fergal Connor; Séamas McGettrick; David Moloney; Dermot Geraghty (FPL, 2007)

Optimizing indirect branch prediction accuracy in virtual machine interpreters. - Kevin Casey; M. Anton Ertl; David Gregg (ACM Trans. Program. Lang. Syst., 2007)

Optimization strategies for a java virtual machine interpreter on the cell broadband engine. - Kevin Williams 001; Albert Noll; Andreas Gal; David Gregg (Conf. Computing Frontiers, 2008)

An experimental study of sorting and branch prediction. - Paul Biggar; Nicholas Nash; Kevin Williams 001; David Gregg (ACM J. Exp. Algorithmics, 2008)

Efficiently implementing maximum independent set algorithms on circle graphs. - Nicholas Nash; Sylvain Lelait; David Gregg (ACM J. Exp. Algorithmics, 2008)

Virtual machine showdown: Stack versus registers. - Yunhe Shi; Kevin Casey; M. Anton Ertl; David Gregg (ACM Trans. Archit. Code Optim., 2008)

A stochastic bitwidth estimation technique for compact and low-power custom processors. - Emre Özer 001; Andy Nisbet; David Gregg (ACM Trans. Embed. Comput. Syst., 2008)

Streamlining Offload Computing to High Performance Architectures. - Mark Purcell; Owen Callanan; David Gregg (ICCS (1), 2009)

Using the Meeting Graph Framework to Minimise Kernel Loop Unrolling for Scheduled Loops. - Mounira Bachir; David Gregg; Sid Ahmed Ali Touati (LCPC, 2009)

Mapping Streaming Languages to General Purpose Processors through Vectorization. - Raymond Manley; David Gregg (LCPC, 2009)

Portable Just-in-Time Specialization of Dynamically Typed Scripting Languages. - Kevin Williams 001; Jason McCandless; David Gregg (LCPC, 2009)

A practical solution for scripting language compilers. - Paul Biggar; Edsko de Vries; David Gregg (SAC, 2009)

Code generation for hardware accelerated AES. - Raymond Manley; Paul Magrath; David Gregg (ASAP, 2010)

Dynamic interpretation for dynamic scripting languages. - Kevin Williams 001; Jason McCandless; David Gregg (CGO, 2010)

A Program Generator for Intel AES-NI Instructions. - Raymond Manley; David Gregg (INDOCRYPT, 2010)

An output sensitive algorithm for computing a maximum independent set of a circle graph. - Nicholas Nash; David Gregg (Inf. Process. Lett., 2010)

Comparing integer data structures for 32- and 64-bit keys. - Nicholas Nash; David Gregg (ACM J. Exp. Algorithmics, 2010)

GSFAP adaptive filtering using log arithmetic for resource-constrained embedded systems. - Milan Tichý; Jan Schier; David Gregg (ACM Trans. Embed. Comput. Syst., 2010)

Optimizing interpreters by tuning opcode orderings on virtual machines for modern architectures: or: how I learned to stop worrying and love hill climbing. - Jason McCandless; David Gregg (PPPJ, 2011)

Real-Time Sensor Signal Capture from a Harsh Environment. - Mark Purcell; Aravind Vasudevan; David Gregg (DS-RT, 2012)

A practical solution for achieving language compatibility in scripting language compilers. - Paul Biggar; Edsko de Vries; David Gregg (Sci. Comput. Program., 2012)

Compiler techniques to improve dynamic branch prediction for indirect jump and call instructions. - Jason McCandless; David Gregg (ACM Trans. Archit. Code Optim., 2012)

A Parallel Runtime Framework for Communication Intensive Stream Applications. - Servesh Muralidharan; Kevin Casey; David Gregg (TrustCom/ISPA/IUCC, 2013)

Heterogeneous Multiconstraint Application Partitioner (HMAP). - Servesh Muralidharan; Aravind Vasudevan; Avinash Malik; David Gregg (TrustCom/ISPA/IUCC, 2013)

Minimal Unroll Factor for Code Generation of Software Pipelining. - Mounira Bachir; Sid Ahmed Ali Touati; Frederic Brault; David Gregg; Albert Cohen 001 (Int. J. Parallel Program., 2013)

Fast asymmetric thread synchronization. - Jimmy Cleary; Owen Callanan; Mark Purcell; David Gregg (ACM Trans. Archit. Code Optim., 2013)

Compiler support for lightweight context switching. - Stephen Dolan; Servesh Muralidharan; David Gregg (ACM Trans. Archit. Code Optim., 2013)

Orchestrating stream graphs using model checking. - Avinash Malik; David Gregg (ACM Trans. Archit. Code Optim., 2013)

Design considerations for parallel performance tools. - Roman Atachiants; David Gregg; Kim Jarvis; Gavin J. Doherty (CHI, 2014)

An improved simulated annealing heuristic for static partitioning of task graphs onto heterogeneous architectures. - Aravind Vasudevan; Avinash Malik; David Gregg (ICPADS, 2014)

Efficient Exploitation of Hyper Loop Parallelism in Vectorization. - Shixiong Xu; David Gregg (LCPC, 2014)

Semi-automatic Composition of Data Layout Transformations for Loop Vectorization. - Shixiong Xu; David Gregg (NPC, 2014)

An Efficient Vectorization Approach to Nested Thread-level Parallelism for CUDA GPUs. - Shixiong Xu; David Gregg (PACT, 2015)

Exploiting Hyper-Loop Parallelism in Vectorization to Improve Memory Performance on CUDA GPGPU. - Shixiong Xu; David Gregg (TrustCom/BigDataSE/ISPA (3), 2015)

Towards Optimal Sorting Networks: The Third Level. - Martin Marinov; David Gregg (CoRR, 2015)

Sorting Networks: The Final Countdown. - Martin Marinov; David Gregg (CoRR, 2015)

Itemset Isomorphism: GI-Complete. - Martin Marinov; David Gregg (CoRR, 2015)

The Movidius Myriad Architecture's Potential for Scientific Computing. - Mircea Horea Ionica; David Gregg (IEEE Micro, 2015)

Heuristics on Reachability Trees for Bicriteria Scheduling of Stream Graphs on Heterogeneous Multiprocessor Architectures. - Avinash Malik; David Gregg (ACM Trans. Embed. Comput. Syst., 2015)

Vectorization of Multibyte Floating Point Data Formats. - Andrew Anderson 001; David Gregg (PACT, 2016)

Spectral Convolution Networks. - Maria Francesca; Arthur Hughes; David Gregg (CoRR, 2016)

Customizable Precision of Floating-Point Arithmetic with Bitslice Vector Types. - Shixiong Xu; David Gregg (CoRR, 2016)

Practical Algorithms for Finding Extremal Sets. - Martin Marinov; Nicholas Nash; David Gregg (ACM J. Exp. Algorithmics, 2016)

Automatic Vectorization of Interleaved Data Revisited. - Andrew Anderson 001; Avinash Malik; David Gregg (ACM Trans. Archit. Code Optim., 2016)

Parallel Performance Problems on Shared-Memory Multicore Systems: Taxonomy and Observation. - Roman Atachiants; Gavin J. Doherty; David Gregg (IEEE Trans. Software Eng., 2016)

Parallel Multi Channel convolution using General Matrix Multiplication. - Aravind Vasudevan; Andrew Anderson 001; David Gregg (ASAP, 2017)

Bitslice Vectors: A Software Approach to Customizable Data Precision on Processors with SIMD Extensions. - Shixiong Xu; David Gregg (ICPP, 2017)

Low Complexity Multiply Accumulate Unit for Weight-Sharing Convolutional Neural Networks. - James Garland; David Gregg (IEEE Comput. Archit. Lett., 2017)

Mutual Inclusivity of the Critical Path and its Partial Schedule on Heterogeneous Systems. - Aravind Vasudevan; David Gregg (CoRR, 2017)

Low-memory GEMM-based convolution algorithms for deep neural networks. - Andrew Anderson 001; Aravind Vasudevan; Cormac Keane; David Gregg (CoRR, 2017)

Efficient Multibyte Floating Point Data Formats Using Vectorization. - Andrew Anderson 001; Servesh Muralidharan; David Gregg (IEEE Trans. Computers, 2017)

Optimal DNN primitive selection with partitioned boolean quadratic programming. - Andrew Anderson 001; David Gregg (CGO, 2018)

Improving accuracy of Winograd convolution for DNNs. - Barbara Barabasz; Andrew Anderson 001; David Gregg (CoRR, 2018)

Scalar Arithmetic Multiple Data: Customizable Precision for Deep Neural Networks. - Andrew Anderson 001; David Gregg (CoRR, 2018)

Low Complexity Multiply-Accumulate Units for Convolutional Neural Networks with Weight-Sharing. - James Garland; David Gregg (ACM Trans. Archit. Code Optim., 2018)

POSTER: Space and Time Optimal DNN Primitive Selection with Integer Linear Programming. - Yuan Wen; Andrew Anderson 001; Valentin Radu; Michael F. P. O'Boyle; David Gregg (PACT, 2019)

Winograd Convolution for DNNs: Beyond Linear Polynomials. - Barbara Barabasz; David Gregg (AI*IA, 2019)

Scalar Arithmetic Multiple Data: Customizable Precision for Deep Neural Networks. - Andrew Anderson 001; Michael Doyle; David Gregg (ARITH, 2019)

Performance-Oriented Neural Architecture Search. - Andrew Anderson 001; Jing Su; Rozenn Dahyot; David Gregg (HPCS, 2019)

Winograd Convolution for DNNs: Beyond linear polinomials. - Barbara Barabasz; David Gregg (CoRR, 2019)

A Taxonomy of Channel Pruning Signals in CNNs. - Kaveena Persand; Andrew Anderson 001; David Gregg (CoRR, 2019)

Beyond Base-2 Logarithmic Number Systems (WiP Paper). - Syed Asad Alam; David Gregg (LCTES, 2020)

High-Performance Low-Memory Lowering: GEMM-based Algorithms for DNN Convolution. - Andrew Anderson 001; Aravind Vasudevan; Cormac Keane; David Gregg (SBAC-PAD, 2020)

TASO: Time and Space Optimization for Memory-Constrained DNN Inference. - Yuan Wen; Andrew Anderson 001; Valentin Radu; Michael F. P. O'Boyle; David Gregg (SBAC-PAD, 2020)

Composition of Saliency Metrics for Pruning with a Myopic Oracle. - Kaveena Persand; Andrew Anderson 001; David Gregg (SSCI, 2020)

Composition of Saliency Metrics for Channel Pruning with a Myopic Oracle. - Kaveena Persand; Andrew Anderson 001; David Gregg (CoRR, 2020)

Exploiting Weight Redundancy in CNNs: Beyond Pruning and Quantization. - Yuan Wen; David Gregg (CoRR, 2020)

HOBFLOPS CNNs: Hardware Optimized Bitsliced Floating-Point Operations Convolutional Neural Networks. - James Garland; David Gregg (CoRR, 2020)

Bonseyes AI Pipeline - Bringing AI to You: End-to-end integration of data, algorithms, and deployment tools. - Miguel de Prado; Jing Su; Rabia Saeed; Lorenzo Keller; Noelia Vállez; Andrew Anderson 001; David Gregg; Luca Benini; Tim Llewellynn; Nabil Ouerhani; Rozenn Dahyot; Nuria Pazos (ACM Trans. Internet Things, 2020)

Error Analysis and Improving the Accuracy of Winograd Convolution for Deep Neural Networks. - Barbara Barabasz; Andrew Anderson 001; Kirk M. Soodhalter; David Gregg (ACM Trans. Math. Softw., 2020)

Domino Saliency Metrics: Improving Existing Channel Saliency Metrics with Structural Information. - Kaveena Persand; Andrew Anderson 001; David Gregg (AI*IA, 2021)

LOCAL: Low-Complex Mapping Algorithm for Spatial DNN Accelerators. - Midia Reshadi; David Gregg (NorCAS, 2021)

Taxonomy of Saliency Metrics for Channel Pruning. - Kaveena Persand; Andrew Anderson 001; David Gregg (IEEE Access, 2021)

Low-precision Logarithmic Number Systems: Beyond Base-2. - Syed Asad Alam; James Garland; David Gregg (ACM Trans. Archit. Code Optim., 2021)

Building SSA in a Compiler for PHP. - Paul Biggar; David Gregg (SSA-based Compiler Design, 2022)

Using a Nearest-Neighbour, BERT-Based Approach for Scalable Clone Detection. - Muslim Chochlov; Gul Aftab Ahmed; James Vincent Patten; Guoxian Lu; Wei Hou; David Gregg; Jim Buckley (ICSME, 2022)

On the RTL Implementation of FINN Matrix Vector Compute Unit. - Syed Asad Alam; David Gregg; Giulio Gambardella; Michael Preußer; Michaela Blott (CoRR, 2022)

High-speed parallel reconfigurable Fp multipliers for elliptic curve cryptography applications. - Khalid Javeed; Kamran Saeed; David Gregg (Int. J. Circuit Theory Appl., 2022)

Guest Editorial: Introduction to the Special Section on Communication-Efficient Distributed Machine Learning. - Xiaowen Chu 001; Fausto Giunchiglia; Giovanni Neglia; David Gregg; Jiangchuan Liu (IEEE Trans. Netw. Sci. Eng., 2022)

Winograd Convolution for Deep Neural Networks: Efficient Point Selection. - Syed Asad Alam; Andrew Anderson 001; Barbara Barabasz; David Gregg (ACM Trans. Embed. Comput. Syst., 2022)

Using Ensemble Inference to Improve Recall of Clone Detection. - Gul Aftab Ahmed; James Vincent Patten; Yuanhua Han; Guoxian Lu; David Gregg; Jim Buckley; Muslim Chochlov (IWSC, 2023)

Dynamic Resource Partitioning for Multi-Tenant Systolic Array Based DNN Accelerator. - Midia Reshadi; David Gregg (PDP, 2023)

EC-Crypto: Highly Efficient Area-Delay Optimized Elliptic Curve Cryptography Processor. - Khalid Javeed; Ali El-Moursy; David Gregg (IEEE Access, 2023)

Maple: A Processing Element for Row-Wise Product Based Sparse Tensor Accelerators. - Midia Reshadi; David Gregg (CoRR, 2023)

On the RTL Implementation of FINN Matrix Vector Unit. - Syed Asad Alam; David Gregg; Giulio Gambardella; Thomas B. Preußer; Michaela Blott (ACM Trans. Embed. Comput. Syst., 2023)

GMC-crypto: Low latency implementation of ECC point multiplication for generic Montgomery curves over GF(p). - Khalid Javeed; Yasir Ali Shah; David Gregg (J. Parallel Distributed Comput., 2024)

Nearest-neighbor, BERT-based, scalable clone detection: A practical approach for large-scale industrial code bases. - Gul Aftab Ahmed; James Vincent Patten; Yuanhua Han; Guoxian Lu; Wei Hou; David Gregg; Jim Buckley; Muslim Chochlov (Softw. Pract. Exp., 2024)

E2CSM: efficient FPGA implementation of elliptic curve scalar multiplication over generic prime field GF(p). - Khalid Javeed; Ali El-Moursy; David Gregg (J. Supercomput., 2024)

Point Multiplication Accelerator for Arbitrary Montgomery Curves. - Khalid Javeed; David Gregg (IEEE Embed. Syst. Lett., 2024)

Efficient Adaptable Streaming Aggregation Engine. - Philippos Papaphilippou; Wayne Luk; David Gregg (FCCM, 2025)

Industrial-Scale Neural Network Clone Detection with Disk-Based Similarity Search. - Gul Aftab Ahmed; Muslim Chochlov; Abdul Razzaq; James Vincent Patten; Yuanhua Han; Guoxian Lu; Jim Buckley; David Gregg (SANER, 2025)

Efficient Number Theoretic Transform Architecture for CRYSTALS-Kyber. - Khalid Javeed; David Gregg (IEEE Trans. Circuits Syst. II Express Briefs, 2025)