M. Mustafa Rafique Headshot

M. Mustafa Rafique

Associate Professor

Department of Computer Science
Golisano College of Computing and Information Sciences

585-475-4528
Office Hours
Monday: 2:30-4:30 pm; Wednesday: 2:30-4:30 pm; And by appointment
Office Location
Office Mailing Address
20 Lomb Memorial Drive, (GOL) 70-3635, Rochester, NY 14623

M. Mustafa Rafique

Associate Professor

Department of Computer Science
Golisano College of Computing and Information Sciences

Education

BS in Computer Science, NUCES (Pakistan); MS, Ph.D. in Computer Science, Virginia Tech

Bio

Dr. M. Mustafa Rafique is a faculty in the Department of Computer Science at the Rochester Institute of Technology (RIT). He has more than fifteen years of professional and research experience developing practical solutions for large-scale enterprise applications, and creating innovative solutions for massively parallel, distributed, and high-performance computing systems for a variety of application domains.  Dr. Rafique's research interests lie broadly in experimental computer systems, encompassing distributed platforms for cloud and high-performance computing, Internet of Things (IoT), and emerging data analytics frameworks for machine learning, smarter cities, and cognitive systems. Prior to joining RIT, Dr. Rafique was a staff member in the High Performance Systems Group at IBM Research in Dublin (Ireland). He has also worked at NEC Labs (Princeton) and Qatar Computing Research Institute (QCRI) on designing innovative solutions for adaptive and efficient resource management in massively parallel computing systems. Dr. Rafique earned his MS and Ph.D. degrees in Computer Science from Virginia Tech in 2010 and 2011, respectively. He is a Senior Member of the IEEE.  In his spare time, Dr. Rafique plays badminton, tennis, bridge and chess.

585-475-4528

Areas of Expertise

Select Scholarship

Published Conference Proceedings
Arif, Moiz, et al. "Application-Attuned Memory Management for Containerized HPC Workflows." Proceedings of the Proceedings of the 38th IEEE International Parallel & Distributed Processing Symposium (IPDPS). Ed. IEEE. San Francisco, California, USA: IEEE, 2024. Web.
Assogba, Kevin, Bogdan Nicolae, and M. Mustafa Rafique. "Optimizing the Training of Co-Located Deep Learning Models Using Cache-Aware Staggering." Proceedings of the In Proceedings of the 30th IEEE International Conference on High Performance Computing, Data, and Analytics (HiPC). Ed. IEEE. Goa, India: IEEE, 2023. Web.
Maurya, Avinash, et al. "Towards Efficient I/O Pipelines using Accumulated Compression." Proceedings of the In Proceedings of the 30th IEEE International Conference on High Performance Computing, Data, and Analytics (HiPC). Ed. IEEE. Goa, India: n.p., 2023. Web.
Assogba, Kevin, et al. "PredictDDL: Reusable Workload Performance Prediction for Distributed Deep Learning." Proceedings of the In Proceedings of the 25th IEEE International Conference on Cluster Computing (Cluster). Ed. IEEE. Santa Fe, New Mexico, USA: n.p., 2023. Web.
Maurya, Avinash, et al. "GPU-Enabled Asynchronous Multi-level Checkpoint Caching and Prefetching." Proceedings of the In Proceedings of the 32nd ACM International Symposium on High-Performance Parallel and Distributed Computing (HPDC). Ed. ACM. Orlando, Florida, USA: n.p., 2023. Web.
Maurya, Avinash, et al. "Towards Efficient Cache Allocation for High-Frequency Checkpointing." Proceedings of the In Proceedings of the 29th IEEE International Conference on High Performance Computing, Data, and Analytics (HiPC). Ed. IEEE. Bangalore, India: n.p., 2022. Web.
Arif, Moiz, Kevin Assogba, and M. Mustafa Rafique. "Canary: Fault-tolerant FaaS for Stateful Time-sensitive Applications." Proceedings of the In Proceedings of the 35th ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis (SC). Ed. IEEE/ACM. Dallas, Texas, USA: n.p., 2022. Web.
Arif, Moiz, et al. "Exploiting CXL-based Memory for Distributed Deep Learning." Proceedings of the In Proceedings of the 51st International Conference on Parallel Processing (ICPP). Ed. ICPP. Bordeaux, France: n.p., 2022. Web.
Assogba, Kevin, et al. "On Realizing Efficient Deep Learning Using Serverless Computing." Proceedings of the In Proceedings of the 22nd IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing (CCGrid). Ed. IEEE. Taormina (Messina), Italy: n.p., 2022. Web.
Maurya, Avinash, et al. "Towards Efficient I/O Scheduling for Collaborative Multi-Level Checkpointing." Proceedings of the In Proceedings of the 29th IEEE International Symposium on the Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS). Ed. IEEE. Virtual Conference, USA: n.p., 2021. Web.
Arif, Moiz, et al. "Infrastructure-Aware TensorFlow for Heterogeneous Datacenters." Proceedings of the In Proceedings of the 28th IEEE International Symposium on the Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS). Ed. IEEE. Nice, France: n.p., 2020. Web.
Maurya, Avinash, et al. "CoSim: A Simulator for Co-Scheduling of Batch and On-Demand Jobs in HPC Datacenters." Proceedings of the In Proceedings of the 24th IEEE/ACM International Symposium on Distributed Simulation and Real Time Applications (DS-RT). Ed. IEEE. Prague, Czech Republic: n.p., 2020. Web.
Kwon, Minseok, et al. "CuVPP: Filter-based Longest Prefix Matching in Software Data Planes." Proceedings of the In Proceedings of the 22nd IEEE International Conference on Cluster Computing (Cluster). Ed. IEEE. Kobe, Japan: n.p., 2020. Web.
Han, Jingoo, et al. "MARBLE: A Multi-GPU Aware Job Scheduler for Deep Learning on HPC Systems." Proceedings of the In Proceedings of the 20th IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing (CCGrid). Ed. IEEE. Melbourne,, Victoria, Australia: n.p., 2020. Web.
Han, Jingoo, et al. "A Quantitative Study of Deep Learning Training on Heterogeneous Supercomputers." Proceedings of the In Proceedings of the 21st IEEE International Conference on Cluster Computing (Cluster). Ed. IEEE. Albuquerque, New Mexico, USA: n.p., 2019. Web.
Journal Paper
Javaid, Anam, et al. "Clustering-cum-Handover Management Scheme for Improved Internet Access in High-Density Mobile Wireless Environments." Journal of Sustainable Computing: Informatics and Systems, Elsevier North-Holland, Inc. 30. ISSN: 1573–0484 (2021): 0. Web.
Ijaz, Samia, et al. "Energy-makespan Optimization of Workflow Scheduling in Fog-cloud Computing." Journal of Computing, Springer. (2021): ISSN 1436-5057. Web.

Currently Teaching

CSCI-652
3 Credits
An introduction to the study of distributed systems. The course covers distributed system architectures such as client-server and peer-to-peer, distributed system design issues such as communication, fault tolerance, coordination, and deadlock, distributed system middleware such as remote method invocation (RMI) and tuple space, and the theory of distributed algorithms such as logical clocks and leader election. Students will also learn about ethical and legal concerns in computing and research. Programming projects are required.
CSCI-750
3 Credits
This course examines the fundamental building blocks and current practices of cloud computing. It explores distributed computing models and technologies, Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS), Software-as-a-Service (SaaS), virtualization and containerization, software-defined environments (SDE), microservices-enabled architecture, cloud-class storage systems, big data processing frameworks, federated clouds, cloud-hosted applications, security and privacy, legal and ethical considerations, and other advanced and research topics in cloud computing. Case studies will investigate both established and state-of-the-art systems. Students will critique and present existing work and develop a deeper understanding and limitations of the state-of-the-art cloud systems. They will also propose and complete a research project individually or in teams, and write a conference/journal quality paper.
CSCI-759
3 Credits
This course examines current topics in Systems. This is intended to allow faculty to pilot potential new graduate offerings. Specific course details (such as prerequisites, course topics, format, learning outcomes, assessment methods, and resource needs) will be determined by the faculty member(s) who propose a specific topics course in this area. Specific course instances will be identified as belonging to the Distributed Systems cluster, the Architecture and Operating Systems cluster, the Security cluster, or some combination of these three clusters.