Font Size: a A A

Research Of Reproducible Container Based On RISC-V Architecture

Posted on:2023-02-25Degree:MasterType:Thesis
Country:ChinaCandidate:A CuiFull Text:PDF
GTID:2568306800960809Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Reproducing concurrency errors in programs through techniques such as Record and Replay,and deterministic execution has important research significance and practical value in scenarios such as program compilation,debugging,and performance optimization.With the increasing improvement of the software and hardware ecology of the emerging RISC-V instruction architecture,supporting program reproducibility across instruction sets on new hardware has become a key technical problem to be solved urgently.Existing research often has high reproduction overhead,poor portability,and cannot guarantee reproduction results,and cannot meet the requirements of cross-platform program reproduction.In response to the above problems,this paper designs and implements a containerized reproducible method based on RISC-V architecture on the basis of fully analyzing the research on the reproducibility of traditional programs.The specific research contents are as follows:First,research the existing record replay and deterministic execution technologies,explore the limitations of the two,analyze the source of uncertainty in the execution of user processes,and propose the reproducibility and portability of programs under the RISC-V architecture.It also investigates and analyzes the current research status of related issues at home and abroad,and seeks theoretical and technical support for the reproducible containerization scheme.Secondly,based on some advanced technologies in traditional methods,a deterministic execution method of user process is designed and implemented.By tracking the process to find and locate uncertain system calls,it further optimizes the multi-threaded memory access competition resolution,realizes thread deterministic scheduling,and ensures the deterministic execution of user processes.Experiments show that,compared with the traditional method,the work in this paper achieves a better reproducibility of the program,and shows a significant reduction in performance loss.Finally,based on the deterministic execution work,a two-layer nested container mechanism is designed to isolate user programs.Through the nested two-layer container of Docker and LXC,the impact of the underlying micro-architecture on portability is eliminated,and the uncertain impact from the file system is isolated.Deterministic CPU instructions.The containerized reproducible method avoids modification of programs and operating system kernels,reduces deployment and maintenance costs,and better guarantees the determinism of user processes.The system prototype of the overall method is based on the GEM5 simulation platform,and the RISC-V instruction set and program reproduction method are reproduced.In order to verify the effectiveness of the proposed method,a set of containerized reproducible framework verification methods are designed and implemented,and the comparison with traditional recording and replay tools shows that the containerized reproducible scheme in this paper can support more programs reproducible execution while reducing runtime overhead by about 10%.
Keywords/Search Tags:RISC-V, Reproducibility, Determinism, Container
PDF Full Text Request
Related items