A method (500, 600, 800) of managing a hosted non-volatile random-access memory (NVRAM) based storage subsystem that includes NVRAM devices, the method comprising: receiving (502, 602, 802), at a device driver on the host computing device, write requests each requesting to write a respective unit of data to the NVRAM-based storage subsystem; characterised in that the method further comprises: categorizing (504, 604) the write requests into subgroups of write requests based on a characteristic of each write request, where write requests within respective subgroups are mutually exclusive; receiving information encoding a load condition of each of several of the NVRAM devices of the NVRAM-based storage subsystem; comparing the load condition of each NVRAM device with a load threshold; subsequently identifying, based on the results from the categorizing and comparing steps, a target location on the NVRAM-based storage subsystem to service a particular categorized subgroup of write requests according to the ascertained load conditions of the NVRAM devices of the NVRAM-based storage subsystem, the NVRAM-based storage subsystem being in communication with an intermediate volatile storage; and servicing the particular subgroup of write requests by writing corresponding units of data to the identified target location on at least one NVRAM device of the NVRAM-based storage subsystem. receiving (502, 602, 802), at a device driver on the host computing device, write requests each requesting to write a respective unit of data to the NVRAM-based storage subsystem; characterised in that the method further comprises: categorizing (504, 604) the write requests into subgroups of write requests based on a characteristic of each write request, where write requests within respective subgroups are mutually exclusive; receiving information encoding a load condition of each of several of the NVRAM devices of the NVRAM-based storage subsystem; comparing the load condition of each NVRAM device with a load threshold; subsequently identifying, based on the results from the categorizing and comparing steps, a target location on the NVRAM-based storage subsystem to service a particular categorized subgroup of write requests according to the ascertained load conditions of the NVRAM devices of the NVRAM-based storage subsystem, the NVRAM-based storage subsystem being in communication with an intermediate volatile storage; and servicing the particular subgroup of write requests by writing corresponding units of data to the identified target location on at least one NVRAM device of the NVRAM-based storage subsystem. categorizing (504, 604) the write requests into subgroups of write requests based on a characteristic of each write request, where write requests within respective subgroups are mutually exclusive; receiving information encoding a load condition of each of several of the NVRAM devices of the NVRAM-based storage subsystem; comparing the load condition of each NVRAM device with a load threshold; subsequently identifying, based on the results from the categorizing and comparing steps, a target location on the NVRAM-based storage subsystem to service a particular categorized subgroup of write requests according to the ascertained load conditions of the NVRAM devices of the NVRAM-based storage subsystem, the NVRAM-based storage subsystem being in communication with an intermediate volatile storage; and servicing the particular subgroup of write requests by writing corresponding units of data to the identified target location on at least one NVRAM device of the NVRAM-based storage subsystem.