A method of operating an accelerator, comprising: receiving one or more workloads assigned by a host controller configured to control the accelerator comprising a plurality of processing elements that each perform operations independently, wherein workloads of the one or more workloads with a relatively greater or lower operation amount are assigned to a greater or smaller number of processing elements, respectively, wherein operations are performed in sequential order according to the workloads; determining, upon the plurality of processing elements performing the one or more workloads, reuse data of the one or more workloads based on at least one of hardware resource information and a memory access cost of the accelerator, wherein the determining of the reuse data further comprises dynamically determining the reuse data based on a characteristic of the one or more workloads, wherein the memory access cost comprises an access cost for an external memory of the accelerator and an access cost for a multilevel memory comprised in the accelerator, wherein the at least one of the hardware resource information and the memory access cost is determined through an extension offloaded to a direct memory access, DMA, configured to control data input to the multilevel memory comprised in the accelerator or data output from the multilevel memory, wherein through the extension of the DMA, data input to a corresponding level memory or data output from the level memory are monitored and/or profiled, wherein the DMA verifies usage information of a corresponding level memory, wherein the usage information is transmitted to the host controller and wherein the host controller assigns the workloads based on the usage information; and providing a result of performing the one or more workloads to the host controller, wherein the reuse data is data reutilized in a subsequent operation. receiving one or more workloads assigned by a host controller configured to control the accelerator comprising a plurality of processing elements that each perform operations independently, wherein workloads of the one or more workloads with a relatively greater or lower operation amount are assigned to a greater or smaller number of processing elements, respectively, wherein operations are performed in sequential order according to the workloads; determining, upon the plurality of processing elements performing the one or more workloads, reuse data of the one or more workloads based on at least one of hardware resource information and a memory access cost of the accelerator, wherein the determining of the reuse data further comprises dynamically determining the reuse data based on a characteristic of the one or more workloads, wherein the memory access cost comprises an access cost for an external memory of the accelerator and an access cost for a multilevel memory comprised in the accelerator, wherein the at least one of the hardware resource information and the memory access cost is determined through an extension offloaded to a direct memory access, DMA, configured to control data input to the multilevel memory comprised in the accelerator or data output from the multilevel memory, wherein through the extension of the DMA, data input to a corresponding level memory or data output from the level memory are monitored and/or profiled, wherein the DMA verifies usage information of a corresponding level memory, wherein the usage information is transmitted to the host controller and wherein the host controller assigns the workloads based on the usage information; and providing a result of performing the one or more workloads to the host controller, wherein the reuse data is data reutilized in a subsequent operation.