Adnan Jaljuli

Parallel Vertex Cover Algorithms on GPUs

alt text  alt text 

I worked as part of my final year project at AUB on building an efficient In this work, we presented techniques for parallelizing exact algorithms for Minimum Vertex Cover and Parameterized Vertex Cover on GPUs. We proposed a hybrid approach for work distribution and dynamic load balancing where each thread block uses a local stack to traverse a sub-tree, but contributes branches of its sub-tree to a global worklist on an as-needed basis, extracting just enough parallelism for load balancing without incurring too much overhead. We implemented CUDA kernels for solving both MVC and PVC using our proposed approach, and show that they achieve substantial performance and load balance improvements, especially on difficult instances of the problem and on graphs with high average degree.
[paper] [slides] [video] [code]

Hierarchical Matrix Multiplication on GPUs

I was a visiting student researcher at KAUST, where I worked with Professor Izzat El Hajj and Professor George Turkiyyah on a project that aims at accelerating hierarchical matrix-vector multiplication on GPUs using CUDA.
We implemented Cuda kernels for constructing K-D trees, constructing hierarchical matrices, and accelerating hierarchical matrix-vector multiplication.
[code]

Langa

Built and developed a web application that offers asynchronous automatic speech recognition services through API.
[Site] [API Docs]