CN107480080A - 一种基于rdma的零拷贝数据流 - Google Patents

一种基于rdma的零拷贝数据流 Download PDF

Info

Publication number
CN107480080A
CN107480080A CN201710534535.0A CN201710534535A CN107480080A CN 107480080 A CN107480080 A CN 107480080A CN 201710534535 A CN201710534535 A CN 201710534535A CN 107480080 A CN107480080 A CN 107480080A
Authority
CN
China
Prior art keywords
rdma
zero
data stream
stream based
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710534535.0A
Other languages
English (en)
Other versions
CN107480080B (zh
Inventor
易百忍
陈力
陈凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Zhixing Technology Co Ltd
Original Assignee
Hongkong Red Bird Polytron Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hongkong Red Bird Polytron Technologies Inc filed Critical Hongkong Red Bird Polytron Technologies Inc
Priority to CN201710534535.0A priority Critical patent/CN107480080B/zh
Publication of CN107480080A publication Critical patent/CN107480080A/zh
Application granted granted Critical
Publication of CN107480080B publication Critical patent/CN107480080B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0871Allocation or management of cache space

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于RDMA的零拷贝数据流,主要包括内存分配器和信息收集器;所述内存分配器,用来实现不同内存的分配规则;所述内存类型信息收集器,用于解析数据流计算图,并根据数据流计算图中每条边的数据源和数据接收节点来确定每个步骤的缓冲区管理规则。本发明的一种基于RDMA的零拷贝数据流,可以实现张量传输速率高、GPU的高速扩展以及消除不必要的内存拷贝的优点。

Description

一种基于RDMA的零拷贝数据流
技术领域
本发明涉及数据流技术领域,具体地,涉及一种基于RDMA的零拷贝数据流。
背景技术
商用交换机和网卡构建的高速网络架构是现代数据中心的关键组成部分。远程直接内存访问(RDMA)为应用程序提供零拷贝和CPU旁路通信。最近,RDMA over ConvergedEthernet(RoCE)通信协议已经受到广泛的关注,被认为是高吞吐量,低延迟的数据中心的40 / 100Gbps以太网络的核心通信协议层。然而,现有应用程序通常围绕基于伯克利套接字接口进行设计。为了将现有的程序不作修改地移植到RoCE通信协议上,现有应用程序通常会使用在用户空间模拟的套接字接口。这种设计需要应用程序将通信数据拷贝到专用的通信缓冲区中,其后网卡直接访问这些专用缓冲区并进行实际的数据传输。这种设计有其优点:网卡直接访问的内存缓冲区需要通过设置输入输地址转换将虚拟内存页面锁定在物理内存中,而设置输入输出地址转换器是一项昂贵的操作,当需要传输的数据规模很小的时候,设置地址转换需要时间可能是数据传输本身的好几倍。因此有必要将网卡直接访问的内存缓冲区与应用程序隔离开来,需要时通过将数据拷贝至网卡直接访问的内存缓冲区来实现通信。
数据流是Apache Hadoop、Apache Spark和TensorFlow等数据分析框架中流行的架构模式。数据流是有向无环图,其中每个节点具有多个输入和输出的预定义操作。对于分布式数据流,通常数据流图在所有的训练节点之间进行划分,使得每个边缘被分割成一个通信阶段,其中上一阶段的输出通过通信通道传输成为下一阶段的输入。这些输出和输入通常是大型和不可变(通过计算产生后不被再次修改)的数据块。 在当前应用程序设计中,由于软件架构分层的特点,这些数据块通常会在产生后被移动到不同的子系统进行进一步处理 ,例如序列化和通信前的进一步压缩。当前数据流框架中的处理方法是:直接将其拷贝至网卡直接访问的内存缓冲区,然后进行网络传输。由于这些大型数据块的规模可达几十兆甚至几百兆字节,复制带来的延迟可达数十毫秒。在低速的网络中(网络协议栈一般是TCP/IP/以太网),这样的复制开销相对网络硬件传输的时间而言并不显著;然而在现代40/100Gpbs网络中,由于网络硬件本身的传输性能大幅度提高,拷贝这些大型数据块至内存缓冲区带来的开销在整个数据传输的流水线中变成了重要的瓶颈。在这种情况下,RDMA零拷贝和内核旁路的带来的性能优势被这些开销所掩盖。
然而,如果我们采用整体设计的数据流计算/通信流水线,通过网卡直接访问这些数据块而无需再次移动,则可以消除大部分这些开销,包括设置内存地址转换,从而充分利用RDMA在通信层的性能优势。
发明内容
本发明的目的在于,针对上述问题,提出一种基于RDMA的零拷贝数据流,以实现张量传输速率高、GPU的高速扩展以及消除不必要的内存拷贝的优点。
为实现上述目的,本发明采用的技术方案是:一种基于RDMA的零拷贝数据流,主要包括内存分配器和信息收集器;
所述内存分配器,用来实现不同内存的分配规则;
所述内存类型信息收集器,用于解析数据流计算图,并根据数据流计算图中每条边的数据源和数据接收节点来确定每个步骤的缓冲区管理规则。
进一步地,所述内存分配器包括DMA和RDMA。
进一步地,所述DMA用来对设备直接进行数据的存取。
进一步地,所述设备包括显卡、网卡或处理器。
进一步地,所述RDMA用来对远程数据进行直接存取。
进一步地,所述内存类型信息收集器包括解析模块和数据流模块。
进一步地,所述解析模块分别与所述数据流模块、DMA和RDMA相连接。
进一步地,所述数据流模块以数据流图结构表示数据的流向以及节点分布,用来向所述解析模块提供内存分配信息。
进一步地,所述解析模块包括解析器,用来对数据块所需的内存进行分类。
本发明一种基于RDMA的零拷贝数据流,主要包括内存分配器和信息收集器;所述内存分配器,用来实现不同内存的分配规则;所述内存类型信息收集器,用于解析数据流计算图,并根据数据流计算图中每条边的数据源和数据接收节点来确定每个步骤的缓冲区管理规则,可以实现张量传输速率高、GPU的高速扩展以及消除不必要的内存拷贝的优点。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明所述一种基于RDMA的零拷贝数据流的结构示意图;
图2为本发明所述一种基于RDMA的零拷贝数据流的训练吞吐量与基于gRPC训练吞吐量对比图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
如图1所示,一种基于RDMA的零拷贝数据流,主要包括内存分配器和信息收集器;
所述内存分配器,用来实现不同内存的分配规则;
所述内存类型信息收集器,用于解析数据流计算图,并根据数据流计算图中每条边的数据源和数据接收节点来确定每个步骤的缓冲区管理规则,注册到地址转换表中的缓冲区将在计算和通信子系统之间共享,并且当两个子系统都不再继续使用缓冲区时,缓冲区将被释放。地址转换表中的页面访问控制机制被用于避免并发读写可能导致的数据不一致问题。
内存分配器包括DMA和RDMA。DMA用来对设备直接进行数据的存取。设备包括显卡、网卡或处理器。 RDMA用来对远程数据进行直接存取。
内存类型信息收集器包括解析模块和数据流模块。解析模块分别与所述数据流模块、DMA和RDMA相连接。数据模块采以用数据流图结构表示数据的流向以及节点分布,用来向所述解析模块提供内存分配信息。解析模块包括解析器,用来对数据块所需的内存进行分类。
我们在TensorFlow之上设计并实现零拷贝数据流,因为它允许使用自定义的内存分配器替换内存分配策略。在我们的内存分配器中:
1、从TensorFlow的数据流计算图收集内存分配的信息。
只有作为跨节点发送或接收的张量(Tensor)会被注册为RDMA缓冲区。因为节点内部跨设备发送或接收的 Tensor(例如显卡到CPU),会经过服务器内部的通信协议(如PCI-e)进行传输,只会被注册为显卡直接访问的缓冲区。内存注册紧随在内存分配之后,而取消内存注册恰好在内存释放之前。
在其开源版本中,TensorFlow使用基于HTTP / 2的gRPC传输其张量,我们对其进行了修改。
2、使用带外RDMA传输来传输数据以绕过RPC系统。我们使用了CPU进行RPC与带外RDMA信道的同步与状态管理。
为了直接支持GPU作为源或接收节点的传输,我们设法在节点内部PCI-e拓扑结构允许时直接进行GPU Direct RDMA,即网卡通过PCI-e直接读写通过同一个PCI-e网桥连接的GPU的显存。
当GPU Direct RDMA通过CPU-socket level link(即不同的非对称内存访问或NUMA节点)的路径上时,我们观察到了一定的性能损失。CPU-socket level link 是跨PCI-e 网桥通信时使用的方法,亦即由 CPU 来作为不同 PCI-e 网桥通信时的中转。因为使用了 CPU 进行中转,显存内部的数据必须先行拷贝至内存子系统,无法直接使用网卡进行跨 PCI-e 网桥读写。因此,这些张量会在发送到GPU和网卡之前先行拷贝到内存中作为临时中转。 RDMA张量缓冲区也分配在与网卡相同的NUMA节点中。 为了简化我们的实现,我们只使用单向RDMA read with invalidate,对于较小的缓冲区,它只需要单次往返来完成张量传输。
我们在测试集群上评估本发明的实现。
实验台由连接到Mellanox MSN2100-BB2F 40GbE RoCE交换机的4台服务器组成。
每个服务器都安装有Mellanox MT27500 40GbE网卡,双6核Intel Xeon E5-2603v4 CPU,2台NVidia K40m GPU以及256 GB DDR4- 2400MHz内存。
无损以太网络的实现采用了通过交换机配置基于优先级的流量控制(PFC)。
我们训练的基于MNIST手写数字识别的小规模数据集的卷积神经网络模型显示,在每次传输的张量为1MB左右时,零拷贝数据流的吞吐量约为TensorFlow 开源版本的3倍;1GB左右时,我们的吞吐量达到了其开源版本的26倍。在张量大小在1MB-1GB这个范围变化时,我们可以得到零拷贝数据流在张量规模越大的时候,获得的性能提升越明显这一结论。在这个范围之外,可以确定零拷贝数据流没有性能损失。
对于大规模的真实用例,我们训练了基于ImageNet物体识别数据集的分布式版本的VGG16 卷积神经网络模型,由Google的性能测试套件提供。模型参数的总大小为528 MB。该模型在同步模式下训练而不是异步模式,因此每个训练节点将计算相同次数的迭代以避免对性能的随机扰动。我们使用与训练节点相同数量的参数服务器,即每个节点一个参数服务器,参数服务器使用主机内存。
在TensorFlow 1.1版本之上,我们的原型显示了基于开源软件gRPC传输的性能提升了7.63倍,其中Google 官方开源的版本在我们的测试集群上表现为每秒处理37.37张图片,而本发明可以达每秒到284.87张图片,实验数据如下所示:
如图2所示,我们基于RDMA的零拷贝数据流并使用具有内存复制的通信专用缓冲区的实现可以在原始的基于gRPC的张量传输上在作业完成时间(通过图像的训练吞吐量测量)上实现整体7.62倍的性能提升,在计算缩放方面,与单GPU相比,它总共扩展到8个GPU,缩放因子为6.6倍(理论上限为8倍)。当没有网络通信时,与单节点多GPU设置(理想情况)相比,其性能达到99.7%。对于我们的RDMA内存分配器,整个张量传输管道中的用于内存注册的平均开销时间约占2.7%,而82.6%的RDMA传输不会导致额外的内存注册开销。我们完全避免了内存中多余的数据块拷贝。
至少可以达到以下有益效果:
本发明一种基于RDMA的零拷贝数据流,主要包括内存分配器和信息收集器;所述内存分配器,用来实现不同内存的分配规则;所述内存类型信息收集器,用于解析数据流计算图,并根据数据流计算图中每条边的数据源和数据接收节点来确定每个步骤的缓冲区管理规则,可以实现张量传输速率高、GPU的高速扩展以及消除不必要的内存拷贝的优点。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种基于RDMA的零拷贝数据流,其特征在于,主要包括内存分配器和信息收集器;
所述内存分配器,用来实现不同内存的分配规则;
所述内存类型信息收集器,用于解析数据流计算图,并根据数据流计算图中每条边的数据源和数据接收节点来确定每个步骤的缓冲区管理规则。
2.根据权利要求1所述的一种基于RDMA的零拷贝数据流,其特征在于,所述内存分配器包括DMA和RDMA。
3.根据权利要求2所述的一种基于RDMA的零拷贝数据流,其特征在于,所述DMA用来对设备直接进行数据的存取。
4.根据权利要求3所述的一种基于RDMA的零拷贝数据流,其特征在于,所述设备包括显卡、网卡或处理器。
5.根据权利要求2所述的一种基于RDMA的零拷贝数据流,其特征在于,所述RDMA用来对远程数据进行直接存取。
6.根据权利要求1所述的一种基于RDMA的零拷贝数据流,其特征在于,所述内存类型信息收集器包括解析模块和数据流模块。
7.根据权利要求2或6所述的一种基于RDMA的零拷贝数据流,其特征在于,所述解析模块分别与所述数据流模块、DMA和RDMA相连接。
8.根据权利要求6所述的一种基于RDMA的零拷贝数据流,其特征在于,所述数据流模块以数据流图结构表示数据的流向以及节点分布,用来向所述解析模块提供内存分配信息。
9.根据权利要求6所述的一种基于RDMA的零拷贝数据流,其特征在于,所述解析模块包括解析器,用来对数据块所需的内存进行分类。
CN201710534535.0A 2017-07-03 2017-07-03 一种基于rdma的零拷贝数据流 Active CN107480080B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710534535.0A CN107480080B (zh) 2017-07-03 2017-07-03 一种基于rdma的零拷贝数据流

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710534535.0A CN107480080B (zh) 2017-07-03 2017-07-03 一种基于rdma的零拷贝数据流

Publications (2)

Publication Number Publication Date
CN107480080A true CN107480080A (zh) 2017-12-15
CN107480080B CN107480080B (zh) 2021-03-23

Family

ID=60595311

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710534535.0A Active CN107480080B (zh) 2017-07-03 2017-07-03 一种基于rdma的零拷贝数据流

Country Status (1)

Country Link
CN (1) CN107480080B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804040A (zh) * 2018-06-05 2018-11-13 上海孚典智能科技有限公司 基于内核旁路技术的Hadoop map-reduce计算加速方法
CN109861967A (zh) * 2018-12-10 2019-06-07 中国人民银行清算总中心 基于Spark Shuffle的远程直接内存访问系统
CN110177118A (zh) * 2019-06-13 2019-08-27 上海海事大学 一种基于rdma的rpc通信方法
CN111241011A (zh) * 2019-12-31 2020-06-05 清华大学 一种分布式持久性内存的全局地址空间管理方法
WO2020156259A1 (zh) * 2019-01-28 2020-08-06 Oppo广东移动通信有限公司 内存管理方法、装置、移动终端及存储介质
CN113064846A (zh) * 2021-04-14 2021-07-02 中南大学 基于Rsockets协议的零拷贝数据传输方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101150488A (zh) * 2007-11-15 2008-03-26 曙光信息产业(北京)有限公司 一种零拷贝网络报文接收方法
TW201211898A (en) * 2010-04-30 2012-03-16 Ibm Zero copy data transmission in a software based RDMA network stack
CN104038569A (zh) * 2014-06-24 2014-09-10 浪潮电子信息产业股份有限公司 一种基于地址映射的集群通信模型
CN104239249A (zh) * 2014-09-16 2014-12-24 国家计算机网络与信息安全管理中心 Pci-e零拷贝dma数据传输方法
US20150026286A1 (en) * 2013-07-18 2015-01-22 Robert O. Sharp Iwarp rdma read extensions
CN104333533A (zh) * 2014-09-12 2015-02-04 北京华电天益信息科技有限公司 一种用于工业控制系统网络的数据包零拷贝获取方法
US20170124451A1 (en) * 2015-10-28 2017-05-04 Google Inc. Stream-based accelerator processing of computational graphs

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101150488A (zh) * 2007-11-15 2008-03-26 曙光信息产业(北京)有限公司 一种零拷贝网络报文接收方法
CN101150488B (zh) * 2007-11-15 2012-01-25 曙光信息产业(北京)有限公司 一种零拷贝网络报文接收方法
TW201211898A (en) * 2010-04-30 2012-03-16 Ibm Zero copy data transmission in a software based RDMA network stack
US20150026286A1 (en) * 2013-07-18 2015-01-22 Robert O. Sharp Iwarp rdma read extensions
CN104038569A (zh) * 2014-06-24 2014-09-10 浪潮电子信息产业股份有限公司 一种基于地址映射的集群通信模型
CN104333533A (zh) * 2014-09-12 2015-02-04 北京华电天益信息科技有限公司 一种用于工业控制系统网络的数据包零拷贝获取方法
CN104239249A (zh) * 2014-09-16 2014-12-24 国家计算机网络与信息安全管理中心 Pci-e零拷贝dma数据传输方法
US20170124451A1 (en) * 2015-10-28 2017-05-04 Google Inc. Stream-based accelerator processing of computational graphs

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804040A (zh) * 2018-06-05 2018-11-13 上海孚典智能科技有限公司 基于内核旁路技术的Hadoop map-reduce计算加速方法
CN108804040B (zh) * 2018-06-05 2020-07-07 上海孚典智能科技有限公司 基于内核旁路技术的Hadoop map-reduce计算加速方法
CN109861967A (zh) * 2018-12-10 2019-06-07 中国人民银行清算总中心 基于Spark Shuffle的远程直接内存访问系统
WO2020156259A1 (zh) * 2019-01-28 2020-08-06 Oppo广东移动通信有限公司 内存管理方法、装置、移动终端及存储介质
CN110177118A (zh) * 2019-06-13 2019-08-27 上海海事大学 一种基于rdma的rpc通信方法
CN110177118B (zh) * 2019-06-13 2022-03-29 上海海事大学 一种基于rdma的rpc通信方法
CN111241011A (zh) * 2019-12-31 2020-06-05 清华大学 一种分布式持久性内存的全局地址空间管理方法
CN111241011B (zh) * 2019-12-31 2022-04-15 清华大学 一种分布式持久性内存的全局地址空间管理方法
CN113064846A (zh) * 2021-04-14 2021-07-02 中南大学 基于Rsockets协议的零拷贝数据传输方法

Also Published As

Publication number Publication date
CN107480080B (zh) 2021-03-23

Similar Documents

Publication Publication Date Title
CN107480080A (zh) 一种基于rdma的零拷贝数据流
US11237880B1 (en) Dataflow all-reduce for reconfigurable processor systems
Zhu et al. PHDFS: Optimizing I/O performance of HDFS in deep learning cloud computing platform
US20180307972A1 (en) Local multicast in single-host multi-gpu machine for distributed deep learning systems
US10768856B1 (en) Memory access for multiple circuit components
US11392740B2 (en) Dataflow function offload to reconfigurable processors
WO2017156968A1 (zh) 神经网络的计算方法、系统及其装置
CN109426648A (zh) 用于由智能网络接口控制器处理网络分组的技术
WO2022116424A1 (zh) 交通流预测模型训练方法、装置、电子设备及存储介质
CN112866059B (zh) 一种基于人工智能应用的无损网络性能测试方法和装置
JP7389231B2 (ja) 同期ネットワーク
US11336476B2 (en) Scalable in-network computation for massively-parallel shared-memory processors
CN110442532A (zh) 用于与主机相链接的设备的全球可存储存储器
CN107111576A (zh) 发布的中断架构
CN113642734A (zh) 一种深度学习模型的分布式训练方法、装置以及计算设备
CN113449839A (zh) 一种分布式训练方法、梯度通信方法、装置以及计算设备
Thao Nguyen et al. Efficient MPI‐AllReduce for large‐scale deep learning on GPU‐clusters
CN114564434B (zh) 一种通用多核类脑处理器、加速卡及计算机设备
CN116070682A (zh) 神经元计算机操作系统的snn模型动态映射方法及装置
Cui et al. Scalable deep learning on distributed GPUs with a GPU-specialized parameter server
CN105718349B (zh) 跨管芯接口监听或全局观察消息排序
US12020035B2 (en) Programmatically controlled data multicasting across multiple compute engines
CN116246062A (zh) 使用图像/文本对执行语义分割训练
US20210004658A1 (en) System and method for provisioning of artificial intelligence accelerator (aia) resources
US20230124193A1 (en) Distributed Processing Node and Distributed Processing System

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Chen Kai

Inventor after: Yang Qiang

Inventor before: Yi Bairen

Inventor before: Chen Li

Inventor before: Chen Kai

CB03 Change of inventor or designer information
TA01 Transfer of patent application right

Effective date of registration: 20201204

Address after: 518000 1803, block C, Dachong business center, Nanshan District, Shenzhen City, Guangdong Province

Applicant after: Shenzhen Zhixing Technology Co., Ltd

Address before: Room 1701, 17 / F, Shui on centre, 6-8 Harbour Road, Wan Chai, Hong Kong, China

Applicant before: RED BIRD TECHNOLOGY Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant