On the problem of optimizing data transfers for complex memory systems | Synapse