1. A caching input/output hub, comprising: a host interface to connect with a host; at least one input/output interface to connect with an input/output device; a write cache to manage memory writes initiated by the input/output device; at least one read cache, separate from the write cache, to provide a low-latency copy of data that is most likely to be used, wherein the at least one read cache is in communication with the write cache; and a cache directory to track cache lines in the write cache and the at least one read cache, wherein the cache directory is in communication with the write cache and the at least one read cache.