The FlexTiles project proposes a 3D stacked chip architecture consisting of a manycore layer, FPGA layer, and 3D network-on-chip (NoC). This architecture aims to provide both good parallelization capabilities and customizable hardware through runtime reconfiguration of the FPGA layer. A holistic approach is taken including models of execution, computation, and programming to efficiently map applications to the flexible hardware and enable self-adaptive capabilities such as dynamic task allocation and hardware migration in response to changes.