增量计算

✍ dations ◷ 2025-12-06 07:34:53 #计算机编程,程序分析

增量计算是一种软件功能 。当一部分的数据产生了变化,就仅对该产生变化的部分进行计算和更新,以节省计算时间。 相比于简单地重复计算完整的输出内容,增量计算能够显著地节省计算时间。 比如,电子表格会在实现重计算功能时使用增量计算,只重新计算并更新那些含有公式且被直接或间接地改变了的单元格。

用于帮助开发者自动实现增量计算的工具,可以被看作是帮助程序优化的程序分析工具。

增量计算在技术实现上可以大致分为两种类型:

试图从现有的程序P中派生出一个增量计算程序。例如可以采取进行程序的重新设计、程序重构的手段,或者使用工具自动生成增量计算程序。这种程序的转换需要发生在输入或是输入的变化量出现之前。

记录运行中的程序P在接受某个特定输入(l1)时的信息。当这P接受另一个输入(l2)时,把这些信息用于计算并更新输出结果(从O1变化到O2)。图示中显示了:程序P;构成增量计算程序的核心的变化量计算函数ΔP;以及两组输入和输出(I1,O1和I2,O2)。

某一些实现增量计算的方法是只适用于特定程序的专用实现方法,但也有一些可以普遍适用于任何程序的通用方法。专用实现方法需要程序员特别指定用于保存未修改子计算的算法和数据结构。通用实现方法则会使用编程语言特性、编译器功能或者一些算法来给非增量计算程序赋予增量计算的行为。

相关

  • BT分流布莱洛克-托马斯-陶西格分流术(英语:Blalock–Thomas–Taussig shunt),过去称布莱洛克-陶西格分流术(Blalock–Taussig shunt),简称布-陶分流或BT分流,是用来治疗青紫型先天性心脏病
  • 食用色素食用色素(英语:colors, pigments),是食品添加剂的一种,又称着色剂,用于改善物品外观的可食用染料。常用于食物加工品、饮料、药物、口红与化妆品的染色上。由于各地的定义不同,有些
  • 半人马装甲车Oto Melara 105mm/52线膛炮(Centauro) Oto Melara 120mm/45滑膛炮(Centauro Ⅱ) Oerlikon KBA 25mm机炮(VBM Freccia)半人马Centauro装甲车,是意大利设计的一款105毫米炮轮
  • 巴勃罗·毕加索巴勃罗·鲁伊斯·毕加索(西班牙语:Pablo Ruiz Picasso,1881年10月25日-1973年4月8日),西班牙著名的艺术家、画家、雕塑家、版画家、舞台设计师、作家和前法国共产党党员,出名于法国
  • 费尔美国物理协会之新材料国际大奖 (1994年) Magnetism Award of the IUPAP (1994年) 法国物理协会之Jean Richard物理大奖 (1994年) 欧洲物理协会之Hewlett-Packard欧洲物理学大奖 (1
  • 铠甲虾类铠甲虾(Squat lobsters),也直译作蹲龙虾,是一种腹部扁平的甲壳类动物,有长的尾巴,往下弯至胸部。现时铠甲虾类生物可大致分为两大家族:铠甲虾总科(Galatheoidea)及劣柱虾总科(Chirosty
  • 巴瑶族巴乔人(英语:Bajau、/ˈbɑːdʒaʊ, ˈbæ-/)也作巴瑶族,是东南亚的一个民族,生活在菲律宾、马来西亚和印度尼西亚之间的海域一带,多以潜水、捕鱼为生,常被称谓“海上吉普赛人”,也
  • 硫化汞硫化汞是硫和汞的化合物,化学式为HgS。不溶于水。但可溶于王水,反应方程式如下: 3 H g S +
  • 特南绿地站特南绿地站(英语:Turnham Green tube station)是伦敦地铁的一个车站,位于伦敦西部豪恩斯洛区的奇斯威克。特南绿地站是区域线和皮卡迪利线的一个车站,但目前皮卡迪利线的列车现
  • 战备跑道战备跑道,是指为避免发生战争时,跑道遭毁或被占据,在公路中,设计可供军用飞机降落的路段。其路面需笔直无弯道,装有灯光标志,没有电杆、路灯、高层建筑、跨线桥、天桥之类的障碍物