WO2022120992A1 - Système et procédé de partage de mémoire sur la base d'un environnement virtuel - Google Patents

Système et procédé de partage de mémoire sur la base d'un environnement virtuel Download PDF

Info

Publication number
WO2022120992A1
WO2022120992A1 PCT/CN2020/139462 CN2020139462W WO2022120992A1 WO 2022120992 A1 WO2022120992 A1 WO 2022120992A1 CN 2020139462 W CN2020139462 W CN 2020139462W WO 2022120992 A1 WO2022120992 A1 WO 2022120992A1
Authority
WO
WIPO (PCT)
Prior art keywords
memory
coordinator
module
access
data
Prior art date
Application number
PCT/CN2020/139462
Other languages
English (en)
Chinese (zh)
Inventor
李永康
王洋
须成忠
Original Assignee
中国科学院深圳先进技术研究院
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 中国科学院深圳先进技术研究院 filed Critical 中国科学院深圳先进技术研究院
Publication of WO2022120992A1 publication Critical patent/WO2022120992A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the invention relates to the technical field of memory sharing, in particular to a memory sharing system and method based on a virtual environment.
  • the remote direct memory access (RDMA module) technology offloads the processing of the protocol stack to the network card, and the network card directly uses the DMA technology to access the memory data after parsing the data packet, avoiding multiple copies of the data.
  • the CPU is freed from the network data transmission, which improves the efficiency of CPU usage.
  • GAM implements a memory sharing model on a physically distributed cluster and can manage free memory distributed among multiple nodes to provide a unified memory model.
  • GAM provides a set of user-friendly APIs for memory operations.
  • GAM implements the cache of data on each host, and deeply thinks about cache coherence, distinguishes the different states of memory pages when they are shared, and designs data when reading and writing data. And consistency handling when data fails.
  • GAM also adopts the method of mixing communication primitives in the use of the RDMA module, and only uses the unilateral primitive WRITE in data transmission.
  • the present invention provides a memory sharing system and method based on a virtual environment, so as to solve the problem that the existing memory sharing method cannot efficiently realize memory sharing on a virtual cluster.
  • the present invention provides a memory sharing system based on a virtual environment, which includes: at least two hosts, each host includes at least one virtual machine, a coordinator and a memory module, a virtual machine, a coordinator,
  • the memory modules are electrically connected to each other, and the coordinator of the local host and the coordinator of the remote host are connected by remote communication through the RDMA module;
  • the virtual machine is used to receive the access request initiated by the application and send the access request to the coordinator;
  • the coordinator queries the memory Whether the memory data requested by the access request exists in the module; if so, return the memory data to the application; if not, the coordinator sends an access request to the coordinator of the remote host that stores the memory data through the RDMA module.
  • the memory module includes shared memory, cache, and address space allocated by the operating system and application programs.
  • the cache is used to cache the memory data of the remote host. After the coordinator receives the access request, it queries whether there is memory data in the cache. .
  • an API interface, a library function and a virtual PCI device are provided in the virtual machine, and the application program calls the library function through the API interface to operate the virtual PCI device to access the memory module.
  • the coordinator includes a communication module, a monitoring module and a message processing module;
  • the communication module is used to implement communication between different virtual machines on the same host or between different hosts;
  • the monitoring module is used to monitor the activities of the virtual machines, And by analyzing the access log of the memory module to distinguish the access type of each memory page, and configure the corresponding cache policy for the memory pages of different access types according to the preset policy rules;
  • the message processing module is used for the message received by the communication module. Parse processing and distribute pre-configured message handlers for different types of messages.
  • the communication modules between different hosts implement the data transmission process through the SEND/RECV bilateral primitive, the WRITE unilateral primitive or the WRITE_WITH_IMM primitive of the RDMA module.
  • the monitoring module analyzes the access log of the memory module to distinguish the access type of each memory page, and configures corresponding cache policies for memory pages of different access types according to preset policy rules, including; When the number of accesses by the target remote host reaches the first preset condition, the access type of the memory page is divided into exclusive access, and the memory page is migrated to the memory module of the target remote host; when the record of read data on the memory page reaches the second In the preset condition, the access type of the memory page is divided into read sharing, and the memory page is stored on the remote host with the highest frequency of accessing the memory page, and the permission is set to read-only; when the record of written data on the memory page reaches In the third preset condition, the access type of the memory page is divided into write sharing, and synchronization of the memory page to other remote hosts is prohibited.
  • the monitoring module generates an access log when monitoring that the remote host accesses the memory module of the local host, and the access log records the access host, the access address and the access type.
  • the communication between the virtual machine and the coordinator is implemented by way of process communication.
  • the present invention also provides a virtual environment-based memory sharing method, which is applied to one of the above-mentioned virtual environment-based memory sharing systems.
  • the method includes: when the virtual machine receives an access request initiated by an application program.
  • the coordinator sends the access request to the coordinator; the coordinator analyzes the access request and determines whether the access address of the access request is the local host or the remote host; if it is the local host, it obtains the data requested by the access request from the local host and feeds it back to the application ; If it is a remote host, judge whether the data requested by the access request is cached in the memory module; when the data requested by the access request is cached in the memory module, the data requested by the cached access request is fed back to the application; When the data requested by the access request does not exist in the module, the coordinator sends an access request to the coordinator of the remote host through the RDMA module, and feeds back the data obtained by the access to the application program.
  • the memory sharing system based on the virtual environment of the present invention sets up a coordinator in the host, and realizes data communication between different virtual machines in the host through the coordinator to realize memory sharing, and aims at different hosts. Between them, it uses the RDMA module to realize the communication between the coordinators of different hosts, so as to realize the communication between different hosts, and finally realize the memory sharing of the entire virtual cluster, and the use of the RDMA module effectively reduces the data interaction between different hosts. Delay.
  • FIG. 1 is a schematic structural diagram of a memory sharing system based on a virtual environment according to an embodiment of the present invention
  • FIG. 2 is a schematic structural diagram of a memory module of a memory sharing system based on a virtual environment according to an embodiment of the present invention
  • FIG. 3 is a schematic structural diagram of a virtual machine of a memory sharing system based on a virtual environment according to an embodiment of the present invention
  • FIG. 4 is a schematic structural diagram of a coordinator of a virtual environment-based memory sharing system according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of an operation flow that needs to be performed when a cached memory page of a memory sharing system based on a virtual environment is modified according to an embodiment of the present invention
  • FIG. 6 is a schematic flowchart of a memory sharing method based on a virtual environment according to an embodiment of the present invention.
  • first”, “second” and “third” in the present invention are only used for description purposes, and should not be understood as indicating or implying relative importance or implying the number of indicated technical features. Thus, a feature defined as “first”, “second”, “third” may expressly or implicitly include at least one of that feature.
  • "a plurality of” means at least two, such as two, three, etc., unless otherwise expressly and specifically defined. All directional indications (such as up, down, left, right, front, back, etc.) in the embodiments of the present invention are only used to explain the relative positional relationship between various components under a certain posture (as shown in the accompanying drawings).
  • FIG. 1 is a schematic structural diagram of a memory sharing system based on a virtual environment according to an embodiment of the present invention.
  • the virtual environment-based memory sharing system 100 includes: at least two hosts 1, each host 1 includes at least one virtual machine 2, a coordinator 3 and a memory module 4, the virtual machine 2, the coordinator 3 , the memory modules 4 are electrically connected to each other, and the coordinator 3 of the local host and the coordinator 3 of the remote host are connected by remote communication through the RDMA module 5; the virtual machine 2 is used to receive the access request initiated by the application program, and send the access request to the coordinator.
  • Coordinator 3 inquires whether there is memory data requested by the access request in memory module 4; if so, returns the memory data to the application; The coordinator 3 of the remote host issues an access request.
  • the virtual environment-based memory sharing system 100 is developed based on KVM/QEMU, wherein the virtual machine 2 runs on KVM.
  • the last simulated virtual machine of QEMU is used to simulate the shared memory on the cluster.
  • Multiple virtual machines 2 can be built on the same host 1. It should be noted that when an application initiates an access request to the virtual machine of host A, host A is the local host, and when the memory data accessed by the application is in the memory module of host B, then host B is the remote host.
  • the virtual machine 2 when the virtual machine 2 receives the access request initiated by the application, it sends the access request to the coordinator 3; the coordinator 3 analyzes the access request, and judges whether the access address of the access request is the local host or the remote host; if it is the local host, Then obtain the memory data requested by the access request from the local host and feed it back to the application; if it is a remote host, then determine whether the memory data requested by the access request is cached in the memory module 4; When the memory data requested, the memory data requested by the cached access request is fed back to the application program; when the memory data requested by the access request does not exist in the memory module 4, the coordinator 3 sends the data to the coordinator of the remote host through the RDMA module 5 3 Send an access request, and feed back the memory data obtained by the access to the application.
  • the memory sharing system based on the virtual environment of this embodiment sets the coordinator 3 in the host, and realizes the data communication between different virtual machines 2 in the host 1 through the coordinator 3 to realize memory sharing. During the time, it realizes the communication between the coordinators 3 of different hosts 1 by using the RDMA module 5, so as to realize the communication between different hosts 1, and finally realize the memory sharing of the whole virtual cluster, and the RDMA module 5 effectively reduces the different Latency of data exchange between hosts 1.
  • the memory module 4 includes a shared memory 41, a cache 42 and an address space 43 allocated by the operating system and application programs.
  • the cache 42 is used to cache the memory data of the remote host. After the coordinator 3 receives the access request, , query whether the memory data exists in the cache 42 .
  • the size of the shared memory 41 of each host 1 is indicated by the command line during system initialization, and when the shared memory 41 is actually allocated, a fixed-size cache 42 needs to be allocated, and the cache 42 is used to cache remote Host memory data. It should be noted that the memory data in the cache is invisible to the virtual machine 2. Therefore, when the virtual machine sends an access request to the coordinator 3, the coordinator 3 queries the cache 42 whether there is the memory data to be queried. , if it exists, directly return the memory data to the application, if not, send the access request to the remote host.
  • the virtual machine 2 is provided with an API interface 21 , a library function 22 and a virtual PCI device 23 , and the application calls the library function 22 through the API interface 21 to operate the virtual PCI device 23 to access the memory module 4 .
  • the virtual PCI device 23 is established based on QEMU, and the number of registers and message processing functions are expanded.
  • the library function 22 includes a library function provided by QEMU and a preconfigured library function for the response message.
  • the coordinator 3 includes a communication module 31, a monitoring module 32 and a message processing module 33;
  • the communication module 31 is used to implement communication between different virtual machines 2 on the same host 1 or between different hosts;
  • monitoring The module 32 is used to monitor the activity of the virtual machine 2, and to distinguish the access type of each memory page by analyzing the access log of the memory module 4, and configure the corresponding cache policy for the memory pages of different access types according to preset policy rules;
  • message The processing module 33 is configured to parse and process the messages received by the communication module, and distribute pre-configured message processing functions for different types of messages.
  • the coordinator 2 is a loadable module responsible for tasks such as maintaining the virtual machine information of the host 1, communicating with the virtual machine 2, maintaining the shared memory on the host 1, and communicating with the remote host.
  • the communication module 31 is responsible for completing the communication between the virtual machines 2. Since the same host and different hosts have great differences in communication, in this embodiment, the communication is divided into two levels, one is the same host 1 The communication between different virtual machines 2 and the virtual machine 2 and the coordinator 3, and the second is the communication between different hosts 1. The communication between the virtual machine 2 and the coordinator 3 is implemented in a process manner, and does not involve data transmission on the network, so the transmission efficiency is higher.
  • the communication module 31 between different hosts 1 implements the data transmission process through the SEND/RECV bilateral primitive, the WRITE unilateral primitive or the WRITE_WITH_IMM primitive of the RDMA module 5 .
  • the communication module 31 transmits an access request or a control message of memory page failure
  • data transmission is realized through the SEND/RECV bilateral primitive; when a large amount of data is transmitted between the communication modules 31, the WRITE unilateral primitive is used.
  • the data transmission is realized by the WRITE_WITH_IMM primitive; when the response message is transmitted between the communication modules 31, the data transmission is realized through the WRITE_WITH_IMM primitive.
  • the memory page invalidation refers to the memory page of the remote host stored in the cache in the local host, and the data transmission change of the memory page of the remote host is that the memory page stored in the cache is invalidated.
  • connections between different hosts 1 are based on RDMA.
  • the idea of software-defined networking is used to separate the control path and the data path, and different data transmission sources are used on these two paths.
  • the transmission of the control path and the data path is divided into two connections, specifically:
  • the data they carry is usually small.
  • the SEND/RECV bilateral primitive in RDMA module 5 can be used. In this way, the participation of the CPU is required.
  • the receiver needs to use RECV to prepare for receiving data, and then the sender uses SEND to send data to ensure the reception. Fang received the message.
  • the host 1 needs to return a response packet after receiving the control message to determine the received message. For this type of message, it is usually only necessary to carry the data in the message header. Therefore, the WRITE_WITH_IMM primitive is used To transmit such data, the WRITE_WITH_IMM primitive does not carry payload during data transmission, reducing the resources consumed by data transmission.
  • the monitoring module 32 is responsible for monitoring the opening, closing and other activities of the virtual machine 2, and is responsible for analyzing the access log of the memory module 4, thereby distinguishing the access type of each memory page in the memory module 4, and according to the preset policy rules for different access types
  • the corresponding cache policy is configured for the memory page.
  • the monitoring module 32 generates an access log when monitoring that the remote host accesses the memory module 4 of the local host, and the access log records the contents of the access host, the access address, and the access type.
  • the message processing module 33 is responsible for analyzing and processing the messages received by the communication module 31. For different types of messages, the message types are confirmed according to the message structure, and then the messages are distributed to different message processing functions for processing. Among them, the type of the message can be divided according to the access object, such as the message of accessing the local host or the message of accessing the remote host, and can also broadcast the message of the newly created virtual machine 2 to the virtual cluster when the newly created virtual machine 2 is initialized, or It is a message or the like of the size of the shared memory of each host 1 .
  • the message processing function is preset.
  • the monitoring module 31 analyzes the access log of the memory module 4 to distinguish the access type of each memory page, and according to the preset policy rule is:
  • the cache policies corresponding to the memory page configurations of different access types are as follows:
  • the access type of the memory page is divided into exclusive access, and the memory page is migrated to the memory module 4 of the target remote host.
  • the first preset condition is preset.
  • the access type at this time is divided into exclusive access.
  • the memory page is migrated to the remote host, and the coordinator 3 of the remote host confirms the actual storage address in the memory module 4. If other remote hosts occasionally access the memory page, a notification is sent to the remote host. to confirm that the remote host can access the memory page.
  • the access type of the memory page is divided into read sharing, and the memory page is stored on the remote host with the highest frequency of accessing the memory page, and the permissions are set. is read-only.
  • the second preset condition is preset.
  • FIG. 5 shows the operation process that needs to be done when the cached memory page is modified.
  • node0 issues a write request
  • node1 is the node that retains the original memory page
  • node2 is the node that has cached data
  • node0 sends a write request
  • node1 will reply to the request to node0 and process data access.
  • node1 will send a notification of memory page invalidation to node2 and other nodes that have memory page cache, and node2, etc. will modify the flag of the cached page and reply the response packet.
  • node2 When subsequent applications need to access again, the data needs to be re-cached to the local host.
  • the third preset condition is preset.
  • the access type of the memory page is divided into write sharing, because the data of the memory page keeps changing when the write operation occurs.
  • the memory pages are cached on multiple remote hosts, considering the maintenance of data consistency, information needs to be exchanged frequently between multiple remote hosts, requiring a lot of synchronization operations, and even involving a lot of lock operations, which greatly reduces the system performance. performance, resulting in a significant increase in the delay of data transmission. Therefore, the shared memory page is not considered, and the application program still sends a request, and the coordinator 3 takes over the operation and accesses data to the remote host.
  • FIG. 6 shows the virtual environment-based memory sharing method of the present invention, which is applied to one of the above-mentioned virtual environment-based memory sharing systems, and the method includes:
  • Step S1 when the virtual machine receives the access request initiated by the application, it sends the access request to the coordinator;
  • Step S2 The coordinator analyzes the access request, and determines whether the access address of the access request is a local host or a remote host; if it is a local host, go to step S3; if it is a remote host, go to step S4.
  • Step S3 obtain the data requested by the access request from the local host and feed it back to the application;
  • Step S4 judging whether the data requested by the access request is cached in the memory module; when the data requested by the access request is cached in the memory module, execute step S5; when the data requested by the access request does not exist in the memory module, execute Step S6.
  • Step S5 feedback the data requested by the cached access request to the application
  • Step S6 The coordinator sends an access request to the coordinator of the remote host through the RDMA module, and feeds back the data obtained by the access to the application program.
  • a coordinator is set in the host, and the coordinator realizes the data communication of different virtual machines in the host to realize memory sharing, and for different hosts, the RDMA module is used to realize the communication between the coordinators of different hosts. Therefore, the communication between different hosts is realized, and the memory sharing of the entire virtual cluster is finally realized, and the RDMA module is used to effectively reduce the delay of data interaction between different hosts.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

L'invention concerne un système et un procédé de partage de mémoire sur la base d'un environnement virtuel. Le système comprend au moins deux hôtes, chaque hôte comprenant au moins une machine virtuelle, un coordinateur et un module de mémoire ; la machine virtuelle, le coordinateur et le module de mémoire sont connectés électriquement les uns aux autres ; le coordinateur d'un hôte local est en connexion de communication à distance avec le coordinateur d'un hôte distant au moyen d'un module RDMA ; la machine virtuelle est utilisée pour recevoir une demande d'accès initiée par un programme d'application, et envoyer la demande d'accès au coordinateur ; et le coordinateur demande si des données de mémoire cache demandées par la demande d'accès sont présentes dans le module de mémoire, et si tel est le cas, le coordinateur renvoie les données de mémoire cache au programme d'application, et sinon, le coordinateur envoie, au moyen du module RDMA, la demande d'accès au coordinateur de l'hôte distant dans lequel des données de mémoire sont stockées. Au moyen du procédé selon la présente invention, une mémoire peut être partagée entre des machines virtuelles du même hôte et entre des machines virtuelles parmi plusieurs hôtes.
PCT/CN2020/139462 2020-12-10 2020-12-25 Système et procédé de partage de mémoire sur la base d'un environnement virtuel WO2022120992A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011436391.3A CN112783667B (zh) 2020-12-10 2020-12-10 基于虚拟环境的内存共享系统及方法
CN202011436391.3 2020-12-10

Publications (1)

Publication Number Publication Date
WO2022120992A1 true WO2022120992A1 (fr) 2022-06-16

Family

ID=75750810

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/139462 WO2022120992A1 (fr) 2020-12-10 2020-12-25 Système et procédé de partage de mémoire sur la base d'un environnement virtuel

Country Status (2)

Country Link
CN (1) CN112783667B (fr)
WO (1) WO2022120992A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115098045A (zh) * 2022-08-23 2022-09-23 成都止观互娱科技有限公司 一种数据存储系统及网络数据读取和写入方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113360293B (zh) * 2021-06-02 2023-09-08 奥特酷智能科技(南京)有限公司 一种基于远程虚拟共享内存机制的车身电气网络架构
CN113342465B (zh) * 2021-06-18 2022-06-21 上海交通大学 一种基于释放一致性内存同步的巨型虚拟机
CN113722110B (zh) * 2021-11-02 2022-04-15 阿里云计算有限公司 计算机系统、内存访问方法及设备
CN115408106A (zh) * 2021-12-01 2022-11-29 科东(广州)软件科技有限公司 一种虚拟机间共享算法资源的方法及系统
CN116954952B (zh) * 2023-09-18 2024-01-09 之江实验室 一种机器人的自适应混合通信方法、装置、介质及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120137062A1 (en) * 2010-11-30 2012-05-31 International Business Machines Corporation Leveraging coalesced memory
CN103858111A (zh) * 2013-10-08 2014-06-11 华为技术有限公司 一种实现聚合虚拟化中内存共享的方法、设备和系统
CN104281468A (zh) * 2013-07-12 2015-01-14 国际商业机器公司 分布式虚拟机图像管理的方法和系统
CN107623722A (zh) * 2017-08-21 2018-01-23 云宏信息科技股份有限公司 一种远端数据缓存方法、电子设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7756943B1 (en) * 2006-01-26 2010-07-13 Symantec Operating Corporation Efficient data transfer between computers in a virtual NUMA system using RDMA
CN101163133B (zh) * 2006-10-10 2011-06-29 天津中科蓝鲸信息技术有限公司 一种多机虚拟环境下实现资源共享的通信系统及通信方法
US9483431B2 (en) * 2013-04-17 2016-11-01 Apeiron Data Systems Method and apparatus for accessing multiple storage devices from multiple hosts without use of remote direct memory access (RDMA)
US9727451B2 (en) * 2014-03-28 2017-08-08 Fortinet, Inc. Virtualization in a multi-host environment
CN105242872B (zh) * 2014-06-18 2018-06-12 华中科技大学 一种面向虚拟集群的共享存储系统
CN107491340B (zh) * 2017-07-31 2020-07-14 上海交通大学 跨物理机的巨型虚拟机实现方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120137062A1 (en) * 2010-11-30 2012-05-31 International Business Machines Corporation Leveraging coalesced memory
CN104281468A (zh) * 2013-07-12 2015-01-14 国际商业机器公司 分布式虚拟机图像管理的方法和系统
CN103858111A (zh) * 2013-10-08 2014-06-11 华为技术有限公司 一种实现聚合虚拟化中内存共享的方法、设备和系统
CN107623722A (zh) * 2017-08-21 2018-01-23 云宏信息科技股份有限公司 一种远端数据缓存方法、电子设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115098045A (zh) * 2022-08-23 2022-09-23 成都止观互娱科技有限公司 一种数据存储系统及网络数据读取和写入方法
CN115098045B (zh) * 2022-08-23 2022-11-25 成都止观互娱科技有限公司 一种数据存储系统及网络数据读取和写入方法

Also Published As

Publication number Publication date
CN112783667A (zh) 2021-05-11
CN112783667B (zh) 2023-08-15

Similar Documents

Publication Publication Date Title
WO2022120992A1 (fr) Système et procédé de partage de mémoire sur la base d'un environnement virtuel
US11841814B2 (en) System with cache-coherent memory and server-linking switch
EP3916566B1 (fr) Système et procédé de gestion de ressources de mémoire
CN108268208B (zh) 一种基于rdma的分布式内存文件系统
CN106874128B (zh) 数据传输方法及装置
US20110004732A1 (en) DMA in Distributed Shared Memory System
US20220188249A1 (en) Memory appliance couplings and operations
JP6514329B2 (ja) メモリアクセス方法、スイッチ、およびマルチプロセッサシステム
WO2022001417A1 (fr) Procédé de transmission de données, système de processeur et système d'accès mémoire
CN103870435A (zh) 服务器及数据访问方法
US20230071386A1 (en) Application-transparent near-memory processing architecture with memory channel network
WO2023093418A1 (fr) Procédé et appareil de migration de données et dispositif électronique
KR20210132348A (ko) 광 회선을 통해 상호 연결된 컴퓨팅 자원 분할 협업 시스템, 자원 분할 협업 방법
CN102843435A (zh) 一种在集群系统中存储介质的访问、响应方法和系统
EP4002139A2 (fr) Expanseur de mémoire, dispositif hôte utilisant un extenseur de mémoire, et procédé de fonctionnement d'un système de serveur comprenant un extenseur de mémoire
US7089378B2 (en) Shared receive queues
CN116028232B (zh) 跨机柜服务器内存池化方法、装置、设备、服务器及介质
CN101441661A (zh) 一种在多个嵌入式系统之间共享文件资源的系统及方法
US20240069755A1 (en) Computer system, memory expansion device and method for use in computer system
WO2024077999A1 (fr) Procédé de communication collective et grappe de calcul
KR101846726B1 (ko) 프로세서간의 통신을 지원하는 시스템 반도체 mmr 칩
KR20240007533A (ko) 메모리 분산 방법, 이를 구현한 컴퓨팅 시스템
CN118227534A (zh) 通信方法、cxl设备及计算设备
CN117389938A (zh) 数据中心架构
CN118227532A (zh) 通信方法、cxl设备及计算设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20964921

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20964921

Country of ref document: EP

Kind code of ref document: A1