Contact Information

Name: Dr. Ghassan Shobaki

Title: Associate Professor

Office Location: RVR 5020

Email: ghassan.shobaki@csus.edu

Office Phone: 916-278-7952

Mailing Address: 6000 J street

About

I am a Associate Professor in the department of computer science at California State University, Sacramento (CSUS). I joined CSUS in 2015. I obtained my Ph.D in computer science from the University of California, Davis in 2006. Before coming to CSUS, I was a faculty member at Princess Sumaya University (PSUT) from 2009 to 2015. Before that, I worked in the industry for ten years, six of which as a compiler engineer (Intel 2002-2005, Sun Microsystems 2006-2008, AMD 2008-2009).

Courses I teach

CSC 206: Algorithms and Paradigms. Lectures available on YouTube

CSC 140: Advanced Algorithm Design and Analysis Lectures available on YouTube

CSC 151: Compiler Construction. Lectures available on YouTube

CSC 139: Operating System Principles. Lectures available on YouTube

CSC 135: Theory of Computation. Lectures available on YouTube

CSC 130: Data Structures and Algorithms

Research Interests

My areas of research are compilers, combinatorial optimization algorithms and parallel algorithms. More specifically, my research focuses on developing exact or precise algorithms for solving NP-hard problems in code generation and optimization, but I have also worked on NP-hard combinatorial optimization problems in other domains. In an NSF-funded project, I am currently exploring the use of parallel computing (GPUs and multi-core CPUs) to make it feasible to use intelligent-search algorithms for solving NP-hard problems. Here is a link to the project page on the NSF website.

Publications

- T. Gonggiatgul, G. Shobaki, and P. Muyan-Ozcelik “A Parallel Branch-and-Bound Algorithm with History-Based Domination and its Application to the SOP”. Journal of Parallel and Distributed Computing (JPDC), vol. 172, pages 131-143, Online November 2022. DOI: 10.1016/j.jpdc.2022.10.007.

- G. Shobaki, J. Bassett, M. Heffernan, and A. Kerbow. “Graph Transformations for Register-Pressure-Aware Instruction Scheduling”. In Proc. International Conference on Compiler Construction (CC), April 2022. DOI:  10.1145/3497776.3517771

- T. Gonggiatgul, G. Shobaki, and P. Muyan-Ozcelik “POSTER: A Parallel Branch-and-Bound Algorithm with History-Based Domination”. In Proc. Principles and Practice of Parallel Programming (PPoPP), April 2022. DOI: 10.1145/3503221.3508415

- G. Shobaki, V. Gordon, P. McHugh, T. Dubois, and A. Kerbow. 2022. “Register-Pressure-Aware Instruction Scheduling Using Ant-Colony Optimization”. ACM Transactions on Architecture and Code Optimization (TACO), vol. 19, issue 2, Article 23, January 2022. DOI: 10.1145/3505558

- G. Shobaki, A. Kerbow, S. Mekhanoshin. “Optimizing Occupancy and ILP on the GPU Using a Combinatorial Approach”. In Proc. International Symposium on Code Generation and Optimization (CGO 2020), February 2020 (acceptance rate: 27%). DOI:  10.1145/3368826.3377918

- G. Shobaki, A. Kerbow, C. Pulido and W. Dobson. “Exploring an Alternative Cost Function for Combinatorial Register-Pressure-Aware Instruction Scheduling”. ACM Transactions on Architecture and Code Optimization (TACO), vol. 16, issue 1, Article 1, February 2019. DOI: 10.1145/3301489

- J. Jamal, G. Shobaki, V. Papapangiotou, L.M. Gambardella and R. Montemanni. "Solving the Sequential Ordering Problem using Branch and Bound". In Proc. IEEE Symposium Series on Computational Intelligence (SSCI 2017), Dec. 2017. DOI: 10.1109/SSCI.2017.8280805

- G. Shobaki, N. Abu-Rmaileh and J. Jamal. "Studying the Impact of Bit Switching on CPU Energy". In Proc. 19th International Workshop on Software and Compilers for Embedded Systems, May 2016. DOI: 10.1145/2906363.2906382

- V. Papapangiotou, J. Jamal, R. Montemanni, G. Shobaki, L.M. Gambardella. "A Comparison of Two Exact Algorithms for the Sequential Ordering Problem". In Proc. IEEE Conference on System, Process & Control (ICSPC2015), Dec. 2015. DOI: 10.1109/SPC.2015.7473562

- G. Shobaki, L. Sakka,  N. Abu-Rmaileh and H. Al-Hamash. “Experimental Evaluation of Various Register Pressure Reduction Heuristics”. Software: Practice and Experience, vol. 45, issue 11, Nov. 2105. DOI: 10.1002/spe.2297. First published online Nov. 2014.

- G. Shobaki and J. Jamal. "An Exact Algorithm for the Sequential Ordering Problem and its Application to Switching Energy Minimization in Compilers". Journal of Computational Optimization and Applications, vol. 61, issue 2, June 2015. DOI: 10.1007/s10589-015-9725-9.

- G. Shobaki, M. Shawabkeh and N. Abu-Rmaileh. “Pre-allocation Instruction Scheduling with Register Pressure Minimization Using a Combinatorial Optimization Approach”. ACM Transactions on Architecture and Code Optimization (TACO), vol. 10, issue 3, Article 14, Sept. 2013. Presented at HiPEAC 2014. DOI: 10.1145/2512432

- G. Shobaki, K. Wilken and M. Heffernan. “Optimal Trace Scheduling Using Enumeration”. ACM Transactions on Architecture and Code Optimization (TACO), vol. 5, issue 4, Article 19, March 2009. DOI: 10.1145/1498690.1498694

- M. Heffernan, K. Wilken and G. Shobaki. “Data-dependency Graph Transformations for Superblock Scheduling”. In Proc. 39th International Symposium on Micro-architecture (MICRO 39), Dec 2006 (acceptance rate: 24%). DOI: 10.1109/MICRO.2006.16

- G. Shobaki and K. Wilken. “Optimal Superblock Scheduling Using Enumeration”. In Proc. 37th International Symposium on Micro-architecture (MICRO 37), Dec 2004 (acceptance rate: 18%). DOI: 10.1109/MICRO.2004.27