Skip to main content
Seminar | Mathematics and Computer Science

Too Many Chefs in the Kitchen - An Argument in Favor of Program Execution Models (PXMs)

CS Seminar

Abstract: Computer architectures are now more parallel and heterogenous than ever. However, balancing programmability, portability and performance (3P) is still challenging. A large number of programming models, programming frameworks and execution models have been proposed, with the promise to solve these issues. Still, a large effort is also put by applications and developers to overcome the challenges of interoperability of these frameworks. In the meantime, applications still fear that the newly implemented code will not be able to work in future machines. 

In an era of extreme heterogeneity, the current programming and system infrastructure do not seem to have a convincing solution to the 3P problem. Furthermore, if we want to be able to provide software modularity, there must exists a clear distinction between the semantics of the execution model, and the user application, such that they can be evolved independently. In this talk we provide an argument that if we want to evolve computer systems, software tools and applications for the 3P problem, a well-defined defined program execution model should be vertically integrated across all the components of the system (i.e., Architecture, middleware, operating systems, compilers, libraries, programming models, etc.).

Additionally, through a view of evolution of computers, and some success examples, we support this argument. Finally, while the intention of this talk is to encourage discussion around the topic, a possible PXM is presented as a potential solution to the 3P problem.