In big data era, servers become critical in the entire society as well as in the computing community. For instance, in 2013, 34 power plants were needed to provide power to data centers in the US. A significant portion (~40%) of energy consumption in the server is attributed to main memory. We aim at improving energy efficiency of main memory by moving computation near memory, which is called processing-in-memory (PIM). PIM requires novel ideas to tackle critical issues such as cache-memory vertical coherence, virtual-physical address mapping, etc.