1. A supercomputing system, comprising: a plurality of compute nodes; a plurality of high performance computing (HPC) switches coupled to the plurality of compute nodes; and a plurality of active non-volatile storage devices coupled to the plurality of compute nodes; wherein each of the plurality of compute nodes is configured to communicate with another compute node of the plurality of compute nodes through at least one of the plurality of HPC switches; wherein each of at least first and second compute nodes of the plurality of compute nodes includes a plurality of processors operable to perform computation operations for the supercomputing system; and wherein a resource of a processor among the plurality of processors in the first compute node is dynamically allocated as a storage controller that stores data to and reads data from the plurality of active non-volatile storage devices on behalf of others of the plurality of compute nodes in provision of a storage service and is thereafter deallocated from the storage service and utilized to perform computation operations for the supercomputing system.