Graduation date: 2015I/O transactions within a computer system have evolved along with other system components (i.e., CPU, memory, video) from programmed I/O (PIO). In current mainstream systems (spanning from HPC to mobile) the I/O transactions are CPU-centric descriptor-based DMA transactions. The key benefit is that slower I/O devices can DMA write system receive traffic to system memory and DMA read system transmit data at slower device throughput relative to the CPU. With the advent of more cores in a CPU, power restrictions and latency concerns, we show this approach has limitations and based on measurements we propose alternatives to descriptor-based DMA I/O transactions. We explore and quantify performance improvement in three ...
Inter- and intra-chip connections have become the new challenge to enable the scaling of computing s...
The input/output memory management unit (IOMMU) was recently introduced into mainstream computer ar-...
Data transfers are handled by the computer bus which connects the device to the memory. The data bus...
This is an author's peer-reviewed final manuscript, as accepted by the publisher. The published arti...
Abstract—Memory channel contention is a critical per-formance bottleneck in modern systems that have...
Memory access is the major bottleneck in realizing multi-hundred-gigabit networks with commodity har...
This paper looks at the I/O bottleneck in operating systems, with particular focus on high-speed net...
We present a novel taxonomy that characterizes in a structured way the software and hardware tradeof...
The speed of CPUs and memories has historically outstripped I/O, but emerging network and storage te...
Virtualization introduces a significant amount of overhead for I/O intensive applications running in...
An input/output (I/O) device can incorporate mechanical devices that require physical movements, suc...
Recent I/O technologies such as PCI-Express and 10Gb Ethernet enable unprecedented levels of I/O ban...
The compute capacity growth in high performance computing (HPC) systems is outperforming improvement...
Researchers and developers usually are involved in competence situations where innovations are requi...
In this paper we present a new hardware design pattern for improving memory transfers to external dy...
Inter- and intra-chip connections have become the new challenge to enable the scaling of computing s...
The input/output memory management unit (IOMMU) was recently introduced into mainstream computer ar-...
Data transfers are handled by the computer bus which connects the device to the memory. The data bus...
This is an author's peer-reviewed final manuscript, as accepted by the publisher. The published arti...
Abstract—Memory channel contention is a critical per-formance bottleneck in modern systems that have...
Memory access is the major bottleneck in realizing multi-hundred-gigabit networks with commodity har...
This paper looks at the I/O bottleneck in operating systems, with particular focus on high-speed net...
We present a novel taxonomy that characterizes in a structured way the software and hardware tradeof...
The speed of CPUs and memories has historically outstripped I/O, but emerging network and storage te...
Virtualization introduces a significant amount of overhead for I/O intensive applications running in...
An input/output (I/O) device can incorporate mechanical devices that require physical movements, suc...
Recent I/O technologies such as PCI-Express and 10Gb Ethernet enable unprecedented levels of I/O ban...
The compute capacity growth in high performance computing (HPC) systems is outperforming improvement...
Researchers and developers usually are involved in competence situations where innovations are requi...
In this paper we present a new hardware design pattern for improving memory transfers to external dy...
Inter- and intra-chip connections have become the new challenge to enable the scaling of computing s...
The input/output memory management unit (IOMMU) was recently introduced into mainstream computer ar-...
Data transfers are handled by the computer bus which connects the device to the memory. The data bus...