Algorithms and Data Structures for Efficient Serial and Parallel Computations, Cache- and I/O-efficient Computing, Computational Biology and Bioinformatics, Experimental Algorithmics.
BIOGRAPHY
Rezaul Chowdhury received his Ph.D. from the Department of Computer Sciences, UT Austin, working with Professor Vijaya Ramachandran, and defending "Cache-efficient Algorithms and Data Structures: Theory and Experimental Evaluation". Prior to joining SBU in 2011, he was in Boston working with Professor Sandor Vajda's Structural Bioinformatics Group at Boston University, and Professor Charles Leiserson's SuperTech Research Group at MIT. Before moving to Boston, he was a postdoctoral fellow at the Center for Computational Visualization (CVC), Institute for Computational Engineering & Sciences (ICES), University of Texas at Austin. He worked with Professor Chandrajit Bajaj. Chowdhury now leads the Theoretical and Experimental Algorithmics (TEA) Group where they concentrate on both algorithm design and algorithm engineering. He holda a joint appointment with the Institute for Advanced Computational Sciences (IACS).
TEACHING SUMMARY
CSE 548 Analysis of Algorithms
CSE 590 Topics in Computer Science
CSE 613 Parallel Programming
CSE 638 Advanced Algorithms
CSE 642 Seminar in Algorithms
RESEARCH
Rezaul Chowdhury is currently involved in an NSF-funded project with Charles Leiserson and Steven Johnson of MIT on building a stencil computation compiler called "Pochoir". A stencil defines the value of a grid point in a d-dimensional spatial grid at time t as a function of neighboring grid points at recent times before t. Stencil computations are conceptually simple to implement using nested loops, but looping implementations suffer from poor cache performance on multicore processors. Cache-efficient divide-and-conquer stencil algorithms exist, but most programmers find them difficult to implement. Moreover, open problems remain in adapting these algorithms to realistic applications that lack the perfect regularity of simple examples. This research aims to develop a language embedded in C++ that can express stencil computations concisely and can be compiled automatically into highly efficient algorithmic code that will make good use of the memory hierarchy and processor pipelines endemic to multicore processors and will run fast on a diverse set of hardware platforms. A wide variety of stencil-based applications — ranging across physics, biology, chemistry, energy, climate, mechanical and electrical engineering, finance, and other areas — will become easier to develop and maintain. Some of his other projects focus on efficient resource-oblivious algorithms, fast energetics computation, and protein-protein docking.
AWARDS
Rezaul Chowdhury received a best paper award in IPDPS 2010 for introducing the notion of multicore-oblivious algorithms. He is also interested in programming contests, and won an ACM ICPC Regional Contest as a student. Some contest problems he authored for training students are included in the "Programming Challenges: The Programming Contest Training Manual" by Steven Skiena & Miguel Revilla.