1. A memory appliance system comprising: a processor operable to be coupled to one or more communication channels with a command interface, said processor for communicating commands over said one or more communication channels; and a plurality of smart memory cubes (SMCs) coupled to said processor through said one or more communication channels, wherein each SMC comprises: a controller that is programmable; and a plurality of memory devices, wherein said controller is configured to respond to commands from said command interface to access content stored in one or more of said plurality of memory devices and to perform data operations on content accessed from said plurality of memory devices.