Location: Philips Research
Internal Advisor: Doaitse Swierstra
External Advisor: Paul Stravers
Start date: 1-12-04
End date: 31-08-05
There is a large amount of public domain C code available, though most of the time not nicely coded. The real problem is however, that it is all sequential code not suitable to run in parallel. This is required for a chip containing multiple cpu's. Currently this software (think of MPEG2 decoders) is changed by hand, so it can run in parallel. Ofcourse this is tedious error prone work. This is where my thesis comes into play. The idea is, that a software engineer (or just someone with knowledge about the application) points out what should be parallelized. My tool should then start doing analysis required to determine the problems in the sequential code. In some specialized situations I expect that some parallelizing transformations can be automated. Note that I'm not interested in full automatic paralellization at all. To summarize, my tool should augment people in parallelizing sequential public domain C code by providing analysis (which should detect problems in the sequential code and sorts) and automatic parallelization to some extent.