首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >FPGA用户用例提案

FPGA用户用例提案

作者头像
后端云
发布2018-10-24 11:50:34
6720
发布2018-10-24 11:50:34
举报
文章被收录于专栏:后端云后端云

FPGA资源

目前,Nova缺乏管理可变资源的能力,如基于FPGA的加速器。

问题描述

哪些FPGA(现场可编程门阵列)可以给出,将FPGA资源作为PCI设备虚拟机加速器的所有准备工作,提供给系统,是一个手动行为。

此外,现代FPGA为我们提供了更多功能,如能将可编程阵列划分到各个区域,这让单独编程成为可能,并且每个编程的区域可能被几个VM使用。这在共享资源的背景下尤其重要。 在虚拟机之间,在这种情况下,单个FPGA器件可以容纳一个或多个加速器,可以通过分配一个或多个虚拟机来利用这些加速器,而不是使用PCI通过传递整个设备通过单个VM。attach加速器的其他常用方式是将FPGA作为一个或多个虚拟功能和一个物理接口的能力功能,类似的方式如何使用SR-IOV暴露一些网络适配器。

为了系统化,FPGA可以在以下方面的资源:

  • 算法(加速器,可以编程的FPGA)是一个资源,
  • 能够由租户(裸机,VM)编程(使用)整个FPGA
  • 跟踪区域的使用情况(如果FPGA为其提供支持的话)
  • 跟踪在多个客户端共享加速器的能力,
  • 离散的FPGA板载存储器也应该被跟踪。

从利用的角度来看,应考虑以下几个方面:

  • 如果具有区域功能的FPGA,则整个FPGA或只有一个区域被使用,就是说相同的芯片可以同时用作一个或多个资源
  • 具有区域功能的FPGA,但若不具备部分区域重新编程,可能需要暂停/停止该FPGA的运行,从而将编程期望的算法烧录进FPGA芯片

FPGA的其他可能的使用可以加速基础设施。明显的一个例子就是加速Open vSwitch。

用例

从用户的角度来看,它应该是简单的请求特定的资源(加速器/芯片访问)。对于用户所有的复杂性都应该被隐藏。

1.作为用户,我想运行特定的工作负载,且需要使用特定的硬件或加速,所以我指定一个flavor或image,以便调度程序帮我选定含有可用硬件的正确主机。

2.作为操作者,我想有具备FPGA资源的计算主机的配置选项,使其可以由Nova resource tracker跟踪管理。

2.作为操作者,我希望能够编程FPGA加速器(使用外部entity,服务或库),将其注册为新资源并使用SR-IOV接口在虚拟机之间共享。

4.作为一名开发人员,我想能够使用虚拟机与整个FPGA和其连接在一起,或者启动能够FPGA编程的裸机。

拟议变更

对于第一和第二点的用例,应该有自动的方式,在Nova资源管理器中发现和管理这些资源。另外应该有一个提供FPGA编程的库。Nova应该能够使用这样的库(类似于os-brick,并且尽量去除所有复杂的东西,如编程和重新配置,也应该 能获得有关FPGA芯片状态的实际信息。

备选方案

1.用外部的服务来代替库,借此将算法编程进FPGA,再向nova提供FPGA资源。

2.我们什么也不做,给操作者留下负担,让操作者手动配置加速器,并配置节点通过 PCI passthrough来使用FPGA资源。

安全影响

请注意,虽然没有观察到对堆栈本身的安全影响,可能是裸机(或者通过PCI暴露FPGA的VM)有潜在风险。允许开发人员编程自己的算法。问题这里是算法本身,可能会显示为异常功耗使得硬件故障或甚至物理损坏的风险。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-05-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 后端云 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • FPGA资源
  • 问题描述
  • 用例
  • 拟议变更
  • 备选方案
  • 安全影响
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档