A new program structuring algorithm for dynamically look–ahead reconfigurable multi–processor systems is presented in the paper. The presented algorithm uses a new kind of graph representation of parallel programs with conditional branches (Branching Task Graph, BTG). The BTG captures the
properties of parallel programs. It extends the scope of parallel programs optimized for execution in look–ahead reconfigurable systems beyond static DAG graphs. The new program graph structuring algorithm for BTG graphs is based on a two–phase approach. It consists of a new list task scheduling heuristics, which incorporates branch optimization techniques such as detection of mutually–exclusive subgraphs and scheduling of most–often–used paths based on branch probabilities. In the second phase, program partitioning into sections executed with the look–ahead created connections is done, based on the modified iterative clustering heuristics.