University of Michigan Electrical Engineering and Computer Science Flextream: Adaptive Compilation of Streaming Applications for Heterogeneous Architectures.