CN114428757B - 一种架构可重构的计算装置及其重构方法 - Google Patents
一种架构可重构的计算装置及其重构方法 Download PDFInfo
- Publication number
- CN114428757B CN114428757B CN202111477263.8A CN202111477263A CN114428757B CN 114428757 B CN114428757 B CN 114428757B CN 202111477263 A CN202111477263 A CN 202111477263A CN 114428757 B CN114428757 B CN 114428757B
- Authority
- CN
- China
- Prior art keywords
- node
- pcie
- cpu
- establishing
- mapping
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 238000013507 mapping Methods 0.000 claims abstract description 47
- 239000013598 vector Substances 0.000 claims abstract description 12
- 238000010586 diagram Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Multi Processors (AREA)
Abstract
本发明公开了一种架构可重构的计算装置及其重构方法,装置包括CPU节点、IO节点、PCIe交换节点和Ethernet交换节点;其中,PCIe交换节点用于CPU与PCIe设备互连,Ethernet交换节点用于配置管理。方法包括:申请CPU节点和IO节点;初始化PCIe设备;建立设备配置空间映射;CPU发现新设备并分配设备地址空间;建立设备地址空间映射;建立PCIe设备中断向量与CPU中断向量表的映射:加载设备驱动程序。本发明通过互连系统设置CPU与PCIe设备之间的互连关系,对CPU的指令集与运行的操作系统透明,不需要开发额外的管理软件,支持所有能够连接PCIe设备的CPU和操作系统。
Description
技术领域
本发明属于分布式计算装置技术领域,特别是一种架构可重构的计算装置及其重构方法。
背景技术
随着云计算技术的发展和应用的普及,云计算中心成为了现代信息系统重要组成部分。在云计算中心中,如何实现资源的共享,提升资源利用率是一个重要的研究方向。
为了提升资源的利用率,云计算普遍采用虚拟化技术,将物理服务器虚拟成多个虚拟机供用户使用。传统的虚拟机只能分配所在物理服务器上IO资源,IO资源数量受到限制。针对此问题,专利《一种支持虚拟机共享IO设备的多机计算装置与IO设备共享方法》通过开发Linux内核模块实现多个物理服务器IO设备的共享,虚拟机可以利用多个服务器上IO资源。但该方法需要针对不同CPU和操作系统开发管理软件(如上述内核模块),使用范围受限。
发明内容
本发明的目的在于针对现有技术存在的问题,提供一种架构可重构的计算装置与架构重构方法,通过互连系统设置CPU与PCIe设备之间的互连关系,对CPU的指令集与运行的操作系统透明,不需要开发额外的管理软件,支持所有能够连接PCIe设备的CPU和操作系统。
实现本发明目的的技术解决方案为:一种架构可重构的计算装置,所述装置包括CPU节点、IO节点、PCIe交换节点和Ethernet交换节点;其中,PCIe交换节点用于CPU与PCIe设备互连,Ethernet交换节点用于配置管理。
进一步地,所述CPU节点和IO节点可通过PCIe交换节点构成不同架构的计算机,CPU节点通过地址映射的方式访问IO节点上PCIe设备并响应IO节点上PCIe设备的中断。
进一步地,所述CPU节点包含CPU、PCIe交换器和管理器,并通过PCIe交换器连接到PCIe交换节点,通过管理器连接到Ethernet交换节点。
进一步地,所述CPU节点中的管理器为PCIe交换器的主设备,连接PCIe交换器与CPU的端口设置为非透明模式,连接PCIe交换器与PCIe节点的端口设置为非透明模式。
进一步地,所述IO节点包含PCIe设备、PCIe交换器和管理器,并通过PCIe交换器连接到PCIe交换节点,通过管理器连接到Ethernet交换节点。
进一步地,所述IO节点中的管理器为PCIe交换器的主设备,连接PCIe交换器与PCIe设备的端口设置为透明模式,连接PCIe交换器与PCIe节点的端口设置为非透明模式。
一种架构可重构的计算装置的重构方法,所述方法包括以下步骤:
步骤1:申请CPU节点和IO节点;
步骤2:初始化PCIe设备;
步骤3:建立设备配置空间映射;
步骤4:CPU发现新设备并分配设备地址空间;
步骤5:建立设备地址空间映射;
步骤6:建立PCIe设备中断向量与CPU中断向量表的映射;
步骤7:加载设备驱动程序。
进一步地,步骤2所述初始化PCIe设备是通过IO节点上的管理器初始化PCIe设备;
步骤3所述建立设备配置空间映射是通过CPU节点和IO节点上的管理器实现,包括如下步骤:
步骤3.1:建立IO节点上的PCIe交换器与PCIe交换节点之间的空间映射;
步骤3.2:建立PCIe交换节点与CPU节点上的PCIe交换器之间的空间映射;
步骤3.3:建立CPU节点上的PCIe交换器与CPU之间的空间映射。
进一步地,步骤5所述建立设备地址空间映射是通过CPU节点和IO节点上的管理器实现,包括如下步骤:
步骤5.1:建立IO节点上的PCIe交换器与PCIe交换节点之间的空间映射;
步骤5.2:建立PCIe交换节点与CPU节点上的PCIe交换器之间的空间映射;
步骤5.3:建立CPU节点上的PCIe交换器与CPU之间的空间映射。
进一步地,步骤6所述建立PCIe设备中断向量与CPU中断向量表的映射是通过CPU节点和IO节点上的管理器实现,包括如下步骤:
步骤6.1:建立IO节点上的PCIe交换器与PCIe交换节点之间的空间映射;
步骤6.2:建立PCIe交换节点与CPU节点上的PCIe交换器之间的空间映射;
步骤6.3:建立CPU节点上的PCIe交换器与CPU之间的空间映射。
本发明与现有技术相比,其显著优点为:本发明通过互连系统设置CPU与PCIe设备之间的互连关系,对CPU的指令集与运行的操作系统透明,不需要开发额外的管理软件,支持所有能够连接PCIe设备的CPU和操作系统。
下面结合附图对本发明作进一步详细描述。
附图说明
图1为本发明架构可重构的计算装置硬件组成图。
图2为本发明架构可重构的计算装置存储空间转换图。
图3为本发明架构重构方法流程图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本发明提供一种架构可重构的计算装置与架构重构方法,具体实施过程如下:
如图1所示,架构可重构的计算装置包含CPU节点、IO节点、PCIe交换节点和Ethernet交换节点,PCIe交换节点用于CPU与PCIe设备互连,Ethernet交换节点用于配置管理。CPU节点包含CPU、PCIe交换器和管理器,并通过PCIe交换器连接到PCIe交换节点,通过管理器连接到Ethernet交换节点;CPU节点中的管理器为PCIe交换器的主设备,连接PCIe交换器与CPU的端口设置为非透明桥,连接PCIe交换器与PCIe节点的端口设置为非透明桥。IO节点包含PCIe设备、PCIe交换器和管理器,并通过PCIe交换器连接到PCIe交换节点,通过管理器连接到Ethernet交换节点;IO节点中的管理器为PCIe交换器的主设备,连接PCIe交换器与PCIe设备的端口设置为透明桥,连接PCIe交换器与PCIe节点的端口设置为非透明桥。
PCIe交换节点,Ethernet交换节点,CPU节点上PCIe交换器、管理器以及IO节点上PCIe交换器、管理器构成互连系统。本发明主要通过互连系统设置CPU与PCIe设备之间的互连关系,可构成不同架构的计算机(如图1中的阴影部分所示)。如图2所示,CPU节点通过地址映射的方式访问IO节点上PCIe设备并响应IO节点上PCIe设备的中断,结合图3,架构重构方法包含如下步骤:
步骤1:申请CPU节点和IO节点。
步骤2:通过IO节点上的管理器初始化PCIe设备。
步骤3:通过CPU节点和IO节点上的管理器建立设备配置空间映射:
步骤3.1:建立IO节点上的PCIe交换器与PCIe交换节点之间的空间映射;
步骤3.2:建立PCIe交换节点与CPU节点上的PCIe交换器之间的空间映射;
步骤3.3:建立CPU节点上的PCIe交换器与CPU之间的空间映射。
步骤4:CPU发现新设备并分配设备地址空间。
步骤5:通过CPU节点和IO节点上的管理器建立设备地址空间映射:
步骤5.1:建立IO节点上的PCIe交换器与PCIe交换节点之间的空间映射;
步骤5.2:建立PCIe交换节点与CPU节点上的PCIe交换器之间的空间映射;
步骤5.3:建立CPU节点上的PCIe交换器与CPU之间的空间映射。
步骤6:通过CPU节点和IO节点上的管理器建立PCIe设备中断向量与CPU中断向量表的映射:
步骤6.1:建立IO节点上的PCIe交换器与PCIe交换节点之间的空间映射;
步骤6.2:建立PCIe交换节点与CPU节点上的PCIe交换器之间的空间映射;
步骤6.3:建立CPU节点上的PCIe交换器与CPU之间的空间映射。
步骤7:加载设备驱动程序。
本发明通过互连系统设置CPU与PCIe设备之间的互连关系,对CPU的指令集与运行的操作系统透明,不需要开发额外的管理软件,支持所有能够连接PCIe设备的CPU和操作系统。
以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (7)
1.一种架构可重构的计算装置,其特征在于,所述装置包括CPU节点、IO节点、PCIe交换节点和Ethernet交换节点;其中,PCIe交换节点用于CPU与PCIe设备互连,Ethernet交换节点用于配置管理;所述CPU节点包含CPU、PCIe交换器和管理器,并通过CPU节点中的PCIe交换器连接到PCIe交换节点,通过CPU节点中的管理器连接到Ethernet交换节点;所述CPU节点和IO节点可通过PCIe交换节点构成不同架构的计算机,CPU节点通过地址映射的方式访问IO节点上PCIe设备并响应IO节点上PCIe设备的中断;所述IO节点包含PCIe设备、PCIe交换器和管理器,并通过IO节点中的PCIe交换器连接到PCIe交换节点,通过IO节点中的管理器连接到Ethernet交换节点。
2.根据权利要求1所述的架构可重构的计算装置,其特征在于,所述CPU节点中的管理器为CPU节点中的PCIe交换器的主设备,连接CPU节点中的PCIe交换器与CPU 的端口设置为非透明模式,连接CPU节点中的PCIe交换器与PCIe交换节点的端口设置为非透明模式。
3.根据权利要求1所述的架构可重构的计算装置,其特征在于,所述IO节点中的管理器为IO节点中的PCIe交换器的主设备,连接IO节点中的PCIe交换器与IO节点中的PCIe设备的端口设置为透明模式,连接IO节点中的PCIe交换器与PCIe交换节点的端口设置为非透明模式。
4.基于权利要求1至3任意一项所述架构可重构的计算装置的重构方法,其特征在于,所述方法包括以下步骤:
步骤1:申请CPU节点和IO节点;
步骤2:初始化PCIe设备;
步骤3:建立设备配置空间映射;
步骤4:CPU发现新设备并分配设备地址空间;
步骤5:建立设备地址空间映射;
步骤6:建立PCIe设备中断向量与CPU中断向量表的映射;
步骤7:加载设备驱动程序。
5.根据权利要求4所述的重构方法,其特征在于,步骤2所述初始化PCIe设备是通过IO节点上的管理器初始化PCIe设备;
步骤3所述建立设备配置空间映射是通过CPU节点和IO节点上的管理器实现,包括如下步骤:
步骤3.1:建立IO节点上的PCIe交换器与PCIe交换节点之间的空间映射;
步骤3.2:建立PCIe交换节点与CPU节点上的PCIe交换器之间的空间映射;
步骤3.3:建立CPU节点上的PCIe交换器与CPU之间的空间映射。
6.根据权利要求4所述的重构方法,其特征在于,步骤5所述建立设备地址空间映射是通过CPU节点和IO节点上的管理器实现,包括如下步骤:
步骤5.1:建立IO节点上的PCIe交换器与PCIe交换节点之间的空间映射;
步骤5.2:建立PCIe交换节点与CPU节点上的PCIe交换器之间的空间映射;
步骤5.3:建立CPU节点上的PCIe交换器与CPU之间的空间映射。
7.根据权利要求4所述的重构方法,其特征在于,步骤6所述建立PCIe设备中断向量与CPU中断向量表的映射是通过CPU节点和IO节点上的管理器实现,包括如下步骤:
步骤6.1:建立IO节点上的PCIe交换器与PCIe交换节点之间的空间映射;
步骤6.2:建立PCIe交换节点与CPU节点上的PCIe交换器之间的空间映射;
步骤6.3:建立CPU节点上的PCIe交换器与CPU之间的空间映射。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111477263.8A CN114428757B (zh) | 2021-12-06 | 2021-12-06 | 一种架构可重构的计算装置及其重构方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111477263.8A CN114428757B (zh) | 2021-12-06 | 2021-12-06 | 一种架构可重构的计算装置及其重构方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114428757A CN114428757A (zh) | 2022-05-03 |
CN114428757B true CN114428757B (zh) | 2024-05-17 |
Family
ID=81310599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111477263.8A Active CN114428757B (zh) | 2021-12-06 | 2021-12-06 | 一种架构可重构的计算装置及其重构方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114428757B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115543894B (zh) * | 2022-11-30 | 2023-05-26 | 苏州浪潮智能科技有限公司 | 存储系统、数据处理方法及装置、存储介质及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102722414A (zh) * | 2012-05-22 | 2012-10-10 | 中国科学院计算技术研究所 | 用于多根i/o 虚拟化共享系统的i/o 资源管理方法 |
CN103353861A (zh) * | 2013-06-18 | 2013-10-16 | 中国科学院计算技术研究所 | 实现分布式i/o资源池化的方法及装置 |
WO2016037503A1 (zh) * | 2014-09-10 | 2016-03-17 | 华为技术有限公司 | PCIe拓扑的配置方法和装置 |
CN105993009A (zh) * | 2013-11-18 | 2016-10-05 | 华为技术有限公司 | 通过非透明桥向PCIe集群中的计算资源传送MSI-X中断的方法和装置 |
CN106844263A (zh) * | 2016-12-26 | 2017-06-13 | 中国科学院计算技术研究所 | 一种基于可配置的多处理器计算机系统及实现方法 |
CN108628800A (zh) * | 2018-05-08 | 2018-10-09 | 济南浪潮高新科技投资发展有限公司 | 一种动态可重构的智能计算集群及其配置方法 |
CN111158849A (zh) * | 2019-12-09 | 2020-05-15 | 中国船舶重工集团公司第七一六研究所 | 支持虚拟机共享io设备的多机计算装置及其io设备共享方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8463977B2 (en) * | 2010-09-09 | 2013-06-11 | Stephen Dale Cooper | Use of PCI express for CPU-to-CPU communication |
US10481834B2 (en) * | 2018-01-24 | 2019-11-19 | Samsung Electronics Co., Ltd. | Erasure code data protection across multiple NVME over fabrics storage devices |
-
2021
- 2021-12-06 CN CN202111477263.8A patent/CN114428757B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102722414A (zh) * | 2012-05-22 | 2012-10-10 | 中国科学院计算技术研究所 | 用于多根i/o 虚拟化共享系统的i/o 资源管理方法 |
CN103353861A (zh) * | 2013-06-18 | 2013-10-16 | 中国科学院计算技术研究所 | 实现分布式i/o资源池化的方法及装置 |
CN105993009A (zh) * | 2013-11-18 | 2016-10-05 | 华为技术有限公司 | 通过非透明桥向PCIe集群中的计算资源传送MSI-X中断的方法和装置 |
WO2016037503A1 (zh) * | 2014-09-10 | 2016-03-17 | 华为技术有限公司 | PCIe拓扑的配置方法和装置 |
CN106844263A (zh) * | 2016-12-26 | 2017-06-13 | 中国科学院计算技术研究所 | 一种基于可配置的多处理器计算机系统及实现方法 |
CN108628800A (zh) * | 2018-05-08 | 2018-10-09 | 济南浪潮高新科技投资发展有限公司 | 一种动态可重构的智能计算集群及其配置方法 |
CN111158849A (zh) * | 2019-12-09 | 2020-05-15 | 中国船舶重工集团公司第七一六研究所 | 支持虚拟机共享io设备的多机计算装置及其io设备共享方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114428757A (zh) | 2022-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190089574A1 (en) | Computer Cluster Arrangement for Processing a Computation Task and Method for Operation Thereof | |
US10452580B2 (en) | Method and system for providing remote direct memory access to virtual machines | |
US20140358972A1 (en) | Interconnect partition binding api, allocation and management of application-specific partitions | |
US11403141B2 (en) | Harvesting unused resources in a distributed computing system | |
CN107491340B (zh) | 跨物理机的巨型虚拟机实现方法 | |
KR20100058670A (ko) | 크로스-시스템의 프록시-기반 태스크 오프로딩을 위한 장치, 시스템 및 방법 | |
US10558440B2 (en) | Tightly integrated accelerator functions | |
US10404800B2 (en) | Caching network fabric for high performance computing | |
WO2022037265A1 (zh) | 边缘计算中心一体化服务器 | |
CN106844263B (zh) | 一种基于可配置的多处理器计算机系统及实现方法 | |
Neuwirth et al. | Scalable communication architecture for network-attached accelerators | |
CN111488308A (zh) | 一种支持不同架构多处理器扩展的系统和方法 | |
CN114662088A (zh) | 用于提供对内核和用户空间存储器区域的访问的技术 | |
CN114428757B (zh) | 一种架构可重构的计算装置及其重构方法 | |
US11138146B2 (en) | Hyperscale architecture | |
Guleria et al. | EMF: Disaggregated GPUs in datacenters for efficiency, modularity and flexibility | |
US20210055948A1 (en) | Fast thread execution transition | |
WO2021223744A1 (zh) | 实现热迁移的方法、芯片、板卡和存储介质 | |
US11748136B2 (en) | Event notification support for nested virtual machines | |
CN112579245B (zh) | 异构cpu的计算核虚拟化方法 | |
CN113392052A (zh) | 一种基于四路服务器的bios系统、方法及计算机可读存储介质 | |
Gerangelos et al. | vphi: Enabling xeon phi capabilities in virtual machines | |
CN111158849A (zh) | 支持虚拟机共享io设备的多机计算装置及其io设备共享方法 | |
CN109032510B (zh) | 基于分布式结构的处理数据的方法和装置 | |
Yin et al. | A user-space virtual device driver framework for Kubernetes |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 222001 No.18 Shenghu Road, Lianyungang City, Jiangsu Province Applicant after: The 716th Research Institute of China Shipbuilding Corp. Address before: 222001 No.18 Shenghu Road, Lianyungang City, Jiangsu Province Applicant before: 716TH RESEARCH INSTITUTE OF CHINA SHIPBUILDING INDUSTRY Corp. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |