Date Added: Sep 2009
This paper addresses the early exploration phase, before the hardware is available, of the design of a System on a Chip. The authors detect threads in C programs using a software only technique. The computed threads are used as a basis for partitioning the applications. The threads are built using pro ling and hot-paths information. They use a speculative model that, contrary to previous approaches, does not assume a shared memory. The speculation is performed on control flow and data structure layout. The output of the proposed method is a set of threads characterized by their execution time, the amount of memory and communication required, etc. Preliminary results show that the approach is able to capture and to characterize the main computation kernels of embedded applications.