基于共享资源声明的并行程序语言的设计与前端实现

来源 :中国科学技术大学 | 被引量 : 0次 | 上传用户:sangyilin
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
现今的并行编程实践多采用锁来同步对共享资源的访问,编程难且易出错;新引入的原子区构造虽简化了编程,但支持其实现的软硬件技术尚不令人满意。本文就同步提出一种新的语言级的抽象——共享资源声明,它允许程序员从局部于线程的观点声明当前线程对某共享变量s访问的维持需求,即声明当前线程在运行时从上次访问s到这次访问s期间不允许其他线程访问s。从而,程序员无须考虑该如何使用锁等具体机制来同步对共享变量的访问,也可以避免或解决原子区所面临的一些问题。本文基于共享资源声明,设计一种具有C语言风格的并行编程语言SPC(Short for Shared Variable Holding Declarations Based Parallel C-style Language),并给出该语言的前端部分的实现工作。论文的主要研究内容有以下几个部分。1.设计SPC语言。参与设计一种小型并行编程语言SPC,给出其语法和非形式的语义描述以及类型系统的定义。以只含整型的SPC语言子集为基础,设计一种算法,通过分析SPC程序中的共享资源声明信息来获得线程对共享变量的维持需求信息。并以此讨论语言的操作语义的形式定义以及具体访问控制代码的生成方法。2.实现SPC的前端。课题组基于SUIF编译框架构筑SPC语言的编译器,它本质上将SPC程序编译成普通的含有具体并发访问控制的C程序。本文重点讨论SPC在SUIF框架上的中间表示等数据结构的设计,以及为SPC源程序生成中间表示的方法,为开展程序分析和程序变换奠定基础。
其他文献
随着计算机技术的发展和应用需求的不断推动,面向对象数据库(OODB)技术受到了广泛的关注。尽管大量研究人员投入到OODB的研发当中,但是OODB仍然被认为是一种功能丰富,表现乏力的
密码学是信息安全的核心技术,而现代密码体制的安全性依赖于密钥的保密性。秘密共享通过将秘密分发到不同的服务器来保护秘密信息的保密性和完整性,它是现代密码学密钥管理的
基于移动Ad hoc网络节点的高度移动性,网络拓扑会不可预知地变化。因此,网络中存在频繁的链路断开,这将带来频繁的路径失效和路由重建,以至于增加路由控制开销。所以,路由重
随着企业信息化建设的不断推进,各种信息系统的建立给企业带来了高效的生产效率的同时,也给信息系统之间的数据交换带来了困难。在信息化的趋势下,企业之间及企业内部之间迫切需
当前,随着Web服务技术及其相关标准的不断发展和完善,支撑Web服务的企业级应用平台也不断成熟,越来越多的企业和商业组织参与到业务服务化的行列中来,使得越来越多的稳定易用的We
随着互联网技术的飞速发展,基于网络的诸多服务如电子商务、电子图书等在生活中起着越来越重要的作用,如何利用Internet上的大量信息成为函待解决的问题。XML以其简单、可扩
随着互联网和电子商务技术的发展,Web服务因其能解决Internet异构平台下服务的交互重用等问题引起了广泛关注。和传统的分布式计算模型相比,Web服务抽象程度更高、粒度更大、
随着无线网络的快速发展和广泛应用,各类有严格时延、错误率限制的多播业务需求正在迅猛增加。而无线网络本身带宽多变、终端异构、丢包率高等与生俱来的特点对网络结构和协
视觉媒体包含着丰富的信息,而且现在已经广泛渗入人们的生活与工作当中,并对人们的生理和心理产生着潜移默化的影响。因此,视觉媒体与用户情绪反应之间的分析和建模研究已成
近年来,随着图像处理应用越来越广泛和深入,其对图像质量的要求也越来越高,对高分辨率图像的需求也越来越大,图像超分辨率一直以来都是计算机科学研究的热点。而由于物理器件