Font Size: a A A

Design And Implementation Of Distributed Memory Object System Based On RDMA

Posted on:2022-12-14Degree:MasterType:Thesis
Country:ChinaCandidate:Z J GuoFull Text:PDF
GTID:2518306764476384Subject:Computer Software and Application of Computer
Abstract/Summary:PDF Full Text Request
As the scale of personal and enterprise production data continues to grow,memorybased distributed storage and computing systems have increasingly broad application scenarios.The performance of memory-based distributed object systems is limited by the complex mechanisms of traditional TCP/IP network protocol stacks and the data persistence overhead for volatile DRAM.Technologies such as Non-Volatile Memory and Remote Direct Memory Access have been proposed one after another,providing new design directions for the design of distributed shared memory-based memory object access systems.However,the existing research on distributed memory storage and computation schemes based on distributed shared memory design has problems including complex design and high synchronization overhead.Therefore,based on the scenario of distributed memory data object access,thesis designs and implements a distributed memory system,RNTMS,to support storage and computation of distributed shared memory objects based on the scenario of distributed memory data object access.The system combines the hardware features of RDMA and NVM,and the design ideas of distributed shared memory and software transactional memory.The main research works are as follows.(1)To address the service hotspot problem caused by load imbalance of distributed shared memory partitions,based on Consistent Hashing with Bounded Loads strategy,thesis adapts the system to load balance the routing requests from upper-layer application,which improves the service throughput of the system.(2)In traditional multi-writer schemes,pessimistic concurrency control methods such as locks,can block other writers,resulting in system performance loss.Based on idea of software transactional memory,thesis designs a transaction-level memory object access model.By collecting business-related operations into transaction objects for processing,and adopting an optimistic concurrency-controlled version number verifycation mechanism,it can avoid the direct operation of synchronization primitives and locks by upper-level applications,while improving the concurrency of the system and the friendliness of using the interface.(3)The multi-version policy of software transactional memory is subject to high write overhead when implemented on NVM.For this reason,thesis adopts a dual version sequential storage policy.When memory object versions are updated sequentially,it can effectively improve the overhead of repeated requests and releases on NVM space,and reduce the frequency of cache invalidation.(4)Distributed shared memory has the problem of too many messages and high latency when maintaining data cache consistency.Combining a publish-subscribe policy,the thesis designs a mechanism to combine push and cache latency update for write notification cache invalidation,which both enables early rollback of conflicting transactions,and reduces communication overhead,thus improving the overall system throughput.Finally,thesis conducts test experiments on the RNTMS system and analyzes the test results.
Keywords/Search Tags:Distributed Memory Objects, Remote Memory Direct Access, Non-Volatile Memory, Distributed Shared Memory, Software Transactional Memory
PDF Full Text Request
Related items