William Killian
Parallel Runtimes — Performance Portability — Machine Learning
Ph.D. student at the University of Delaware
Advised by John Cavazos
Collaborator at LLNL
Contributor to RAJA
Mentor at OLCF GPU Hackathons
Teaching
Spring 2017 (Teaching Assistant)
Course Information
Name | CISC 372 – Parallel Computing |
Professor | Dr. James Atlas |
Lecture | Monday and Wednesday 15:35–16:50 |
Room | Gore Hall Room 204 |
Webpage | Course Webpage is accessible through Sakai |
Machine | The course machine is only accessible from the CIS network. This command should work from anywhere to access the machine. |
Contact Information
killian+cisc372@udel.edu | |
Office Hours | Wednesday 13:00–14:00 and Thursday 16:00–17:00 |
Office | Smith Hall Room 201 |
Research
Topics
Autotuning
Directive-Based Languages
Vectorization
Publications
-
[PAPER] R. Searles, L. Xu, W. Killian, T. Vanderbruggen, T. Forren, J. Howe, Z. Pearson, C. Shannon, J. Simmons, and J. Cavazos, “Parallelization of Machine Learning Applied to Call Graphs of Binaries for Malware Detection,” 25th Euromicro International Conference on Parallel, Distributed, and Network-Based Processing (PDP 2017) – St. Petersburg, Russia, 2017.
-
[POSTER] W. Killian, A. Kunen, I. Karlin, J. Cavazos, “Discovering Optimal Execution Policies in KRIPKE using RAJA,” ACM Student Poster Competition, 28th International Conference for High Performance Computing, Networking, Storage and Analysis – Salt Lake City UT, 2016.
-
[POSTER] W. Killian, G. Zagaris, B. Ryujin, B. Pudliner, J. Cavazos, “Portable Performance of Large-Scale Physics Applications: Toward Targeting Heterogeneous Exascale Architectures Through Application Fitting,” ACM Student Poster Competition, 27th International Conference for High Performance Computing, Networking, Storage and Analysis – Austin TX, 2015.
-
[PHD PRELIM] W. Killian, J. Cavazos, “Using Graph-Based Characterization for Predictive Modeling of Vectorizable Loop Nests,” University of Delaware – Newark DE, 2015.
-
[WHITEPAPER] W. Killian, R. Miceli, E. Park, M. Alvarez Vega, J. Cavazos, “Performance Improvement in Kernels by Guiding Compiler Auto-Vectorization Heuristics,” Partnership for Advanced Computing in Europe (PRACE) Performance Prediction, 2014.
-
[POSTER] W. Killian, W. Wang, E. Park, J. Cavazos, “Energy Tuning of Polyhedral Kernels on Multicore and Many-Core Architectures,” at SEAK: DAC Workshop on Suite of Embedded Applications and Kernels, SEAK 2014, San Francisco, CA, USA, 2014.
-
[WORKSHOP] S. Grauer-Gray, W. Killian, R. Searles, and J. Cavazos, “Accelerating Financial Applications on the GPU,” in Proceedings of the 6th Workshop on General Purpose Processor Using Graphics Processing Units, GPGPU-6, (New York, NY, USA), pp. 127–136, ACM, 2013.
Projects
I have an awesome Github page.
FinanceBench
This project contains codes for Black-Scholes, Monte-Carlo, Bonds, and Repo financial applications which can be run on the CPU and GPU. All original algorithms were ported from QuantLib to CUDA, OpenCL, HMPP, and OpenACC. We showed that certain algorithms were able to achieve several hundred times speedup over sequential CPU.
PolyBench/ACC
PolyBench is a collection of benchmarks containing static control parts. The purpose is to uniformize the execution and monitoring of kernels, typically used in past and current publications. PolyBench/ACC originated from Pouchet's original PolyBench/C suite. We added CUDA, OpenCL, OpenACC, HMPP, and OpenMP versions of the original code.
RAJA Portability Layer
RAJA is a collection of C++ software abstractions, being developed at Lawrence Livermore National Laboratory (LLNL), that enable architecture portability for HPC applications.
PolyBench/RAJA
PolyBench/RAJA originated from Pouchet's original PolyBench/C suite. All Polybench kernels have been converted to use the RAJA portability layer.
Education
University of Delaware
Ph.D. Computer and Information Science — 2017 (est)
M.S. Computer and Information Science — 2013
- Courses for MS Degree
- Logic
- Algorithms
- Computer Architecture
- Computer Networks II
- Advanced Compiler Construction
- Advanced Software Engineering
- Advanced Parallel Programming
- Text Analysis in Software Engineering
- Wireless Networks and Mobile Computing
- Additional Coursework
- Computer Graphics
- Machine Learning
- Databases
- Applications of Financial Technology
- HPC Data Analytics
- Formal Methods of HPC
Millersville University
B.S. Computer Science — 2011
- Research Projects
- 3-D physics simulation
- Investigating parallel programming
- Efficient rendering of BSP maps
- Image classification using machine learning
- List of Advanced Courses
- Computer Graphics
- Computer Networks
- Topics: Mobile Programming
- Software Engineering
- Artificial Intelligence
- Database Management Systems
- Parallel Programming
Resources
C++ References
Presentations
October 2015 | ACM Tech Talk: Using the Command Line |
January 2015 | Using Graph-Based Characterization for Predictive Modeling of Vectorizable Loop Nests |
May 2014 | Parallelizing Prefix Sums |
March 2013 | Accelerating Financial Applications on the GPU |
Spring 2013 | An Introduction to OpenACC |