Skip to main content

Trinity College Dublin, The University of Dublin

Trinity Menu Trinity Search



Professor David Gregg
Professor, Computer Science

Biography

I am a lecturer in the Department of Computer Science, Trinity College Dublin. Within the larger Computer Architecture Group, I lead my own small research group of six postgraduate research students, and one postdoctoral researcher.

Before coming to Trinity College Dublin, I studied for a doctorate in Computer Science at the Technische Universitaet in Vienna, on the topic of compiling for advanced instruction level parallel architectures, such as VLIW and EPIC machines. In 2001 I was awarded my doctoral degree with distinction (mit augezeichnetem Erfolg).

Publications and Further Research Outputs

Peer-Reviewed Publications

Khalid Javeed, Ali El-Moursy, David Gregg, E2CSM: Efficient FPGA implementation of elliptic curve scalar multiplication over generic prime field GF(p), Journal of Supercomputing, 80, (1), 2024, p50 - 74 Journal Article, 2024 DOI URL

Khalid Javeed, Ali El-Moursy, David Gregg, EC-Crypto: Highly Efficient Area-Delay Optimized Elliptic Curve Cryptography Processor, IEEE Access, 11, 2023, p56649 - 56662 Journal Article, 2023 URL DOI

Building SSA in a Compiler for PHP in, editor(s)Fabrice Rastello, Florent Bouchez-Tichadou , SSA-based Compiler Design, Springer, 2022, pp347 - 357, [Paul Biggar, David Gregg] Book Chapter, 2022 URL

Barabasz, Barbara and Anderson, Andrew and Soodhalter, Kirk M. and Gregg, David, Error Analysis and Improving the Accuracy of Winograd Convolution for Deep Neural Networks, ACM Trans. Math. Softw., 46, (4), 2020, p33 Journal Article, 2020 DOI

Andrew Anderson, Michael Doyle, David Gregg, Scalar Arithmetic Multiple Data: Customizable Precision for Deep Neural Networks, 26th IEEE Symposium on Computer Arithmetic (ARITH 2019), Kyoto, Japan, June 10-12, 2019, edited by Naofumi Takagi, Sylvie Boldo, Martin Langhammer , 2019, pp61 - 68 Conference Paper, 2019 DOI

Hardware and software performance in deep learning in, editor(s)Bashir M. Al-Hashimi Geoff V. Merrett , Many-Core Computing: Hardware and Software, London, United Kingdom, The Institution of Engineering and Technology, 2019, pp141 - 164, [Andrew Anderson, James Garland, Yuan Wen, Barbara Barabasz, Kaveena Persand, Aravind Vasudevan, David Gregg] Book Chapter, 2019 URL

James Garland, David Gregg, Low Complexity Multiply-Accumulate Units for Convolutional Neural Networks with Weight-Sharing, ACM Transactions on Architecture and Code Optimization, High-performance Embedded Architecture and Compilation, Valencia, Spain, 21-23 January 2019, edited by Keon De Bosschere , 15, (3), ACM, 2019, pp31:1 - 31:24 Conference Paper, 2019 URL

James Garland, David Gregg, Low Complexity Multiply-Accumulate Units for Convolutional Neural Networks with Weight-Sharing, ACM Transactions on Architecture and Code Optimization, 15, (3), 2018, p31:1 - 31:24 Journal Article, 2018 TARA - Full Text URL

Anderson, A. and Gregg, D., Optimal DNN primitive selection with partitioned boolean quadratic programming, Proceedings of the 2018 International Symposium on Code Generation and Optimization , February, 2018, pp340-351 Conference Paper, 2018 DOI

Garland, J. and Gregg, D., Low complexity multiply-accumulate units for convolutional neural networks with weight-sharing, ACM Transactions on Architecture and Code Optimization, 15, (3), 2018 Journal Article, 2018 DOI

James Garland, David Gregg, Low Complexity Multiply Accumulate Unit for Weight-Sharing Convolutional Neural Networks, IEEE Computer Architecture Letters, 16, (2), 2017, p132 - 135 Journal Article, 2017 URL

Anderson, A. and Muralidharan, S. and Gregg, D., Efficient Multibyte Floating Point Data Formats Using Vectorization, IEEE Transactions on Computers, 66, (12), 2017, p2081-2096 Journal Article, 2017 DOI

Xu, S. and Gregg, D., Bitslice Vectors: A Software Approach to Customizable Data Precision on Processors with SIMD Extensions, (8025318), 2017, pp442-451 Conference Paper, 2017 DOI

Vasudevan, A. and Anderson, A. and Gregg, D., Parallel Multi Channel convolution using General Matrix Multiplication, IEEE 28th International Conference on Application-specific Systems, Architectures and Processors (ASAP), (7995254), 2017, pp19-24 Conference Paper, 2017 DOI

Marinov, M., Nash, N., Gregg, D. , Practical Algorithms for Finding Extremal Sets, Journal of Experimental Algorithmics, 21, (2), 2016, p1.9- Journal Article, 2016 DOI

Anderson, A., Gregg, D., Vectorization of Multibyte Floating Point Data Formats, Parallel Architectures and Compilation Techniques - Conference Proceedings, Parallel Architectures and Compilation Techniques, 11-15 Sept, 2016, pp363-372 Conference Paper, 2016 DOI

Xu S, Gregg D, An Efficient Vectorization Approach to Nested Thread-level Parallelism for CUDA GPUs, Parallel Architectures and Compilation Techniques - Conference Proceedings, PACT, 2016, 2016-March, 2016, pp488 - 489 Conference Paper, 2016 DOI URL

Roman Atachiants, Gavin Doherty and David Gregg, Parallel performance problems on shared-memory multicore systems: a taxonomy and observation, IEEE Transactions on Software Engineering, 42, (8), 2016, p764 - 785 Journal Article, 2016 DOI

Xu S, Gregg D, Efficient exploitation of hyper loop parallelism in vectorization, 8967, 2015, 382 - 396 Miscellaneous, 2015 URL DOI

Xu S, Gregg D, Exploiting Hyper-Loop Parallelism in Vectorization to Improve Memory Performance on CUDA GPGPU, Proceedings - 14th IEEE International Conference on Trust, Security and Privacy in Computing and Communications, TrustCom 2015, 2015, 3, 2015, pp53 - 60 Conference Paper, 2015 URL DOI

Malik A, Gregg D, Heuristics on reachability trees for bicriteria scheduling of stream graphs on heterogeneous multiprocessor architectures, ACM Transactions on Embedded Computing Systems, 14, (2), 2015, p23- Journal Article, 2015 DOI URL

Andrew Anderson, Avinash Malik, David Gregg, Automatic Vectorization of Interleaved Data Revisited, ACM Transactions on Architecture and Code Optimization, 12, (4), 2015, p50- Journal Article, 2015 TARA - Full Text DOI

Avinash Malik and David Gregg, Heuristics on Reachability Trees for Bicriteria Scheduling of Stream Graphs on Heterogeneous Multiprocessor Architectures, ACM Transactions on Embedded Computing Systems, 14, (2), 2015, p23.1 - 23.26 Journal Article, 2015 DOI

Mircea Horea Ionica and David Gregg, An evaluation of the suitability of the Movidius Myriad architecture for scientific computing, IEEE Micro, 35, (1), 2015, p6 - 14 Journal Article, 2015 DOI

Aravind Vasudevan, Avinash Malik, David Gregg, An improved simulated annealing heuristic for static partitioning of task graphs onto heterogeneous architectures, 2014 20th IEEE International Conference on Parallel and Distributed Systems (ICPADS), Hsinchu Taiwan, 2014, pp95 - 102 Conference Paper, 2014 URL TARA - Full Text DOI

Aravind Vasudevan, Quentin Bragard, Anthony Ventresque, Liam Murphy and David Gregg, AN EVALUATION OF SPACE AND GRAPH-PARTITIONING METHODS FOR DISTRIBUTED ROAD NETWORK SIMULATIONS, 2014 Winter Simulation Conference, 2014, pp4107 - 4108 Conference Paper, 2014 URL TARA - Full Text

R. Atachiants, D. Gregg, K. Jarvis and G. Doherty, Design Considerations for Parallel Performance Tools, ACM Conference on Human Factors in Computing systems (CHI 2014), Toronto, Canada, ACM Press, 2014, pp2501-2510 Conference Paper, 2014 DOI

Xu,Shixiong S., Gregg,David D., Semi-automatic composition of data layout transformations for loop vectorization, Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 8707 LNCS, 2014, p485-496 Journal Article, 2014 DOI

Avinash Malik and David Gregg, Orchestratin stream graphs using model checking, ACM Transactions on Architecture and Code Optimization, 2013 Journal Article, 2013 DOI

Stephen Dolan, Servesh Muralidharan and David Gregg, Compiler Support for Lightweight Context Switching, ACM Transactions on Architecture and Code Optimization, 9, (4), 2013, p36.1 - 36.25 Journal Article, 2013 DOI

Servesh Muralidharan, Aravind Vasudevan, Avinash Malik and David Gregg, Heterogeneous Multiconstraint Application Partitioner (HMAP), 2013 12th IEEE International Conference on Trust, Security and Privacy in Computing and Communications (TrustCom), Melbourne, VIC, Australia, 16-18 July 2013, 2013, pp999 - 1007 Conference Paper, 2013 URL DOI TARA - Full Text

Jimmy Cleary, Owen Callanan, Mark Purcell, David Gregg, Fast Asymmetric Thread Synchronization, ACM Transactions on Architecture and Code Optimization, 9, (4), 2013, p27.1 - 27.22 Journal Article, 2013 DOI

Mounira Bachir, Sid Ahmed Ali Touati, Frederic Brault, David Gregg and Albert Cohen, Minimal unroll factor for code generation of software pipelining, International Journal of Parallel Programming, 41, (1), 2013, p1 - 58 Journal Article, 2013 DOI

Jason McCandless and David Gregg, Compiler techniques to improve dynamic branch prediction for indirect jump and call instructions, ACM Transactions on Architecture and Code Optimization, 8, (4), 2012, p24.1 - 24.20 Journal Article, 2012 DOI

Mark Purcell, Aravind Vasudevan, David Gregg, Real-time sensor signal capture from a harsh environment, 2012 IEEE/ACM 16th International Symposium on Distributed Simulation and Real Time Applications, 2012/10/25, 2012, pp36-43 Conference Paper, 2012 TARA - Full Text URL DOI

Paul Biggar, Edsko de Vries, David Gregg, A practical solution for achieving language compatibility in scripting language compilers, Science of Computer Programming, 77, (9), 2012, p971 - 989 Journal Article, 2012 TARA - Full Text DOI

Mark Purcell, Aravind Vasudevan and David Gregg, Real-time sensor signal capture from a harsh environment, 16th IEEE/ACM International Symposium on Distributed Simulation and Real Time Applications (DS-RT 2012), Dublin, October, IEEE Computer Society, 2012, pp36 - 43 Conference Paper, 2012 DOI

J. McCandless and D. Gregg, Optimizing interpreters by tuning opcode orderings on virtual machines for modern architectures, Conference on the Principles and Practice of Programming in Java, PPPJ '11, Kongens Lyngby, Denmark, August 24-26, 2011, ACM, 2011, pp161 - 170 Conference Paper, 2011 DOI TARA - Full Text

Raymond Manley and David Gregg, Mapping Streaming Languages to General Purpose Processors through Vectorization, Languages and Compilers for Parallel Computing, Lecture Notes in Computer Science, 22nd International Workshop, LCPC 2009, Newark, DE, USA, October 8-10, 2009, edited by Guang R. Gao, Lori L. Pollock, John Cavazos and Xiaoming Li , 5898, Springer, 2010, pp95-110 Conference Paper, 2010 DOI

Raymond Manley, Paul Magrath and David Gregg, Code generation for hardware accelerated AES, 21st IEEE International Conference on Application-specific Systems Architectures and Processors, Rennes, France, 7-9 July 2010, IEEE, 2010, pp345-348 Conference Paper, 2010 TARA - Full Text DOI

Raymond Manley and David Gregg, A Program Generator for Intel AES-NI Instructions, Lecture Notes in Computer Science, 11th International Conference on Cryptology in India (INDOCRYPT 2010), Hyderabad, India, December 12-15, 2010, edited by Guang Gong, Kishan Chand Gupta , 6498, Springer, 2010, pp311-327 Conference Paper, 2010 DOI

Nicholas Nash, David Gregg, An output sensitive algorithm for computing a maximum independent set of a circle graph, Information Processing Letters, 110, (16), 2010, p630-634 Journal Article, 2010 TARA - Full Text DOI

Milan Tichý, Jan Schier and David Gregg, GSFAP adaptive filtering using log arithmetic for resource-constrained embedded systems, ACM Transactions in Embedded Computing Systems, 9, 2010, p3.1 - 3.31 Journal Article, 2010 DOI

Kevin Williams, Jason McCandless and David Gregg, Portable Just-in-Time Specialization of Dynamically Typed Scripting Languages, LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, 22nd InternationalWorkshop, LCPC 2009, Newark, DE, USA, October 8-10, 2009, edited by Guang R. Gao, Lori L. Pollock, John Cavazos, Xiaoming Li , 5898, Springer, 2010, pp391-398 Conference Paper, 2010 DOI

Kevin Williams, Jason McCandless and David Gregg, Dynamic interpretation for dynamic scripting languages, The 8th International Symposium on Code Generation and Optimization (CGO 2010), Toronto, Ontario, Canada, April 24-28, 2010, edited by Andreas Moshovos, J. Gregory Steffan, Kim M. Hazelwood, David R. Kaeli , ACM, 2010, pp278-287 Conference Paper, 2010 DOI

Nicholas Nash and David Gregg, Comparing integer data structures for 32- and 64-bit keys, ACM Journal of Experimental Algorithmics, 15, 2010, p2.1 - 2.43 Journal Article, 2010 DOI

Paul Biggar, Edsko deVries and David Gregg, A practical solution for scripting language reimplementations and compilers, ACM Symposium on Applied Computing (SAC 09), Honolulu, Hawaii, March, ACM Press, 2009, pp1916 - 1923 Conference Paper, 2009 DOI

Mark Purcell, Owen Callanan and David Gregg, Streamlining offload computing to high performance architectures, 2009 Workshop on Using Emerging Parallel Architectures for Computational Science, International Conference on Computational Science, Baton Rouge, May, LNCS 5544, 2009, pp974 - 983 Conference Paper, 2009 DOI

Mounira Bachir, David Gregg, Sid Ahmed Ali Touati, Using the Meeting Graph Framework to Minimise Kernel Loop Unrolling for Scheduled Loops, Languages and Compilers for Parallel Computing, Lecture Notes in Computer Science, 22nd InternationalWorkshop, LCPC 2009, Newark, DE, USA,, October 8-10, 2009, edited by Guang R. Gao, Lori L. Pollock, John Cavazos and Xiaoming Li , Springer, 2009, pp278-292 Conference Paper, 2009 DOI

Yunhe Shi, Kevin Casey, M. Anton Ertl and David Gregg, Virtual machine showdown: stack versus registers, ACM Transactions on Architecture and Code Optimization, 4, (4), 2008, p2:1-36 Journal Article, 2008 URL DOI

David Gregg, Vikram S. Adve and Brian N. Bershad(ed.), Proceedings of the 4th International Conference on Virtual Execution Environments, VEE 2008, Seattle, WA, March 5-7, ACM Press, 2008, 182 p Proceedings of a Conference, 2008

Nicholas Nash and David Gregg, Comparing integer data structures for 32 and 64 Bit Keys, 7th International Workshop on Experimental Algorithms (WEA 08), Provincetown, Cape Cod, MA, USA, 30 May - 2 June 2008, 2008, pp28 - 42 Conference Paper, 2008 DOI

Nicholas Nash, Sylvain Lelait and David Gregg, Efficiently implementing maximum independent set algorithms on circle graphs, ACM Journal of Experimental Algorithmics, 13, 2008, p8/1-8/34 Journal Article, 2008 DOI

Kevin Williams, Albert Noll, Andreas Gal and David Gregg, Optimization strategies for a Java Virtual Machine interpreter on the Cell Broadband Engine, ACM International Conference on Computing Frontiers, Ischia, Italy, May 5-7, ACM Press, 2008, pp189 - 198 Conference Paper, 2008 DOI

Emre Özer, Andy Nisbet, David Gregg, A stochastic bit-width estimation technique for compact and low-power custom processors, ACM Transactions on Embedded Computing Systems, 7, (3), 2008, p34:1-30 Journal Article, 2008 DOI

Paul Biggar, Nicholas Nash, Kevin Williams and David Gregg, An experimental study of sorting and branch prediction, ACM Journal of Experimental Algorithmics, 12, 2008, p1.8:1-36 Journal Article, 2008 DOI URL

Kevin Casey, M. Anton Ertl and David Gregg, Optimizing indirect branch prediction accuracy in virtual machine interpreters, ACM Transactions on Programming Languages and Systems, 29, (6), 2007, p1-36 Journal Article, 2007 DOI URL

Emre Özer, Resit Sendag and David Gregg, Multiple-valued logic buses for reducing bus energy in low-power systems, IEE Proceedings on Computers and Digital Techniques, 153, (4), 2006, p270 - 282 Journal Article, 2006 DOI

Milan Tichy, Jan Schier and David Gregg, FPGA Implementation of Adaptive Filters based on GSFAP using Log Arithmetic, Proceedings of the 2006 IEEE Workshop on Signal Processing Systems Design and Implementation (SiPS 06), IEEE Workshop on Signal Processing Systems Design and Implementation (SiPS 06), Banff, Canada, October 26th, 2006, pp342 - 347 Conference Paper, 2006 DOI URL

Milan Tichy, Jan Schier and David Gregg, Efficient floating-point implementations of high-order (N)LMS adaptive filters in FPGAs, Lecture Notes in Computer Science, Proceedings of the International Workshop on Applied Reconfigurable Computing (ARC 2006), Delft, The Netherlands, March, Springer, 2006, pp311 - 316 Conference Paper, 2006 URL DOI

David Gregg and M. Anton Ertl., Optimising code-copying JIT compilers for virtual stack machines, Concurrency and Computation Practice and Experience, 18, (11), 2006, p1465 - 1484 Journal Article, 2006 DOI

Anton Ertl, Kevin Casey and David Gregg, Fast and Flexible Instruction Selection with On-Demand Tree-Parsing Automata, ACM SIGPLAN 2006 Conference on Programming Language Design and Implementation, Ottawa, Canada, June 2006, ACM, 2006, pp52 - 60 Conference Paper, 2006 URL DOI

Yunhe Shi, Emre Ozer and David Gregg, Analyzing effects of trace cache configurations on the prediction of indirect branches, Journal of Instruction Level Parallelism, 8, (February), 2006, p24 Journal Article, 2006 URL

Yunhe Shi, Emre Özer and David Gregg, Low-cost microarchitectural techniques for enhancing the prediction of return addresses on high-performance trace cache processors, Proceedings of the 21st International Symposium on Computer and Information Sciences (ISCIS 06), Istanbul, Turkey, November, 2006, pp248 - 257 Conference Paper, 2006 DOI

Owen Callanan, David Gregg, Andy Nisbet and Mike Peardon, High performance scientific computing using FPGAs with IEEE floating point and logarithmic arithmetic for Lattice QCD, Proceedings of the 16th International Conference on Field Programmable Logic and Applications (FPL 06), Madrid, Spain, 2006, pp29 - 34 Conference Paper, 2006 URL TARA - Full Text DOI

Bannister, R. Gregg, D. Wilson, S. Nisbet, A. , FPGA implementation of an Image Segmentation algorithm using logarithmic arithmetic, Proceedings of the Midwest Symposium on Circuits and Systems, Midwest Symposium on Circuits and Systems, Covington, KY , 7-10 Aug, 2005, 2005, pp810-813 Conference Paper, 2005 TARA - Full Text DOI

Emre Özer, Resit Sendag and David Gregg, Multiple-Valued Caches for Power-Efficient Embedded Systems., 35th IEEE International Symposium on Multiple-Valued Logic, Calgary, Canada, 18-21 May 2005, 2005, pp126-131 Conference Paper, 2005 DOI

Emre Özer, Andy Nisbet, David Gregg and Owen Callanan, Estimating bus size for custom processors in embedded systems, Design Automation for Embedded Systems, 10, (1), 2005, p5 - 26 Journal Article, 2005 DOI

David Gregg, James Power and John Waldron, A method-level comparison of the Java Grande and SPEC JVM98 benchmark suites, Concurrency and Computation: Practice and Experience, 17, (7-8), 2005, p757 - 773 Journal Article, 2005 DOI

Emre Özer, Resit Sendag and David Gregg, Multiple-valued caches for power-efficient embedded systems, Proceedings of the 35th IEEE International Symposium on Multiple-Valued Logic (ISMVL 2005), Calgary, Canada, May, 2005, pp120 - 125 Conference Paper, 2005 DOI

Owen Callanan, Andy Nisbet, Emre Özer, James Sexton, David Gregg, FPGA Implementation of a Lattice Quantum Chromodynamics Algorithm Using Logarithmic Arithmetic, 12th Reconfigurable Architectures Workshop (RAW 2005), Denver, CA, 4-8 April, IEEE Computer Society, 2005 Conference Paper, 2005 DOI URL

Owen Callanan, Andy Nisbet, Emre Özer, James Sexton, David Gregg, FPGA implementation of Lattice QCD algorithm using log arithmetic, 12th Reconfigurable Architectures Workshop, (electronic proceedings), IEEE CS, Denver, CO, April, 2005 Conference Paper, 2005

Yunhe Shi, David Gregg, Andrew Beatty and M. Anton Ertl, Virtual machine showdown: stack versus registers, ACM/USENIX Conference on Virtual Execution Environments, Chicago, Illinois, June 2005, 2005, pp153-163 Conference Paper, 2005 DOI

Kevin Casey, David Gregg, M. Anton Ertl, Tiger - An Interpreter Generation Tool, LNCS, Compiler Construction, 14th International Conference (CC 2005), Edinburgh, UK, edited by Rastislav Bodík , 3443, (April 4-8), Springer, 2005, pp246 - 249 Conference Paper, 2005 DOI URL

David Gregg, Andrew Beatty, Kevin Casey, Brian Davis and Andrew Nisbet, The case for virtual register machines, Science of Computer Programming, 57, (3), 2005, p319 - 338 Journal Article, 2005

Emre Özer, Resit Sendag and David Gregg, Multiple-valued logic buses for reducing bus size, transitions and power in deep submicron technologies, Proceedings of the Advanced Networking and Communications Hardware Workshop (ANCHOR 2005), Madison, Wisconsin, June, 2005, pp36 - 44 Conference Paper, 2005

Richard Bannister, David Gregg, Simon Wilson and Andy Nisbet, Implementation of an image segmentation algorithm using logarithmic arithmetic, to appear on post-conference, Proceedings of the IEEE International Midwest Symposium on Circuits and Systems (MWSCAS 2005), Ohio, August, 2005 Conference Paper, 2005 DOI

A language and tool for generating efficient virtual machine interpreters in, editor(s)C. Lengauer, C. Consel, D. Batory and M. Odersky , Domain-Specific Program Generation, LNCS 3016, 2004, pp196 - 215, [David Gregg and M. Anton Ertl] Book Chapter, 2004

Emre Ozer, Andy Nisbet and David Gregg, Automatic customization of embedded applications for enhanced performance and reduced power using optimizing compiler techniques, Proceedings of the 10th European Conference on Parallel Computing (Europar 04), Pisa, August, LNCS 3149, 2004, pp318 - 327 Conference Paper, 2004 DOI

Emre Özer, Andy Nisbet and David Gregg, Automatic customization of embedded applications for enhanced performance and reduced power using optimizing compiler techniques, Proceedings of the 10th European Conference on Parallel Computing (Europar 2004), Pisa, August, 2004, pp318 - 327 Conference Paper, 2004 DOI

A language and tool for generating efficient virtual machine interpreters in, editor(s)C. Lengauer, C. Consel, D. Batory, M. Odersky , Domain-Specific Program Generation, 2004, pp195 - 215, [David Gregg and M. Anton Ertl] Book Chapter, 2004

Emre Ozer, Andy Nisbet and David Gregg, Stochastic bit-width approximation using extreme value theory for cutomizable processors, Proceedings of the 12th International Conference on Compiler Construction (CC 04), Barcelona, April, LNCS 2985, 2004, pp250 - 264 Conference Paper, 2004 DOI

M. Anton Ertl and David Gregg, Retargeting JIT compilers by using C-compiler generated executable code, Proceedings of the International Conference on Parallel Architecture and Compilation Techniques (PACT 2004), IEEE CS, Antibes Juan les Pins, September, 2004, pp41 - 50 Conference Paper, 2004 DOI

M. Anton Ertl and David Gregg, Retargeting JIT compilers using C-compiler generated executable code, Proceedings of the International Conference on Parallel Architectures and Compilation Techniques (PACT 04), Antibes Juan les Pins, Septmber, 2004, pp7 - 14 Conference Paper, 2004 DOI

Emre Özer, Andy Nisbet and David Gregg, Fine-Tuning Loop-Level Parallelism for Increasing Performance of DSP Applications on FPGAs, 12th IEEE Symposium on Field-Programmable Custom Computing Machines, Napa, CA, 20-23 April 2004, 2004, pp273-274 Poster, 2004

M. Anton Ertl and David Gregg, Combining stack-caching with dynamic superinstructions, Proceedings of the ACM SIGPLAN 2004 Workshop on Interpreters, Virtual Machines and Emulators (IVME 04), Washington DC, June, 2004, pp7 - 14 Conference Paper, 2004 DOI

Kevin Casey, David Gregg M. Anton Ertl and Andrew Nisbet, Towards superinstructions for Java interpeters, LNCS 2826, Proceedings of the 7th International Workshoop on Software and Compilers for Embedded Systems (SCOPES 03), Vienna, September, 2003, pp329 - 343 Conference Paper, 2003 DOI

M. Anton Ertl and David Gregg, Optimizing Indirect Branch Prediction Accuracy in Virtual Machine Interpreters, Proceedings of the ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation (PLDI 03), San Diego, California, June, 2003, pp278 - 288 Conference Paper, 2003 DOI

Brian Davis, Andrew Beatty, Kevin Casey, David Gregg and John Waldron, The case for virtual register machines, Proceedings of the ACM SIGPLAN 2003 Workshop on Interpreters, Virtual Machines and Emulators (IVME 03), San Diego, California, June, 2003, pp41 - 49 Conference Paper, 2003 DOI

David Gregg, James Power and John Waldron, Platform independent dynamic Java Virtual Machine analysis: the Java Grande forum benchmark suite, Concurrency and Computation Practice and Experience, 15, (3-5), 2003, p459 - 484 Journal Article, 2003 DOI

M. Anton Ertl and David Gregg, The structure and performance of efficient interpreters, Journal of Instruction-Level Parallelism, 5, 2003 Journal Article, 2003 URL

Andrew Beatty, Kevin Casey, David Gregg and Andrew Nisbet, An optimized Java interpreter for connected devices and embedded systems, Proceedings of the 18th ACM Symposium on Applied Computing (SAC 03), Melbourne, Florida, March, 2003, pp692 - 697 Conference Paper, 2003 DOI

M. Anton Ertl, David Gregg, Andreas Krall and Bernd Paysan, Vmgen - a generator of efficient virtual machine interpreters, Software Practice and Experience, 32, (3), 2002, p265 - 294 Journal Article, 2002 DOI

David Gregg and John Waldron, Primitive sequences in general purpose Forth programs, Proceedings of the 18th EuroForth European Conference on Forth, Vienna, Austria, September, 2002, pp24 - 32 Conference Paper, 2002

Benchmarking the Java virtual architecture in, editor(s)Mario Wolczko and Vijaykrishnan Narayanan , Java Microarchitectures, Kluwer Academic Publishers, 2002, pp1 - 18, [David Gregg, James Power and John Waldron] Book Chapter, 2002

M. Anton Ertl and David Gregg, Generating an interpreter with Vmgen, Proceedings of the 10th International Conference on Compiler Construction (CC 2002), Grenoble, April, LNCS 2304, 2002, pp5 - 8 Conference Paper, 2002 DOI

David Gregg, M. Anton Ertl and Andreas Krall, Implementation of an Efficient Java Interpreter, Proceedings of the 9th High Performance Computing and Networking Conference, Amsterdam, June, LNCS 2110, 2001, pp613 - 620 Conference Paper, 2001 DOI

John Waldron and David Gregg, Identification and Quantification of Hotspots in Grande Java Programs, Proceedings of the 9th High Performance Computing and Networking Conference, Amsterdam, June, LNCS 2110, 2001, pp701 - 710 Conference Paper, 2001 DOI

David Gregg, M. Anton Ertl and John Waldron, The common case in Forth programs, Proceedings of the 17th EuroForth European Conference on Forth, Schloss Dagstuhl, Germany, November, 2001 Conference Paper, 2001

David Gregg, M. Anton Ertl and Andreas Krall, A fast Java interpreter, Java Optimization Strategies for Embedded Systems Workshop (JOSES), Genoa, April, 2001, pp113 - 121 Conference Paper, 2001

M. Anton Ertl and David Gregg, The behaviour of efficient virtual machine interpreters on modern architectures, LNCS 2150, Proceedings of the 7th European Conference on Parallel Computing (Europar 2001), Manchester, August, 2001, pp403 - 412 Conference Paper, 2001 DOI

David Gregg, M. Anton Ertl and John Waldron, The common case in Forth programs, Proceedings of the 17th EuroForth European Conference on Forth, Schloss Dagstuhl, Germany, November, 2001, pp63 - 70 Conference Paper, 2001

David Gregg, Comparing Tail Duplication with Compensation Code in single path global instruction scheduling, Proceedings of the 9th International Conference on Compiler Construction (CC 2001), Genoa, April, LNCS 2027, 2001, pp200 - 212 Conference Paper, 2001 DOI

David Gregg, Global software pipelining with Iteration Preselection, Proceedings of the 8th International Conference on Compiler Construction (CC 2000), Berlin, March, 2000, pp189 - 201 Conference Paper, 2000 DOI

Non-Peer-Reviewed Publications

Syed Asad Alam, David Gregg, Giulio Gambardella, Thomas B. Preusser, Michaela Blott, On the RTL Implementation of FINN Matrix Vector Unit, ACM Transactions on Embedded Computing Systems, 22, (6), 2023, p94:1 - 94:27 Journal Article, 2023 URL DOI

Syed Asad Alam, Andrew Anderson, Barbara Barabasz, David Gregg, Winograd Convolution for Deep Neural Networks: Efficient Point Selection, ACM Transactions on Embedded Computing Systems, 21, (6), 2022, p80:1 - 80:28 Journal Article, 2022 DOI URL

Muslim Chochlov, Gul Aftab Ahmed, James Vincent Patten, Guoxian Lu, Wei Hou, David Gregg, Jim Buckley, Using a Nearest-Neighbour, BERT-Based Approach for Scalable Clone Detection, IEEE International Conference on Software Maintenance and Evolution, Limassol, Cyprus, October, 2022, 2022, pp582 - 591 Conference Paper, 2022 URL DOI

Khalid Javeed, Kamran Saeed, David Gregg, High-speed parallel reconfigurable Fp multipliers for elliptic curve cryptography applications, International Journal of Circuit Theory and Applications, 50, (4), 2022, p1160 - 1173 Journal Article, 2022 DOI URL

Kaveena Persand, Andrew Anderson, David Gregg, Taxonomy of Saliency Metrics for Channel Pruning, IEEE Access, 9, 2021, p120110 - 120126 Journal Article, 2021 URL DOI

Syed Asad Alam, James Garland, David Gregg, Low-precision Logarithmic Number Systems: Beyond Base-2, ACM Transactions on Architecture and Code Optimization, 18, (4), 2021, p47:1 - 47:25 Journal Article, 2021 DOI URL

Kaveena Persand, Andrew Anderson, David Gregg, Domino Saliency Metrics: Improving Existing Channel Saliency Metrics with Structural Information, 20th International Conference of the Italian Association for Artificial Intelligence (AIxIA 2021), Italy, December 1-3 2021, 13196, Springer, 2021, pp447 - 461 Conference Paper, 2021 DOI URL

David Gregg, Comparing Code Duplication and Compensation Code, Code Optimisation: Trends, Challenges and Perspectives Dagstuhl-Seminar-Report 286, September, 2000 Invited Talk, 2000

David Gregg, Global Software Pipelining with Iteration Preselection, INRIA-Rocquencourt research centre near Paris, October, 1999 Invited Talk, 1999

David Gregg, Software Pipelining with Iteration Preselection, Instruction-Level Parallelism and Parallelizing Compilation Dagstuhl-Seminar-Report 237, April, 1999 Invited Talk, 1999

Research Expertise

Description

Software optimization Multicore computing Compiler optimization Domain Specific Languages Automatic program generation Algorithm design Low power computing

Keywords

Computer Programming Languages; Computer Software; COMPUTER SYSTEMS; Parallel Computer Architecture

Recognition

Representations

VEE 2008 General chair 2008

CC 2008 Programme Committee 2008

PPPJ 2006 Programme Committee 2006

VEE 2005 & 2006 Steering Committee 2005-2006

IVME 2004 Programme Committee 2004

SCOPES 2003 Programme Committee 2003

SCOPES 2004 Programme Committee 2004

EI Proof of Concept Funding Panel Spring 2003-Summer 2004

IVME 2003 General Chair 2003

Euroforth 2003 Programme Committee 2003

Euroforth 2002 Programme Committee 2002

Awards and Honours

ACM Recognition of Service Award June 4th 2008

Memberships

Member of ACM 2003

Fellow of the Irish Computer Society 19.3.2013