摘要
数据竞争是多线程程序最为常见的问题之一,数据竞争的出现会导致程序的原子性遭到破坏,从而使得推理程序的行为和改进程序的性能更加困难.为解决数据竞争带来的问题,提出了一种运行时的数据竞争消除系统DRFS(Data-Race-Free-System).DRFS将多线程程序的执行分为并行执行和串行执行两种模式,采用合理有效的模式切换机制将两种模式结合执行,为并行程序提供一个无数据竞争的运行环境.实验结果表明,DRFS在保证并行程序不会出现数据竞争的同时,并未引入很大的性能开销.
Data races is one of the most common multithreaded program problems.Data races makes atomic program is destroyed,thus making the reasoning process behavior and improved program performance more challenging.to solve the problem introduced by dara races of parallelprograms,DRFS is proposed.This paper present DRFS(DataRace-Free-System),a novel multi-threading runtime that divides the execution of multithread programs into two parallel mode and serial mode,DRFS adopts existing hardware support page protection mechanism,to eliminate multithreaded shared-memory data races,which provides a data-race-free environment for parallel programs.The Experimental results demonstrate that DRFS guarantes the free of data races while incuring acceptable performance and memory overhead.
出处
《微电子学与计算机》
CSCD
北大核心
2016年第7期89-92,97,共5页
Microelectronics & Computer
基金
国家"八六三"高技术研究发展计划基金项目(2012AA010901)
关键词
数据竞争
并行程序
串并结合
共享内存
data race
parallel program
serial parallel combination
shared memory