A method comprising: performing dataflow-based and instruction-based processing and exchanging fabric packets respectively in and between a plurality of processing elements interconnected as a fabric, each processing element comprising a compute engine and a fabric router; specifying communications and computations respectively corresponding to a plurality of branches and a plurality of nodes of a dataflow graph, and wherein the dataflow graph corresponds to all or any portions of a neural network and the nodes correspond to neurons of the neural network; allocating a portion of the processing elements to locally perform the computations, at least two of the processing elements being allocated to respectively locally perform a plurality of computation portions corresponding to a partitioned one of the nodes, and wherein the allocating comprises allocating respective ones of the at least two processing elements to performing respective portions of the local computations of the partitioned node; performing the computations and communications in accordance with the specifying, the allocating, and a virtual channel specifier of each fabric packet sent via one or more virtual channels between the at least two processing elements to transfer between the respective computation portions data comprising one or more sources and results of the computations; wherein the virtual channel specifier identifies one of the one or more virtual channels; wherein the dataflow-based and instruction-based processing are in accordance with the virtual channel specifier indicating in part one or more communication pathways, the communication pathways implemented at least in part by the fabric routers, and the communication pathways are between a plurality of the processing elements; wherein the communication pathways are usable for the communications; and wherein the communication pathways are usable to transport one or more of the sources and results. performing dataflow-based and instruction-based processing and exchanging fabric packets respectively in and between a plurality of processing elements interconnected as a fabric, each processing element comprising a compute engine and a fabric router; specifying communications and computations respectively corresponding to a plurality of branches and a plurality of nodes of a dataflow graph, and wherein the dataflow graph corresponds to all or any portions of a neural network and the nodes correspond to neurons of the neural network; allocating a portion of the processing elements to locally perform the computations, at least two of the processing elements being allocated to respectively locally perform a plurality of computation portions corresponding to a partitioned one of the nodes, and wherein the allocating comprises allocating respective ones of the at least two processing elements to performing respective portions of the local computations of the partitioned node; performing the computations and communications in accordance with the specifying, the allocating, and a virtual channel specifier of each fabric packet sent via one or more virtual channels between the at least two processing elements to transfer between the respective computation portions data comprising one or more sources and results of the computations; wherein the virtual channel specifier identifies one of the one or more virtual channels; wherein the dataflow-based and instruction-based processing are in accordance with the virtual channel specifier indicating in part one or more communication pathways, the communication pathways implemented at least in part by the fabric routers, and the communication pathways are between a plurality of the processing elements; wherein the communication pathways are usable for the communications; and wherein the communication pathways are usable to transport one or more of the sources and results.