@article {26754,
	title = {Flexible device compositions and dynamic resource sharing in PCIe interconnected clusters using Device Lending},
	journal = {Cluster Computing},
	volume = {22},
	year = {2019},
	month = {09/2019},
	pages = {1-24},
	publisher = { Springer},
	abstract = {Modern workloads often exceed the processing and I/O capabilities provided by resource virtualization, requiring direct access to the physical hardware in order to reduce latency and computing overhead. For computers interconnected in a cluster, access to remote hardware resources often requires facilitation both in hardware and specialized drivers with virtualization support. This limits the availability of resources to specific devices and drivers that are supported by the virtualization technology being used, as well as what the interconnection technology supports. For PCI Express (PCIe) clusters, we have previously proposed Device Lending as a solution for enabling direct low latency access to remote devices. The method has extremely low computing overhead and does not require any application- or device-specific distribution mechanisms. Any PCIe device, such as network cards disks, and GPUs, can easily be shared among the connected hosts. In this work, we have extended our solution with support for a virtual machine (VM) hypervisor. Physical remote devices can be {\textquotedblleft}passed through{\textquotedblright} to VM guests, enabling direct access to physical resources while still retaining the flexibility of virtualization. Additionally, we have also implemented multi-device support, enabling shortest-path peer-to-peer transfers between remote devices residing in different hosts. Our experimental results prove that multiple remote devices can be used, achieving bandwidth and latency close to native PCIe, and without requiring any additional support in device drivers. I/O intensive workloads run seamlessly using both local and remote resources. With our added VM and multi-device support, Device Lending offers highly customizable configurations of remote devices that can be dynamically reassigned and shared to optimize resource utilization, thus enabling a flexible composable I/O infrastructure for VMs as well as bare-metal machines.},
	issn = {1573-7543},
	doi = {10.1007/s10586-019-02988-0},
	url = {https://link.springer.com/article/10.1007/s10586-019-02988-0},
	author = {Markussen, Jonas and Lars Bj{\o}rlykke {Kristiansen} and Borgli, Rune and H{\r a}kon Kvale {Stensland} and Seifert, Friedrich and Riegler, Michael and Griwodz, Carsten and Halvorsen, P{\r a}l}
}
