首页> 外文期刊>Scientific programming >Dynamic Memory De-allocation in Fortran 95/2003 derived type calculus
【24h】

Dynamic Memory De-allocation in Fortran 95/2003 derived type calculus

机译:Fortran 95/2003派生类型演算中的动态内存取消分配

获取原文
获取原文并翻译 | 示例

摘要

Abstract data types developed for computational science and engineering are frequently modeled after physical objects whose state variables must satisfy governing differential equations. Generalizing the associated algebraic and differential operators to operate on the abstract data types facilitates high-level program constructs that mimic standard mathematical notation. For non-trivial expressions, multiple object instantiations must occur to hold intermediate results during the expression's evaluation. When the dimension of each object's state space is not specified at compile-time, the programmer becomes responsible for dynamically allocating and de-allocating memory for each instantiation. With the advent of allocatable components in Fortran 2003 derived types, the potential exists for these intermediate results to occupy a substantial fraction of a program's footprint in memory. This issue becomes particularly acute at the highest levels of abstraction where coarse-grained data structures predominate. This paper proposes a set of rules for de-allocating memory that has been dynamically allocated for intermediate results in derived type calculus, while distinguishing that memory from more persistent objects. The new rules are applied to the design of a polymorphic time integrator for integrating evolution equations governing dynamical systems. Associated issues of efficiency and design robustness are discussed.
机译:为计算科学和工程学开发的抽象数据类型通常是根据状态变量必须满足控制微分方程的物理对象建模的。通用化关联的代数和微分运算符以对抽象数据类型进行操作,有助于模仿标准数学符号的高级程序构造。对于非平凡的表达式,必须进行多个对象实例化,以在表达式求值期间保存中间结果。如果在编译时未指定每个对象的状态空间的维,则程序员将负责为每个实例动态分配和取消分配内存。随着Fortran 2003派生类型中可分配组件的出现,这些中间结果可能会占据程序在内存中的占用空间的很大一部分。在粗粒度数据结构占主导的最高抽象级别,此问题变得尤为严重。本文提出了一组用于分配内存的规则,该规则已动态分配给派生类型演算中的中间结果,同时将内存与更持久的对象区分开。新规则被应用于多态时间积分器的设计中,以集成控制动力学系统的演化方程。讨论了效率和设计稳健性的相关问题。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号