María Jesús Garzarán

Curriculum Vitae


Office: 4308
Department of Computer Science
University of Illinois
Thomas M. Siebel Center for Computer Science
201 N. Goodwin
Urbana, IL 61801-2302 USA
(217) 244-8878
garzaran at cs.uiuc.edu
http://polaris.cs.uiuc.edu/~garzaran


· Research interests · Education · Employment · Awards ·
· Publications · Teaching · Other Instructional Activities · Short Courses and Tutorials · Graduate Students · Research funding ·
· Invited talks · Conference talks · By-invitation workshops · Departamental service ·
· Seminar organization ·
Workshop organization ·
· Conference organization · Other professional service ·


Research interests

Parallel computer architectures, thread-level speculation, compilers, automatic performance tuning, parallel programming, and reliability.


Education

1994-2002 Ph.D. in Computer Science and Engineering Systems, Universidad de Zaragoza (Spain), July 2002
Dissertation: Hardware Prefetch, Reduction Support, and Speculative State Buffering in Shared Memory Multiprocessors
Advisor: Víctor Viñals
1992-1993 Last year of the engineering studies, option Computer Science , Ecole Nationale Supérieure des Télécommunications de Bretagne (France).
These studies were done with a Eramus Fellowship from the European Union. This grant promotes the mobility of the european students.
1987-1993 B.S. in Computer Science, Universidad Politécnica de Valencia (Spain), July 1993.
Dissertation: Router pour Chirvan-Bloc
Advisors: Louis Olivier Donzelle and Anne Gerodolle


Employment

Since 2014 Research Associate Professor in the
Computer Science Department, University of Illinois at Urbana-Champaign.
2005-2014 Research Assistant Professor in the
Computer Science Department, University of Illinois at Urbana-Champaign.
2002-2005 Research scientist Computer Science Department, University of Illinois at Urbana-Champaign.
1999-2002 Visiting Scholar with the Computer Science Department, University of Illinois at Urbana-Champaign.
1993-2002 Lecturer,
Computer Science and Engineering Systems Department, Universidad de Zaragoza (Spain).
3/1993-9/1993 Co-Op Intern,
France Telecom Research and Development Center, Grenoble (France).
Study of VLSI routers for analog circuits


Awards and honors

2015 Best Poster IEEE Cluster 2015. Jon Calhoun, Marc Snir, Luke Olson and Maria Jesus Garzaran. Understanding the Propagation of Error Due to a Silent Data Corruption in a Sparse Matrix Vector Multiply.
2014 Distinguished Paper Award PLDI 2014. Wonsun Ahn, Jiho Choi, Thomas Shull, Maria Jesus Garzaran and Josep Torrellas. Improving JavaScript Performance by Deconstructing the Type System.
2012 Senior Member of the ACM
2003 Best Phd Thesis Award, Universidad de Zaragoza, Spain.
This award is given to the top Phd theses of the year at Universidad de Zaragoza.
1992 Erasmus Fellowship from the Universidad Politénica de Valencia, Spain.
1992 Bancaja Fellowship for studying abroad.


Publications

Books

Hardware Prefetch, Reduction Support and Speculative State Buffering, by María Jesús Garzarán. Published: 09/11/2010. Publisher: LAP Lambert Academic Publishing AG & Co KG. ISBN: 9783843365178.

Languages and Compilers for Parallel Computing - Lecture Notes in Computer Science / Theoretical Computer Science and General Issues v.5234, by María Jesús Garzarán, Paul Petersen, and Vikram Adve. Published: 04/08/2008. Publisher: Springer-Verlag Berlin and Heidelberg GmbH & Co. K. ISBN: 9783540852605.

Conference Proceedings, Journals, Book Chapters and Workshops

2017

IWOMP PDF ]
Taru Doodi, Joathan Peyton, Jim Cownie, María Jesús Garzarán, Rubasri Kalidas, Jeongnim Kim, Amrita Mathuriya, Terry Wilmarth, and Gengbin Zhen. OpenMP Runtime Instrumentation for Optimization. In the International Workshop on OpenMP, September 2017.

ISCA PDF ]
Jiho Choi, Thomas Shull, María Jesús Garzarán, and Josep Torrellas.In the International Symposium on Computer Architecture, June 2017.

2016

ParCo PDF ]
Andres Rodriguez, Angeles Navarro, Rafael Asenjo, Francisco Corbera, Antonio Vilches, and María Jesús Garzarán Pipeline Template for Streaming Applications on Heterogeneous Chips. Parallel Computing: On the Road to Exascale. IOS Press. Gerhard R Joubert, Hugh Leather, Mark Parsons, Frans Peters, Mark Sawyer (eds), pp. 327-336, 2016.

SBAC-PAD PDF ]
Luis Remis, María Jessús Garzarán, Rafael Asenjo, Angeles Navarro. Breath-First Search on Heterogeneous Platforms: A Case of Study on Social Networks. In the International Symposium on Computer Architecture and High Performance Computing, October 2016.

ICS PDF ]
Saeed Maleki, Donald Nguyen, Andrew Lenharth, Mariía Jessús Garzarán, David A. Padua, and Keshav Pingali. DSMR: A Parallel Algorithm for Single-Source Shortest Path Problem. In the International Conference on Supercomputing, June 2016.

TACO PDF ]
Buse Yilmaz, Baris Aktemur, María Jessús Garzarán, San Kamin, and Furkan Kirac. Autotuning Runtime Specialization for Sparse Matrix-Vector Multiplication. In the ACM Transactions on Architecture and Code Optimization (TACO), Volume 13 Issue 1, April 2016.

2015

Repara, part of ISPAPDF ]
Andres Rodriguez, Angeles Navarro, Rafael Asenjo, Francisco Corbera, Antonio Vilches, and María Jesús Garzará Pipeline Template for Streaming Applications on Heterogeneous Multi-Processing Architectures. In the First International Workshop on Reengineering for Parallelism on Heterogeneous Parallel Platforms, August 2015.

IEEE Tran. on Parallel and Distributed Systems PDF ]
Antonio Vilches, Angeles Navarro, Rafael Asenjo, Francisco Corbera, Rubén Gran, and María Jesús Garzarán. Mapping streaming applications on commodity multi-CPU and GPU on-chip processors. In the IEEE Transactions on Parallel and Distributed Systems, May 2015.

ICCS PDF ]
Antonio Vilches, Rafael Asenjo, Angeles Navarro, Francisco Corbera, Rubén Gran, and María Jesús Garzarán. Adaptive Partitioning of Irregular Applications on Heterogneous CPU-GPU Chips. In the International Conference on Computational Science, June 2015.

HIP3ES PDF ]
Francisco Corbera, Andrés Rodríguez, Rafael Asenjo, Angeles Navarro, Antonio Vilches, and María Jesús Garzarán. Reducing Overheads of Dynamic Scheduling on Heterogeneous Chips. In the High Performance Energy Efficient Embedded Systems, HiPEAC Conference, January, 2015.

TACO PDF ]
Xing Zhou, María Jesús Garzarán, and David Padua. Optimal Parallelogram Selection for Hierarchical Tiling. In the ACM Transactions on Architecture and Code Optimization (TACO), Volume 11, Issue 4, January 2015.

2014

SC PDF ]
Konstantinos Karantasis, Andrew Lenharth, Donald Nguyen, María Jesús Garzarán, and Keshav Pingali. Parallelization of Reordering Algorithms for Bandwidth and Wavefront Reduction. In the Proc. of the International Conference for High Performance Computing, Networking, Storage and Analysis, November 2014. Acceptance rate 20% (82/394).

SBAC-PAD PDF ]
Ruben Gran, August Shi, Ehsan Totoni, and María Jesús Garzarán. Evaluation of a Feature Tracking Vision Application on a Heterogeneous Chip. In the Proc. of the International Symposium on computer Architecture and High Performance Computing, October 2014. Acceptance rate 32% (43/132).

LCPC PDF ]
Swapnil Ghike, Ruben Gran, María Jesús Garzaráan, and David Padua. Directive-Based Compilers for GPUs. In the Proc. of the International Workshop on Languages and Compilers for Parallel Computing , September 2014.

GPCE PDF ]
Sam Kamin, María Jesús Garzarán, Baris Aktemur, Danqing Xu, buse Yilmaz, and Zhongbo Chen. Optimization by Runtime Specialization for Sparse Matrix-Vector Multiplication. In the Proc of the International Conference on Generative Programming: Concepts and Experience, September 2014. Acceptance rate 34% (16/47).

PLDI PDF ]
Wonsun Ahn, Jiho Choi, Thomas Shull, María Jesús Garzarán, and Josep Torrellas. Improving JavaScript Performance by Deconstructing the Type System. In the Proc. of the International Conference on Programming Language Design and Implementation, June 2014. Distinguished Paper Award. Acceptance rate 18% (52/287).

2013

TACO PDF ]
Ehsan Totoni, Mert Dikmen, and María Jesús Garzarán. Easy, Fast, and Energy-efficient Object Detection on Heterogeneous On-chip Architectures. In the ACM Transactions on Architecture and Code Optimization (TACO), Volume 10, Number 4, December 2013.

2012

PARCO PDF ]
Basilio Fraguela, Ganesh Bikshandi, Jia Guo, María Jesús Garzarán, David Padua, and Christoph von Praun. Optimization Techniques for Efficient HTA Programs. In Parallel Computing , Volume 38, Issue 9, September 2012, pages 465 - 484.

IPDPS PDF ]
Albert Sidelnik, Saeed Maleki, María Jesús Garzarán, David Padua, and Bradford L. Chamberlain. Performance Portability with the Chapel Language. In Proc. of the IEEE International Parallel and Distributed Processing Symposium, May 2012. Acceptance rate 21% (118/569).

CGO PDF ]
Xing Zhou, Jean Pierre Giacalone, María Jesús Garzarán, Robert H. Kuhn, Yang Ni, and David Padua. Hierarchical Overlapped Tiling. In Proc. of the International Symposium on Code Generation and Optimization, April 2012. Acceptance rate 28% (26/90).

2011

PACT PDF ]
Saeed Maleki, Yaoqing Gao, Maria J. Garzaran, Tommy Wong and David Padua. An Evaluation of Vectorizing Compilers. In Proc. of the International Conference on Parallel Architectures and Compilation Techniques, October 2011. Acceptance rate 16% (36/221).

LCTES PDF ]
Bruno Vilet, Xing Zhou, Jean Pierre Giacalone, Bob Kuhn, María Jesús Garzarán, and David Padua. Scheduling of Stream-Based Real-Time Applications for Heterogeneous Systems. In the Proc. of the Conference on Languages, Compilers, Tools and Theory for Embedded System, April 2011. Selected by the PC members as one of the best five papers of the conference. Acceptance rate 35% (17/48).

2010

LCPC PDF ]
James C. Brodman, G. Carl Evans, Murat Manguoglu, Ahmed Sameh, María Jesús Garzarán, and David Padua. A Parallel Numerical Solver Using Hierarchically Tiled Arrays. In the Proc. of the International Workshop on Languages and Compilers for Parallel Computing, October 2010. Acceptance rate 38% (18/47).

2009

SELSE PDF ]
Jing Yu and María Jesús Garzarán. A Detector for Harmful Errors. In IEEE Workshop on Silicon Errors in Logic - System Effects , March 2009.

HotPar PDF ]
James Brodman, Basilio Fraguela, María Jesús Garzarán, and David Padua. New Abstractions for Data Parallel Programming. In the first USENIX Workshop on Hot Topics in Parallelism (HotPar), March 2009.

GPGPU PDF ]
Albert Sidelnik, I-JUi Sung, Wanmin Wu, María Jesús Garzarán, Wen-mei Hwu, Klara Nahrstedt, David Padua, and Sanjay J. Patel. Optimization of Tele-Inmersion Codes. In the second Workshop on General-Purpose Computation on Graphics Processing Units, in conjunction with ASPLOS , March 2009.

CGO PDF ]
Jing Yu, María Jesús Garzarán, and Marc Snir. ESoftCheck: Removal of Non-vital Checks for Fault Tolerance. In Proc. of the International Symposium on Code Generation and Optimization, March 2009. Acceptance rate 37% (26/70).

2008

LCPC PDF ]
Alexandre Duchateau, Albert Sidelnik, María Jesús Garzarán, and David Padua. P-RAY: A Suite of Micro-benchmarks for Multi-core Architectures. In the Proc. of the International Workshop on Languages and Compilers for Parallel Computing, July 2008. Acceptance rate 52% (18/35).

SAMOS Workshop PDF ]
James Brodman, Basilio Fraguela, María Jesús Garzarán, and David Padua. Design Issues in Parallel Array Languages for Shared Memory. In the 8th International Workshop on Systems, Architectures, Modeling, and Simulation (SAMOS Workshop), July 2008.

NSF Next Generation Software PDF ]
Jing Yu, María Jesús Garzarán, and Marc Snir. Efficient Software Checking for Fault Tolerance. In the Next Generation Software Workshop, in conjunction with IPDPS, April 2008.

NSF Next Generation Software PDF ]
Brian A. Garber, Dan Hoeflinger, Xiaoming Li, María Jesús Garzarán, and David Padua. Generation of a Parallel Sorting Algorithm. In the Next Generation Software Workshop, in conjunction with IPDPS, April 2008.

PPoPP PDF ]
Jia Guo, Ganesh Bikshandi, Basilio Fraguela, María Jesús Garzarán, and David Padua. Programming with Tiles. In the Proc. of the International Symposium on Principles and Practice of Parallel Programming, 2008. Acceptance rate 25% (25/102).

2007

LCPC PDF ]
Jing Yu, María Jesús Garzarán, and Marc Snir. Techniques for Efficient Software Checking. In the Proc. of the International Workshop on Languages and Compilers for Parallel Computing, October 2007. Acceptance ratio 47% (23/49).

NSF Next Generation Software PDF ]
Xiaoming Li, María Jesús Garzarán, and David Padua. Optimizing Sorting with Machine Learning Algorithms. In the Next Generation Software Workshop, in conjunction with IPDPS, April 2007.

2006

LCPC PDF ][ PRESENTATION ]
Ganesh Bikshandi, Jia Guo, Christoph von Praun, Gabriel Tanase, Basilio B. Fraguela, María Jesús Garzarán, David Padua, and Lawrence Rauchwerger. Design and Use of htalib -- a library for Hierarchically Tiled Arrays. In the Proc. of the International Workshop on Languages and Compilers for Parallel Computing, November 2006. Acceptance rate 49% (24/49).

Handbook of Parallel Computing PDF ]
María Jesús Garzarán, Basilio B. Fraguela and David Padua. Array Constructs for Parallel Programming. Invited paper in Handbook of Parallel Computing: Models, Algorithms and Applications. Editors: Sanguthevar Rajasekaran and John Reif. To appear.

Science of Computer Programming PDF ]
Albert Cohen, Sebastien Donadio, María Jesús Garzarán, Cristoph Herrmann, Oleg Kiselyov, and David Padua. In search of a program generator to implement generic transformations for high-performance computing. Science of Computer Programming, Volume 62, Issue 1, pages 25-46, Septemter 2006. Special issue of the first MetaOcaml Workshop 2004.

NSF Next Generation Software PDF ]
Ganesh Bikshandi, Jia Guo, Daniel Hoeflinger, Gheorghe Almasi, Basilio Fraguela, María Jesús Garzarán, David Padua, and Christoph von Praun. Hierarchically Tiled Arrays for Parallelism and Locality. In the Workshop on Performance Engineering Technology and Research Sponsored under the NSF Next Generation Software Program, in conjunction with IPDPS, April 2006.

PPoPP PDF ]
Ganesh Bikshandi, Jia Guo, Daniel Hoeflinger, Gheorghe Almasi, Basilio Fraguela, María Jesús Garzarán, David Padua, and Christoph von Praun. Programming for Parallelism and Locality with Hierarchically Tiled. In the Proc. of the International Symposium on Principles and Practice of Parallel Programming, pages 48-57, March 2006. Acceptance ratio 27% (25/91).

2005

LCPC PDF ]
Xiaoming Li and María Jesús Garzarán. Optimizing Matrix Multiplication wit a Classifier Learning System. In the Proc. of the International Workshop on Languages and Compilers for Parallel Computing, October 2005.

LCPC PDF ]
Sebastien Donadio, James Brodman, Thomas Roeder, Kamen Yotov, Denis Barthou, Albert Cohen, María Jesús Garzarán, David Padua and Keshav Pingali. A Language for the Compact Representation of Multiples Program Versions. In the Proc. of the International Workshop on Languages and Compilers for Parallel Computing, October 2005.

LCPC PDF ]
Arkady Epshteyn, María Jesús Garzarán, Gerald Dejong, David Padua, Gang Ren, Xiaoming Li, Kamen Yotov and Keshav Pingali. Analytic Models and Empirical Search: A Hybrid Approach to Code Optimization. In the Proc. of the International Workshop on Languages and Compilers for Parallel Computing, October 2005.

ACM TACO PDF ]
María Jesús Garzarán, Milos Prvulovic, José María Llabería, Víctor Viñals, Lawrence Rauchwerger, and Josep Torrellas. Tradeoffs in Buffering Multi-Version Memory State for Speculative Thread-Level Parallelization in Multiprocessors. In the ACM Transactions on Architecture and Code Optimization (TACO), Volume 2, Number 3, pages 247 - 279, September 2005.

CGO PDF ]
Xiaoming Li, María Jesús Garzarán, and David Padua. Optimizing Sorting with Genetic Algorithms. In Proc. of the International Symposium on Code Generation and Optimization, pages 99-110, March 2005. Acceptance ratio 35% (26/75).

Proceedings of the IEEE PDF ]
Kamen Yotov, Xiaoming Li, Gang Ren, María Jesús Garzarán, David Padua, Keshav Pingali, and Paul Stodghill. Is Search Really Necessary to Generate High-Performance BLASs? In Proceedings of the IEEE, special issue on "Program Generation, Optimization, and Platform Adaptation", Volume 23, Number 2, pages 358 - 386, February 2005.

2004

LCR PDF ]
Basilio B. Fraguela, Jia Guo, Ganesh Bikshandi, María Jesús Garzarán, Gheorghe Almasi, Jose Moreira, and David Padua. The Hierarchically Tiled Arrays Programming Approach. In Proc. of Seventh Workshop on Languages, Compilers and Run-Time Support for Scalable Systems, October 2004.

Workshop MetaOCaml PDF ]
Albert Cohen, Sebastien Donadio, María Jesús Garzarán, Cristoph Herrmann, and David Padua. In Search for a Program Generator to Implement Generic Transformations for High-Performance Computing. In First MetaOCaml Workshop, October 2004.

LCPC PDF ]
Ganesh Bikshandi, Basilio B. Fraguela, Jia Guo, María Jesús Garzarán, Gheorghe Almasi, Jose Moreira, and David Padua. Implementation of Parallel Numerical Algorithms Using Hierarchically Tiled Arrays. In Proc. of the International Workshop on Languages and Compilers for Parallel Computing, September 2004. Also in Lecture Notes in Computer Science 3602. Editors: Rudolf Eigenmann, Zhiyuan Li and Samuel P. Midkiff, pages 87-101, Springer-Verlag, August 2005. ISBN 3-540-28009-X.

CGO PDF ]
Xiaoming Li, María Jesús Garzarán, and David Padua. A Dynamically Tuned Sorting Library. In Proc. of the International Symposium on Code Generation and Optimization, pages 111-124, March 2004. Acceptance rate 32% (25/79).

2003

LNCS PDF ]
María Jesús Garzarán, Milos Prvulovic, José María Llabería, Víctor Viñals, Lawrence Rauchwerger, and Josep Torrellas. Software Logging under Speculative Parallelization. Chapter in High Performance Memory Systems. Editors: Haldun Hadimioglu, David Kaeli, Jeffrey Kuskin, Ashwini Nanda, and Josep Torrellas, pages 181-193, Springer-Verlag, November 2003. ISBN 0-387-00310-X.

LCPC PDF ]
Jia Guo, María Jesús Garzarán, and David Padua. The Power of Belady's Algorithm in Register Allocation for Long Basic Blocks. In Proc. of the International Workshop on Languages and Compilers for Parallel Computing, October 2003. Also in Lecture Notes in Computer Science 2958. Editor: Lawrence Rauchwerger, pages 374-389, Springer-Verlag, 2004. ISBN 3-540-21199-3. Acceptance rate 73% (35/48).

PACT PDF ]
María Jesús Garzarán, Milos Prvulovic, José María Llabería, Víctor Viñals, Lawrence Rauchwerger, and Josep Torrellas. Using Software Logging to Support Multi-Version Buffering in Thread-Level Speculation. In Proc. of the International Conference on Parallel Architectures and Compilation Techniques, pages 170-181, September 2003. Acceptance rate 17%.

PLDI PDF ]
Kamen Yotov, Xiaoming Li, Gang Ren, Michael Cibulskis, Gerald DeJong, María Jesús Garzarán, David Padua, Keshav Pingali, Paul Stodghill, and Peng Wu. A Comparison of Empirical and Model-driven Optimization. In Proc. of the International Conference on Programming Language Design and Implementation, pages 63-76, June 2003. Acceptance rate 22%.

HPCA PDF ]
María Jesús Garzarán, Milos Prvulovic, José María Llabería, Víctor Viñals, Lawrence Rauchwerger, and Josep Torrellas. Tradeoffs in Buffering Multi-Version Memory State for Speculative Thread-Level Parallelization in Multiprocessors. In Proc. of the Int. Symp. on High-Performance Computer Architecture, pages 191-202, February 2003. Acceptance ratio 22%.

2002

NSF Next Generation Software PDF ]
F. Dang, María Jesús Garzarán, Milos Prvulovic, Ye Zhang, Alin Jula, Hao Yu, Nancy Amato, Lawrence Rauchwerger, and Josep Torrellas. SmartApps, an Application Centric Approach to High Performance Computing: Compiler-Assisted Software and Hardware Support for Reduction Operations. In Workshop on Performance Engineering Technology and Research Sponsored under the NSF Next Generation Software Program, in conjunction with IPDPS, April 2002.

2001

PACT PDF ]
María Jesús Garzarán, Milos Prvulovic, Ye Zhang, Alin Jula, Hao Yu, Lawrence Rauchwerger, and Josep Torrellas. Architectural Support for Parallel Reductions in Scalable Shared-Memory Multiprocessors.In Proc. of the International Conference on Parallel Architectures and Compilation Techniques, pages 243-254, September 2001. Acceptance rate 21%.

ISCA PDF ]
Milos Prvulovic, María Jesús Garzarán, Lawrence Rauchwerger, and Josep Torrellas. Architectural Bottlenecks to the Scalability of Speculative Parallelization. In Proc. of the 28th Annual Int. Symp. on Computer Architecture, pages 204-215, July 2001. Acceptance rate 15%.

WMPI PDF ]
María Jesús Garzarán, Milos Prvulovic, José María Llabería, Víctor Viñals, Lawrence Rauchwerger, and Josep Torrellas. Software Logging under Speculative Parallelization. In Workshop on Memory Performance Issueshold in conjunction with ISCA, July 2001. An Extended version of this paper appears in a chapter of the Lecture Notes of Computer Science series.

Euro-PDP PDF ]
María Jesús Garzarán, José Luis Briz, Pablo Ibáñez, and Víctor Viñals. Hardware Prefetching in Bus-Based Multiprocessors: Pattern Characterization and Cost-Effective Hardware. In Proc. of the Euromicro Workshop on Parallel and Distributed Processing , pages 345-354, February 2001. Acceptance rate 40%.

1999

JPAR PDF ]
María Jesús Garzarán, José Luis Briz, Pablo Ibáñez, and Víctor Viñals. Hardware Prefetching in Bus-Based Multiprocessors: Pattern Characterization and Cost-Effective Hardware. In IX Jornadas de Paralelismo, Spain. September 1999.

1998

ICS PDF ]
Pablo Ibáñez, Víctor Viñals, José Luis Briz, María Jesús Garzarán. Characterization and Improvement of Load/Store Cache-based Prefetching. In International Conference on Supercomputing, pages 369-376, July 1998. Acceptance rate 47%.

1997

JPAR PDF ]
María Jesús Garzarán, Víctor Viñals, José Luis Briz, and Alfredo Orio. Caracterización del Tráfico en Protocolos de Coherencia Snoopy. In VIII Jornadas de Paralelismo, Spain. September 1997.

Technical Reports

DIIS TR RR-02-04
María Jesús Garzarán, Milos Prvulovic, José María Llabería, Víctor Viñals, Lawrence Rauchwerger, and Josep Torrellas. Software Logging for Multi-version Buffering under Speculative Parallelization. DIIS Technical Report RR-02-04. University of Zaragoza (SPAIN), March 2002.

CSRD TR 1581
María Jesús Garzarán, Milos Prvulovic, Joséa Marí Llabería, Víctor Viñals, Lawrence Rauchwerger, and Josep Torrellas. Buffering State with Software Logging in Scalable Speculative Parallelization. CSRD Technical Report 1581. University of Illinois, July 2000.

CSRD TR 1582
Ye Zhang, Milos Prvulovic, María Jesús Garzarán, Lawrence Rauchwerger, and Josep Torrellas. A Framework for Speculative Parallelization in Distributed Shared-Memory Multiprocessors. CSRD Technical Report 1582. University of Illinois, July 1999.


Teaching

At the Computer Science Department at the University of Illinois at Urbana-Champaign.
  • Undergraduate Courses
  • Fall 10 CS 231: Computer Architecture I
    Fall 09 CS 231: Computer Architecture I
    Spring 09 CS 231: Computer Architecture I
    Fall 08 CS 232: Computer Architecture II
    Spring 08 CS 231: Computer Architecture I
  • Graduate Courses
    Spring 10 CS 498: Program Optimization.
    Fall 07 CS 498: Program Optimization. This course counts on INTEL experts Paul Petersen and Arch Robison to cover a few lectures on performance tools and parallel programming.
    Fall 06 CS 498: Program Optimization
    Fall 05 CS 498: Program Optimization
    At the Computer Science and Engineering Systems Department , at Universidad de Zaragoza, Spain
  • Graduate Courses
    Spring 95,96,97,98,99,01,02 Computer Networks. Computer Science Master Program
    Spring 98,99 Architecture and Microprocessor Technology. Computer Science and Engineering Systems PhD Program
  • Undergraduate Courses
    Spring 01,02 Computer Architecture-I
    Spring 01,02 Computer Architecture-I
    Fall 95,96,97,98,00,01 Communication Networks for Computers
    Spring 95,96,97,98 Introduction to Computer Networks
    Fall 98 Computer Architecture for Engineers
    Fall 98 Parallel architectures Laboratory
    Fall 94 Computer Architecture Laboratory
    Spring and Fall 94 Programming Introduction and Laboratory
    Spring and Fall 94 Computer Architecture for engineers


    Senior Projects Supervised
    (At the Computer Science and Engineering Systems Department , Universidad de Zaragoza, Spain)

    • ATM by Satellite. Luis Montesano del Campo. February 1999.
    • Simulation and Behavior of Coherence Protocols. Alfredo Orio. July 1998.
    • Study of the Consistency Implementation in http through Invalidation Using IP Multicast. Jorge Bernad Pelegrin. December 1997.
    • Investigation of the UPC (Usage Parameter Control) in ATM. Marta Esteva. September 1997.


    Other Instructional Activities

    Preliminary Examination Committees
    • Xiaoming Li (2005)
    • Ganesh Bikshandi (2005)
    • Jia Guo (2006)
    • Jing Yu (2007)
    • James Brodman(2009)
    • Aaron Becker (2011)
    • Alexandre Duchateau (2011)
    • Osman Sarood (2012)
    • Albert Sidelnik (2012)
    • Xing Zhou (2012)
    • Ehsan Totoni (2013)
    • Saeed Maleki (2014)


    Short Courses and Tutorials.

    • Short course (20 hours) on "Program Optimization", at Universidad de Zaragoza, Spain, June 2006.
    • UPCRC Illinois Summer School on Multicore Programming, at University of Illinois at Ubana-Champaign, June 2009. Support for data parallelism through language Ct and Implicit Parallelism.
    • UPCRC Illionis Summer School on Multicore Programming, at University of Illinois at Urbana-Champaign, July 2010. Course on Vectorization.
    • Tutorial on Program Optimization through Loop Vectorization:
      • Supercomputing, November 2010. New Orleans, Luisiana.
      • Code Generation Optimization (CGO), April 2011. Chamonix, France.
      • Program Language Design and Implementation (PLDI), June 2011. San Jose, California.
      • Short course (20 hours) on Multicore programmig, at Universidad de Zaragoza, Spain, July 2013.


    Graduate Students

    PhD students advised or co-advised
    • Jing Yu, 2008.
      First Job: Google.
      Thesis:"Effective Software Checking for Fault Tolerance".
    • James Brodman, 2010.
      First Job: Intel.
      Thesis:"Data Parallelism with Hierarchially Tiled Objects".
    • Xing Zhou, 2013
      Firt Job: Google.
      Thesis: "Tiling Optimization for Stencil Computations".
    • Albert Sidelnik, 2013.
      First Job: NVidia.
      Thesis: "Compilation Techniques and Language Support to Facilitate Dependence-Driven Computation".
    • Saeed Maleki, 2015.
      First Job: Microsoft Research.
      Thesis: "Communication Avoiding Algorithms for Amorphous Problems".
    Master students advised or o-advised:
    • Brian Garber (2006)
      Thesis: "The Necessity of Tuning To Achieve Top Performance Parallel Sorting Algorithms".
    • Dan Hoeflinger (2008)
      Thesis: "Automatic Tuning of a Sorting Library for Multicore Systems".
    • Swapnil Ghike (2012)
      Thesis: "Effectiveness of Program Transformations and Compilers for Directive-based GPU Programming Models".
    • Danqing Xu (2014)
      Thesis: "Optimization by Runtime Specialization for Sparse Matrix-Vector Multiplication".
    • Luis Remis (2016)
      Thesis: "Breadth-first Search for Social Network Graphs on Heterogeneous Platforms
    PostDocs
    • Konstantinos Karantasis.


    Research funding

    2015

    • $600K NSF lead PI: David Padua. num Pis from UIUC: 2. Title: Advancing Autovectorization

    2013

    • $500K NSF lead PI: Maria J. Garzaran. num Pis from UIUC: 2. Title: Scripting at the Speed of C.

    2011

    • $1,052 K NSF lead PI: David Padua. num Pis from UIUC: 2. Title: Kali: A System for Sequential Programming of Multicore Processors.

    2010

    • $486K NSF SHF lead PI: Sam Kamin. num Pis from UIUC: 3 (Maria J. Garzaran and Vikram Adve). Title: Run-Time Program Generation and Empirical Optimization.
    • NSF Passionate on Parallel Research Experiences for Undergraduates

    2007

    • Intel and Microsoft Universal Parallel Computing Research Center
    • $900K NSF CSR-AES lead PI: Josep Torrelas. num Pis from UIUC: 3 (Maria J. Garzaran and David Padua). Title: Novel Programming Models and Architectures to Simplify Parallel Programming.
    • $300K NSF UIUC-Texas A&M. PI: David Padua. num Pis from UIUC: 2 (Maria J. Garzaran). Collaborative Research: Next Generation Compiler for Emerging Multicore Systems

    2006

    • $212K NSF CSR-AES UIUC-Texas A&M, lead PI: Maria J. Garzaran, num Pis from UIUC: 1. Title: SoftCheck: Compiler and Run-Time Technology for Efficient Fault Detection and Correction in Low nm-Scale Multicore Chips.

    2005

    • $800K NSF CSR-AES UIUC-Cornell, lead PI: David Padua, num Pis from UIUC: 5 (Maria J. Garzaran, Luddy Harrison, Jiawei Han, and Gerald DeJong). Title: Library Generation for Advanced Execution Systems.
    • $12 K cash + $21 K equipment, INTEL. Pis: Maria J. Garzaran and David Padua. Title: Library Generation.

    2003

    • $14K, UIUC-CNRS, lead Pi: David Padua. Num pis from UIUC:3 (Maria J. Garzaran and Josep Torrellas). Title: Program Optimization.
    • $61K equipment, INTEL. Pis: Maria J. Garzaran and David Padua. Title: Library Generation.


    Invited talks

    How Intel is Enabling MPI for Current and Future Architectures,

    • EuroMPI, Chicago, September 2017.
    Performance-energy Aware Mapping of Streaming Applications on Heterogeneous Chips

    • Intel, Santa Clara, April 2014.
    • Huawei, Santa Clara, April 2014.
    • Qualcomm, Santa Clara, April 2014.
    • NVidia, Santa Clara, April 2014.
    Optimization of by Run-time Specialization for Sparse Matrix-Vector Multiplication

    • Fifth Workshop of the Joint Laboratory for Petascale Computing, Champaign, November 2013.
    Programming with Tiles

    • At Department of Computer Science, University of Chicago, June 2013
    Input-Dependent Autotuning

    • At School of Computing, University of Utah. April 2013.
    • At School of Electrical and Computing Engineering, Purdue University. April 2013.
    • At Computer Architecture Department, Universitat Politecnica de Catalunya. May 2013.
    An Evaluation of Vectorizing Compilers

    • At Computer Science and Engineering, Universidad de Zaragoza, Spain, July 2012.
    Abstractions for Parallel Programming

    Autotuning

    • Autotuning, UPCRC Intel-Microsoft seminar, December 2008.
    Library Generators for Parallel Machines

    A Memory Hierarchy Conscious and Self-tunable Sorting Library

    Tradeoffs in Buffering Multi-Version Memory State for Speculative Thread-Level Parallelization in Multiprocessors

    Buffering State with Software Logging in Scalable Speculative Parallelization


    Conference and workshop presentations

    • Easy, Fast, and Energy-efficient Object Detection on Heterogeneous On-chip Architectures. High-Performance Embedded Architectures and Compilers (HiPEAC), January 2014

    • Programming for Locality and Parallelism with Hierarchically Tiled Arrays. MiniSymposium on New Abstractions for Linear Algebra for Parallel Architectures, in conjunction with the 14th SIAM Conference on Parallel Processing for Scientific Computing, Seattle, February 2010.

    • A Detector for Harmful Errors
      IEEE Workshop on Silicon Errors in Logic - System Effects (SELSE), San Francisco, March 2009.

    • Software Checking for Fault Tolerance
      Next Generation Software Workshop, concurrently with the IEEE International Parallel and Distributed Processing Symposium (IPDPS), Miami, April 2008

    • Adaptive Sorting.
      Workshop on Automatic Tuning of Libraries and Applications, concurrently with High Performance Computer Science Week (HPCSW), Denver, Colorado, April 2008

    • Programming for Parallelism and Locality with Hierarchically Tiled Arrays.
      Meeting of the Midwest Society for Programming Languages and Systems (MSPLS), University of Illinois at Urbana-Champaign, April 2006.

    • Optimizing Sorting with Genetic Algorithms.
      Workshop on Compilers for Parallel Computers (CPC), La Coruña, January 2006.

    • Using Software Logging to Support Multi-Version Buffering in Thread-Level Speculation.
      Int. Conf. on Parallel Architectures and Compilation Techniques (PACT), New Orleans, September 2003

    • Tradeoffs in Buffering Multi-Version Memory State for Speculative Thread-Level Parallelization in Multiprocessors.
      Int. Symp. on High-Performance Computer Architecture (HPCA), Anaheim, February 2003.

    • Architectural Support for Parallel Reductions in Scalable Shared Memory Multiprocessors.
      Int. Conf. on Parallel Architectures and Compilation Techniques (PACT), Barcelona, September 2001.

    • Software Logging under Speculative Parallelization.
      Workshop on Memory Performance Issues (WMPI) concurrently with Intl. Symp. on Computer Architecture, Gothenburg, Sweden, June 2001.

    • Hardware Prefetching in Bus-Based Multiprocessors: Pattern Characterization and Cost-Effective Hardware.
      Euromicro Workhop on Parallel and Distributed Processing (Euro-PDP01), Mántova, Italy, February 2001.

    • Prefetching in Bus-Based Multiprocessors: Pattern Characterization and Cost-Effective Hardware.
      IX Jornadas de Paralelismo (JPAR), Murcia, Spain, September, 1999.

    • Caracterización del Tráfico en Protocolos de Coherencia Snoopy.
      VII Jornadas de Paralelismo (JPAR) , Cáceres, Spain, September 1997.


    Departmental service

  • Departmental committees:
    • Industrial Affiliates Committee 2005.


    By-invitation Workshops

    • Adaptive Library Workshop I organized by Intel, Chicago, September 2005.

    • Adaptive Library Workshop II organized by Intel, Oregon, April 2006.


    Seminar Organization


    Workshop Organization


    Conference Organization

    Program Chair
    • EuroPar 17 Global Chair of Topic 8: "Parallel and distributed programming, interfaces and languages".
    • SC 14, Program Co-Chair (Area of Programming Systems), Supercomputing.

    Program Committee Member
    • PACT 2013, 2015, 2016, 2017, and 2018, International Conference on Parallel Architectures and Compilation Techniques.

    • CC 2016, International Conference on Compiler Construction.

    • ASPLOS 2016, International Conference on Architectural Support for Programming Languages and Operating Systems.

    • SC 2015, Supercomputing, Area of Programming Systems.

    • ICS 2015, International Conference on Supercomputing.

    • PPoPP 2015, 2017, International Symposium on Principles and Practices of Parallel Programming.

    • HiPEAC 2014, 2015, International Conference on High-Performance and Embedded Architectures and Compilers.

    • SBAC-PAD 2013, and 2014, International Symposium on Computer Architecture and High Performance Computing.

    • IPDPS 2007, 2009, 2013, 2014, and 2015: International Parallel & Distributed Processing Symposium.

    • HiPC 2013, International Conference on High Performance Computing.

    • CGO 2012 and 2018, International Conference on Code Generation and Optimization.

    • PMEA 2011, International Workshop on Programming Moels for Emergins Architectures (PMEA 2011), in conjunction with PACT 2011.

    • IWOMP 2011, International Workshop on OpenMP.

    • WEHA 2010, Workshop on Exploitation of Hardware Accelerators, in conjunction with the International Conference on High Performance Computing and Simulation (HPCS 2010).

    • Automated Program Generation for Computational Science 2010, in conjunction with International Conference on Computational Science (ICCS).

    • MULTIPROG 2010: Workshop on Programmability Issues for Multi-Core Computers, in conjunction with the High-Performance and Embedded Architectures and Compilers (HiPEAC).

    • SMART 2010: Workshop on Statistical and Machine learning approaches to ARchitecture and compilaTion.

    • Micro 2009: IEEE/ACM International Symposium on Microarchitecture

    • HotPar 2009: Workshop on Hot Topics in Parallelism

    • iWAPT 2009: International Workshop on Automatic Performance Tuning.

    • ICSOFT 2008: International Conference on Software and Data Technologies.

    • STMCS 2007: Workshop on Software Tools for Multi-Core Systems, in conjunction with CGO.

    • HiPC 2007 and 2013: International Conference on High Performance Computing.

    • LCPC 2006, 2007, 2008, and 2009: International Workshop on Languages and Compilers for Parallel Computing.

    • HPCC 2006: Conference on High Performance Computing and Communications.
    Others
    • CGO 2011: Publications and Students Chair for International Conference on Code Generation and Optimization
    • CGO 2012: Judge of the ACM Student Research Competition, CGO 2012.
    • PPoPP 2016: Publications Chair for International Symposium on Principles and Practice of Parallel Programming.


    Other Professional Service

    • Participant in NSF Proposal Evaluation Panel, October 2006, October 2008, March 2009, February 2011, March 2011, May 2013, April 2016.
    • Editorial Board Member for the Encyclopedia on Parallel Computing with Springer Verlag.


    • External Reviewer Committee Member for
      • PLDI 2014: International Conference on Programming Language Design and Implementation.

      • PPoPP 2012, 2013, and 2014: International Symposium on Principles and Practice of Parallel Programming.

      • ASPLOS 2012, 2014, 2015, and 2017: International conference on Architectural Support for Programming Languages and Operating Systems.

    • Reviewer for
      • Microprocessor and Microsystems 2010: Microprocessors and Microsystems, Elsevier.

      • PPoPP 2005, 2006, 2010, 2011: International Symposium on Principles and Practice of Parallel Programming.

      • HiPEAC 2010: International Confere on High-Performance Embedded Architectuers and Compilers.

      • CGO 2007, 2008: International Conference on Code Generation and Optimization

      • CC 2006, 2009, 2011: Journal on Concurrency and Computation: Practice and Experience

      • PACT 2003, 2005, 2006: International Conference on Parallel Architectures and Compilation Techniques

      • ICS 2003, 2005: International Conference on Supercomputing

      • Euro-Par 2005

      • TPDS 2003, 2004, 2007, 2008, 2010, 2011: IEEE Transactions on Parallel and Distributed Systems

      • JPDC 2003, 2006, 2011: Journal of Parallel and Distributed Computing

      • HPCA 2001, 2002, and 2003: International Symposium on High Performance Computer Architecture

      • IPDPS 2002, 2003, and 2006 : International Parallel and Distributed Processing Symposium.

      • ICPP 2000, and 2002: International Conference on Parallel Processing

      • ISCA 2001: International Symposium on Computer Architecture