陈天奇:在深度学习框架之间共享张量——内存张量结构DLPack的PythonAPI来了

2021-03-01 21:47 889 阅读 ID:262
新智元
新智元


    DLPack是一种开放的内存张量结构,用于在框架之间共享张量,近日,开发者陈天奇更新社交媒体详细介绍了为DLPack添加PythonAPI、语义和实现细节的内容。


    大家知道DLPack吗:



    深度学习从业人员或多或少都会有了解,诸如 Tensorflow、PyTorch 等深度学习框架,确实为深度学习的快速原型设计和模型部署提供了强大的工具箱。


    但是,不幸的是,它们的易用性通常以碎片化为代价


    他们仅仅限于对每个框架单独使用,如果对框架进行垂直整合,那么开发流程可以适用于常见用例,但实际上,打破常规可能会是个非常棘手的问题。


    一种解决的方法是,在内存中直接将张量从一个框架传递到另一个框架,而不发生任何数据复制或拷贝。


    DLPack,就是张量数据结构的中间内存表示标准,它是一种开放的内存张量结构,用于在框架之间共享张量


    它提供了一个简单、可移植的内存数据结构:



    DLPack使:


    • 在深度学习框架之间更轻松地共享操作员。


    • 更容易包装供应商级别的运营商实施,允许在引入新设备/操作时进行协作。


    • 快速交换后端实现,如不同版本的BLAS


    • 对于最终用户来说,这可以带来更多的运营商,并且可以在框架之间混合使用。



    下载地址:

    https://gitee.com/mirrors/DLPack


    此外,DLPack的开发者不打算实现Tensor和Ops,而是将其用作跨框架重用张量和操作的公共桥梁


    此外,最近,DLPack的开发者陈天奇更新了一则Git,标题为:“为 DLPack 添加PythonAPI、语义和实现细节”,在其中讨论了添加的详细内容、以及要引用DLPack本身的什么内容。


    同时,陈天奇还计划将一些文档导入DLPack,目前,DLPack没有任何关于Python级API的文档。



    感兴趣的小伙伴可以去下面地址看一看:

    https://github.com/data-apis/consortium-feedback/issues/1

    免责声明:作者保留权利,不代表本站立场。如想了解更多和作者有关的信息可以查看页面右侧作者信息卡片。
    反馈
    to-top--btn