Didem Unat joined Koç University in September 2014 as a full time faculty. Previously she was at the Lawrence Berkeley National Laboratory and worked at the Exascale Combustion Co-design center. She is the recipient of the prestigious Luis Alvarez Fellowship in 2012 at the Berkeley Lab.
Her research interest lies primarily in the area of high performance computing, parallel programming models, compiler analysis and performance modeling. She is currently working on designing and evaluating programming models for state-of-the-art computer architectures. She received her Ph.D under Prof. Scott B. Baden's research group at University of California-San Diego. In her thesis, she developed the Mint programming model and its source-to-source compiler to facilitate GPGPU programming. She holds a B.S in computer engineering from Boğaziçi University.
Weiqun Zhang, Ann Almgren, Marcus Day, Tan Nguyen, John Shalf, Didem Unat, "BoxLib with Tiling: An AMR Software Framework", SIAM Journal on Scientific Computing, 2016,
D Unat, C Chan, W Zhang, S Williams, J Bachan, J Bell, J Shalf, "ExaSAT: An exascale co-design tool for performance modeling", International Journal of High Performance Computing Applications, January 2015, 29:209--232, doi: 10.1177/1094342014568690
- Download File: International-Journal-of-High-Performance-Computing-Applications-2015-Unat-209-32.pdf (pdf: 4.3 MB)
Han Suk Kim, Didem Unat, Scott Baden, Jurgen Schulze, "A new approach to interactive viewpoint selection for volume data sets", Information Visualization, February 25, 2013, doi: 10.1177/1473871612467631
Mitesh Meswani, Laura Carrington, Didem Unat, Allan Snavely, Scott Baden, Stephen Poole, "Modeling and predicting performance of high performance computing applications on hardware accelerators", International Journal of High Performance Computing Applications, December 28, 2012,
Jun Zhou, Didem Unat, Dong Ju Choi, Clark C. Guest, Yifeng Cui, "Hands-on Performance Tuning of 3D Finite Difference Earthquake Simulation on GPU Fermi Chipset", Procedia CS, 2012, Vol 9:976-985,
Didem Unat, Jun Zhou, Yifeng Cui, Scott B. Baden, Xing Cai, "Accelerating a 3D Finite Difference Earthquake Simulation with a C-to-CUDA Translator", Computing in Science and Engineering, May 2012, Vol 14:48-59,
T Nguyen, D Unat, W Zhang, A Almgren, N Farooqi, J Shalf, "Perilla: Metadata-Based Optimizations of an Asynchronous Runtime for Adaptive Mesh Refinement", International Conference for High Performance Computing, Networking, Storage and Analysis, SC, January 1, 2017, 945--956, doi: 10.1109/SC.2016.80
D Unat, T Nguyen, W Zhang, MN Farooqi, B Bastem, G Michelogiannakis, A Almgren, J Shalf, "TiDA: High-level programming abstractions for data locality management", Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), January 2016, 9697:116--135, doi: 10.1007/978-3-319-41321-1_7
J.A. Ang, R.F. Barrett, R.E. Benner, D. Burke, C. Chan, D. Donofrio, S.D. Hammond, K.S. Hemmert, S.M. Kelly, H. Le, V.J. Leung, D.R. Resnick, A.F. Rodrigues, J. Shalf, D. Stark, D. Unat, N.J. Wright, "Abstract Machine Models and Proxy Architectures for Exascale Computing", 2014 Hardware-Software Co-Design for High Performance Computing, November 17, 2014,
- Download File: CALAbstractMachineModelsv1.1.pdf (pdf: 2.4 MB)
Cy Chan, Didem Unat, Michael Lijewski, Weiqun Zhang, John Bell, John Shalf, "Software Design Space Exploration for Exascale Combustion Co-Design", International Supercomputing Conference (ISC), Leipzig, Germany, June 16, 2013,
- Download File: isc13-exasat.pdf (pdf: 1.5 MB)
D Unat, CP Chan, W Zhang, J Bell, J Shalf, "Tiling as a Durable Abstraction for Parallelism and Data Locality", WOLFHPC 2013 - SC13 Workshop on Domain-Specific Languages and High-Level Frameworks for High-Performance Computing, 2013,
Cy Chan, Joseph Kenny, Gilbert Hendry, Didem Unat, Vincent Beckner, John Bell and John Shalf,, "An AMR Computation and Communication Dependency and Analysis Methodology", IA^3 2013 - SC13 Workshop on Irregular Applications: Architectures and Algorithms, Denver, CO, January 1, 2013,
- Download File: Chan-IA3-13.pdf (pdf: 488 KB)
Mitesh R. Meswani, Laura Carrington, Didem Unat, Allan Snavely, Scott B. Baden, Stephen Poole, "Modeling and Predicting Performance of High Performance Computing Applications on Hardware Accelerators (workshop version)", IPDPS Workshops, IEEE Computer Society, 2012,
Han Suk Kim, Didem Unat, Scott B. Baden, Jürgen P. Schulze, "Interactive Data-centric Viewpoint Selection", Visualization and Data Analysis, Proc. SPIE 8294, January 2012,
Mitesh R. Meswani, Laura Carrington, Didem Unat, Joshua Peraza, Allan Snavely, Scott Baden, Stephen Poole, "Modeling and Predicting Application Performance on Hardware Accelerators", International Symposium on Workload Characterization (IISWC), IEEE, November 2011,
Didem Unat, Xing Cai, Scott B. Baden, "Mint: realizing CUDA performance in 3D stencil methods with annotated C", ICS '11 Proceedings of the international conference on Supercomputing, ACM, June 2011, 214-224, doi: 10.1145/1995896.1995932
Didem Unat, Theodore Hromadka III, Scott B. Baden, "An Adaptive Sub-sampling Method for In-memory Compression of Scientific Data", DCC, IEEE Computer Society, 2009,
Didem Unat, George Michelogiannakis, John Shalf, The Role of Modeling in Locality Optimizations, Modeling and simulation workshop (MODSIM), August 2014,
- Download File: modsim2014.pdf (pdf: 1.6 MB)
Adrian Tate, Amir Kamil, Anshu Dubey, Armin Größlinger, Brad Chamberlain, Brice Goglin, Carter Edwards, Chris J. Newburn, David Padua, Didem Unat, Emmanuel Jeannot, Frank Hannig, Gysi Tobias, Hatem Ltaief, James Sexton, Jesus Labarta, John Shalf, Karl Fuerlinger, Kathryn O’Brien, Leonidas Linardakis, Maciej Besta, Marie-Christine Sawley, Mark Abraham, Mauro Bianco, Miquel Pericàs, Naoya Maruyama, Paul Kelly, Peter Messmer, Robert B. Ross, Romain Cledat, Satoshi Matsuoka, Thomas Schulthess, Torsten Hoefler, Vitus Leung, "Programming Abstractions for Data Locality", 2014 Workshop on Programming Abstractions for Data Locality, April 29, 2014,
The goal of the workshop and this report is to identify common themes and standardize concepts for locality-preserving abstractions for exascale programming models. Current software tools are built on the premise that computing is the most expensive component, we are rapidly moving to an era that computing is cheap and massively parallel while data movement dominates energy and performance costs. In order to respond to exascale systems (the next generation of high performance computing systems), the scientific computing community needs to refactor their applications to align with the emerging data-centric paradigm. Our applications must be evolved to express information about data locality. Unfortunately current programming environments offer few ways to do so. They ignore the incurred cost of communication and simply rely on the hardware cache coherency to virtualize data movement. With the increasing importance of task-level parallelism on future systems, task models have to support constructs that express data locality and affinity. At the system level, communication libraries implicitly assume all the processing elements are equidistant to each other. In order to take advantage of emerging technologies, application developers need a set of programming abstractions to describe data locality for the new computing ecosystem. The new programming paradigm should be more data centric and allow to describe how to decompose and how to layout data in the memory.
Fortunately, there are many emerging concepts such as constructs for tiling, data layout, array views, task and thread affinity, and topology aware communication libraries for managing data locality. There is an opportunity to identify commonalities in strategy to enable us to combine the best of these concepts to develop a comprehensive approach to expressing and managing data locality on exascale programming systems. These programming model abstractions can expose crucial information about data locality to the compiler and runtime system to enable performance-portable code. The research question is to identify the right level of abstraction, which includes techniques that range from template libraries all the way to completely new languages to achieve this goal.