1. A programmed input/output (PIO) transaction unit comprising: an input buffer configured to receive and store a plurality of PIO write operations sent by one or more transactions sources, wherein each PIO write operation includes a source identifier that identifies a respective one of the one or more transaction sources; a response buffer configured to store response operations corresponding to respective PIO write operations to be transmitted to the transaction source identified by the source identifier; and a control unit coupled to the response buffer and the input buffer and configured to store in the response buffer a particular response operation corresponding to a given PIO write operation prior to the given PIO write operation being sent to a target of the given PIO write operation in response to determining that the given PIO write operation is a bufferable PIO write operation and that there is no non-bufferable PIO write operation having a same source identifier stored in the input buffer.