A.B. Physics, Cornell University
M.S. Physics, University of Puerto Rico
PhD Computer Science, University of Chicago
Professor of Computer Science and Engineering
California State University - San Bernardino
- (909) 537-5429
Research Interests with selected papers
Parallel and distributed computing: member of Planguages group with L. Ridgway
Scott of University of Chicago, developer of PC (parallel C), developer of
middleware (SOS library) which supports implicit process subsets formed by
program logic, opportunistic non-blocking communication scheduling to minimize
the need for synchronization, and short-cutting to reduce amount of work
in some parallel algorithms.
Single Program Task Parallelism (Dissertation)
E. Gomez and L. Ridgway Scott. Overlapping and Short-cutting Techniques
in Loosely Synchronous Irregular Problems. Springer Lecture Notes
in Computer Science, 1457:116–127, 1998.
Preventing Deadlock with Dynamic Message SchedulingErnesto Gomez, Yasha Karant, Keith Schubert
2004 Hawaii International Conference on Computer Sciences Proceedings, pp 122-140.
E. Gomez, Y. Karant, and K.E. Schubert. Preventing Deadlock with Dynamic
Message Scheduling. In H. Selvaraj and V. Muthukumar, editors,
Proceedings of the 18th International Conference on Systems Engineering,
pages 52–57, Los Alamitos, Ca, 2005. IEEE.
Theory of synchronization and deadlock. Developed a formal definition of
synchronization that results in a Boolean algebra of synchronization, continuing
work in the implications of the theory and tools for practical applications.
Ernesto Gomez and Keith Schubert. Algebra of synchronization with application
to deadlock and semaphores. International Journal of Networkingand Computing, 1(2):144–156, 2011.
Study of cellular automata and their use to model patterned growth in extreme
B. Strader, K. E. Schubert, M. Quintana, E. Gomez, J. Curnutt, and P.
Boston. Software Tools and Algorithms for Biological Systems, Hamid R.
Arabnia and Quoc-Nam Tran Editors, volume 696 of Advances in Experimental
Medicine and Biology, chapter Estimation, Modeling, and Simulation
of Patterned Growth in Extreme Environments. Springer, 2010.
Keith E. Schubert, Ernesto Gomez, Jane Curnutt, and Penelope Boston.
To live and die in ca. In Proceedings of the 2010 International Conference
on Bioinformatics and Computational Biology, pages 662–665, 2010
student project/thesis possibilites (Postscript)
SPMD : Single Program Multiple Data - execution model characterized by multiple copies
of the same program code, each of which may have different data in memory.
SOS : MIPS, Overlapping and Shortcutting - Function library and API.
IPG : Implicit Process Groups, in SPMD, formed at runtime by data-dependent program logic
MIPS - Merging Implicit Process Sets : theory and code support for IPGs (Formerly
Overlapping : theory and code support - uses semantic information from program text
to conttrol dynamic, out of order message scheduling. Attempts to overlap intervals
between writes to a variable at sender, reads from a variable at receiver to minimize
Planguages : Pfortran , PC - extension to standard C and Fortran 77 supporting SPMD
THIRD : threaded language interpreter, loosely inspired by FORTH and Lisp. Currently
DOS based, will run in dosemu.
Language support for parallel computation, work on next generation
Also see PC/Planguage links in distributed computing class notes and files
The latest version of PC may be dowloaded here: PC downloads
The SOS system and function library: