1. A method for transmitting data to a memory to enable pipelined synchronization of a cache, comprising: obtaining a plurality of synchronization events for transactions with said memory; calculating one or more matches between said events and said data stored in one or more cachelines of said cache; storing event time stamps of events associated with said matches; generating one or more priority values based on said event time stamps; and concurrently transmitting said data to said memory based on said priority values.