Research
I am working on developing techniques for automatic parallelization, partitioning and scheduling of time-critical applications. By adding a system of timing constraints to Sisal, a high-performance functional language designed for scientific computing, we have created SERT (Sisal Extended for Real-Time). Because of the nature of the language, when given a description of the target architecture and an application with specified timing requirements, the SERT compiler generates a precise, minimal data dependency graph and then partitions and will create a parallel schedule for the graph to satisfy the specified constraints if possible.