【问题标题】:Does Google Compute Engine offer SR-IOV (Single Root I/O Virtualization)?Google Compute Engine 是否提供 SR-IOV(单根 I/O 虚拟化)?
【发布时间】:2015-12-17 03:45:44
【问题描述】:
【问题讨论】:
标签:
networking
google-compute-engine
virtualization
google-cloud-platform
scylla
【解决方案1】:
目前 Google Compute Engine 不提供 SR-IOV。也就是说,SR-IOV 并不是利用 Scylla 架构的绝对必要条件。
GCE 提供多队列网络,可以使用Intel's DPDK 直接在用户模式下分配 virtio-net 队列。这应该允许我们的 virtio-net NIC 与 Scylla 一起工作,尽管 DPDK 至少在某一时刻对 virtio-net 做出了某些特定于 qemu 的假设(特别是它假设 Tx/Rx 队列深度为 256 个描述符;virtio-net NIC GCE 目前公布了 16,384 个进入队列,尽管这可能会在不久的将来发生变化。
对于像 Scylla 这样的应用程序,这应该比利用内核 TCP/IP 堆栈提供卓越的网络性能和更好的来宾计算开销。
此外,对于具有 >= 1 个内核的所有 GCE 实例(即,非小数内核实例),我们提供多 Gbps 吞吐量,具体取决于结构可用性。在具有Haswell processors 的区域中,延迟可能最低。我们目前不保证特定的网络特性,但我们提供在虚拟 NIC 和任何附加的永久磁盘卷之间共享的高达 2 Gbps/核心的网络吞吐量(本地 SSD 吞吐量不计入此限制)。在吞吐量方面,这使得 8-vCPU 和更大的实例可与 EC2 增强网络相媲美。