Multithreaded transactions in scientific computing. The Growth06_v2 program
收藏资源简介:
Abstract Writing a concurrent program can be more difficult than writing a sequential program. Programmer needs to think about synchronization, race conditions and shared variables. Transactions help reduce the inconvenience of using threads. A transaction is an abstraction, which allows programmers to group a sequence of actions on the program into a logical, higher-level computation unit. This paper presents a new version of the GROWTHGr and GROWTH06 programs. Title of program: GROWTH06_v2 Catalogue Id: ADVL_v2_1 Nature of problem The programs compute the RHEED intensities during the growth of thin epitaxial structures prepared using the molecular beam epitaxy (MBE). The computations are based on the use of kinematical diffraction theory. Versions of this program held in the CPC repository in Mendeley Data ADVL_v1_0; GROWTH; 10.1016/j.cpc.2005.04.005 ADVL_v2_0; GROWTHgr, GROWTH06; 10.1016/j.cpc.2006.06.013 ADVL_v2_1; GROWTH06_v2; 10.1016/j.cpc.2009.01.024 ADVL_v3_0; Growth09; 10.1016/j.cpc.2009.11.011 ADVL_v4_0; GrowthCP; 10.1016/j.cpc.2011.02.014 This program has been imported from the CPC Program Library held at Queen's University Belfast (1969-2018)
摘要 并发程序的编写难度通常高于串行程序。程序员需考量同步机制、竞争条件与共享变量等核心问题。事务(Transaction)可有效缓解线程使用过程中的诸多不便。事务作为一种抽象机制,允许程序员将程序中的一系列操作封装为一个逻辑层面的高阶计算单元。本文介绍了GROWTHGr与GROWTH06程序的新版本。 程序名称:GROWTH06_v2 目录编号:ADVL_v2_1 问题本质 本程序用于计算采用分子束外延(MBE, molecular beam epitaxy)制备的超薄外延结构生长过程中的反射高能电子衍射(RHEED, Reflection High-Energy Electron Diffraction)强度,其计算基于运动学衍射理论。 Mendeley数据中的CPC程序库收录的本程序各版本如下: ADVL_v1_0; GROWTH; 10.1016/j.cpc.2005.04.005 ADVL_v2_0; GROWTHgr, GROWTH06; 10.1016/j.cpc.2006.06.013 ADVL_v2_1; GROWTH06_v2; 10.1016/j.cpc.2009.01.024 ADVL_v3_0; Growth09; 10.1016/j.cpc.2009.11.011 ADVL_v4_0; GrowthCP; 10.1016/j.cpc.2011.02.014 本程序源自贝尔法斯特女王大学维护的CPC程序库(1969-2018)。



