long read pipeline

Accelerating Long-Read Genome Sequencing

Advisors: Satish Narayanasamy
Sep 2019 - Present

My lab at the University of Michigan focuses on cutting-edge hardware acceleration, but they have recently shifted into the field of bioinformatics and genome sequencing, an area which I'm thrilled to be working in! Hopefully I'll have some more updates to share within the next year or so, in the form of conference publications!

Image from
qemu-xen-openxt image

Hypervisor vTPM Integration

Advisors: Paul Mogren and Rich Turner
May - Aug 2019

During my internship at Assured Information Security (AIS) I worked with Danika Gaviola and Jason Rising on integrating a virtual Trusted Platform Module (vTPM) into OpenXT in order to provide virtual machines (VMs) the same security guarantees as a physical TPM would provide. A TPM is a secure cryptoprocessor most frequently used to verify machine state at each stage of the boot process. OpenXT is a security-enhanced fork of Xen which uses QEMU internally for peripheral device emulation. In addition to successfully providing TPM 2.0 for Linux VMs in OpenXT, we modified the Xen Project so that it could use TPM 2.0 and provide TPMs to Windows virtual machines.

Using ConvNets for Robust Swipe Pressure Detection

Advisors: Sean and Natasha Banerjee
Sep - Dec 2018

This research constitutes my Clarkson Honors Thesis, which extends my previous work on using thermal cameras to reliably detect swipe pressure. I explored using convolutional neural networks to perform action classification, and found that the best results were obtained by training ConvNets on video frames with the user's hand removed, using filtering techniques designed previously.

Honors Thesis: T. Dunn, “Detection of Swipe Pressure using a Thermal Camera and ConvNets for Natural Surface Interaction”, Clarkson University Honors Program. Potsdam, New York, 2018.

Parallel Semidefinite Optimization

Advisor: Daniel Thuerck
May - Aug 2018

During my internship at TU Darmstadt I worked on extending an existing solver for linear optimization programs to perform semidefinite optimization. The most challenging obstacle I overcame involved computing the product of multiple large sparse matrices without storing any intermediate results. Each element in the resulting matrix could be computed individually due to certain matrix properties, and the process is shown in the image above.

User-Independent Detection of Swipe Pressure Using Thermal Cameras

Advisors: Sean and Natasha Banerjee
Jan - May 2018

The goal of this research was to improve the capabilities of current augmented reality systems and projective touchscreens by detecting the pressure at which a user interacts with objects using a thermal camera. The main challenge in developing such a classifier was in removing the user's hand from the thermal video, which required utilizing a series of morphological filters as demonstrated above.

Paper: T. Dunn, S. Banerjee, N. Banerjee, “User-Independent Detection of Swipe Pressure using a Thermal Camera for Natural Surface Interaction”, IEEE 20th International Workshop on Multimedia and Signal Processing (MMSP 2018), Vancouver, Canada, 2018.

Awards: Top 5% Paper, MMSP 2018

Ptychographic Image Reconstruction

Advisor: Christine Sweeney
May - Aug 2017

During my internship at Los Alamos National Laboratory I worked with an interdisciplinary team of scientists to enable their ptychographic image reconstruction algorithms to run on CPUs in addition to Los Alamos' GPU cluster. Afterwards, I greatly improved the software's ease of use and automated the installation and building processes. Lastly, I worked on implementing a parallel beam position refinement algorithm to improve image reconstruction accuracy.

Image from

Optimization of MATLAB PointCloud Generation

Advisors: Sean and Natasha Banerjee
Jan - May 2017

While working with the TARS research group at Clarkson, I improved the algorithms for generating a single PointCloud from our multi-Kinect system. By the end of the semester, I had decreased the total runtime required to generate a single PointCloud from 7.33 seconds to 0.178 seconds.

Using GPUs to Mine Large-Scale Software Problem Repositories

Adviser: Sean Banerjee
May - July 2016

This project involved accelerating the detection of duplicate problem reports in large software problem report repositories. I implemented several basic parallel algorithms in CUDA C++ which could more quickly compare reports from massive repositories such as Bugzilla.

Paper: T. Dunn, N. Banerjee, S. Banerjee, “GPU Acceleration of Document Similarity Measures for Automated Bug Triaging”, 1st International Workshop on Software Faults (IWSF 2016), Ottawa, Canada, 2016.

Awards: Best Poster Presentation in EE & CS, Clarkson University Symposium on Undergraduate Research Experiences