1. A method for a memory unit that includes a memory and a programmable circuit, the memory unit being configured in communication with a virtual machine executed by a processor, the method for the memory unit comprising: receiving, from the processor, a request at the memory unit, wherein the request is to configure the programmable circuit in accordance with a program, wherein the program is associated with the virtual machine being executed by the processor; configuring the programmable circuit in accordance with the program; and operating the programmable circuit to perform one or more operations on data in the memory in accordance with the program.