PERSIST - How to Compute in Persistent Memory Systems