Automatic parallelization with flow programming

Christian Gram Kalhauge

AbstractWe are currently moving in a quickly against the biggest problem in the computer world since the Y2K problem. We are constantly putting more and more processors in a computer but we have not changed the way we program.
The current programming languages makes it hard to program as they gives the programmer the felling that there is a linear workflow. This means that it is
hard to program parallel programs, and in the future it will only be the best programers that can use the entire power of the computer.
This is why we need a new way to program. Flow is an intermediate language which purpose is to enable automatic parallelization of code, and guarantees that the output program does not contain deadlocks or race conditions.
The project is a excavation of the possibilities of flow based languages. I will touch subjects as automatic parallelization, code testing, memory handling, and static/dynamic CPU scheduling on multiprocessing systems, and how to parse and compile code.
TypeBachelor thesis [Academic thesis]
Year2012
PublisherTechnical University of Denmark, DTU Informatics, E-mail: reception@imm.dtu.dk
AddressAsmussens Alle, Building 305, DK-2800 Kgs. Lyngby, Denmark
SeriesIMM-B.Sc.-2012-17
NoteSupervised by Associate Professor Christian Probst, probst@imm.dtu.dk, DTU Informatics
Electronic version(s)[pdf]
Publication linkhttp://www.imm.dtu.dk/English.aspx
BibTeX data [bibtex]
IMM Group(s)Computer Science & Engineering