1. An input/output (FO) memory management unit (IOMMU) comprising: at least one memory configured to store translation data; and control logic coupled to the memory and configured to translate an PO device-generated memory request using the translation data, and wherein the translation data corresponds to: (i) one or more device table entries in a device table stored in a memory system of a computer system that includes the IOMMU, wherein the device table entry for a given request is selected by an identifier corresponding to the I/O device that generates the request; and (ii) one or more I/O page tables, wherein the selected device table entry for the given request includes a pointer to a set of I/O page tables to be used to translate the given request.