主题:我经历的三次工业革命 -- 冷口关
俺以前在公司维护一个恐龙级算法模块,计算内核是用Fortran在二十多年前写的,宛如王婆婆的裹脚布——又臭又长。一个函数,常常能有几十个参数,几百行的长度,还时不时来个“goto”。让早已习惯使用C++的我,是苦不堪言。有时候,真恨不得推翻所有代码,重新写一个。
其实,原始代码的编写者,我也认识,这是一位老研究人员,专业水平,那是没得说,但编程水平,惨不忍睹,贻害无穷。
无奈,这是工作,不得不认真阅读代码,颇是耗费了不少脑细胞。光简单的动态分配和释放内存,源代码中基本没有,对于小程序而言,无所谓,可对于俺们这种动则几十、上百T的计算量,会导致许多严重问题。另外,还得加入并行计算的代码,充分利用硬件的多CPU特性,以及充沛的计算机集群资源,而这在二、三十年前,是普通编程者不可想象的。
在完成基本改造之后,该模块的计算速度呈几何级数提高,而我也记录了一厚本笔记。不过,由于是在原代码上改动,在该模块上,即使是添加一个新参数,也至少需要改动二十多处。
离开公司的时候,我想,如果再有人去动这个程序,他/她可能否胜任?
- 相关回复 上下关系8
压缩 5 层
😄FORTRAN居然还没死透 5 懒厨 字313 2023-12-10 08:17:47
🙂国内部分高校还在教授fortran语言呢 8 吴头楚尾 字507 2023-12-10 04:45:59
🙂Fortran语法哪里严格 8 北纬42度 字519 2024-01-01 19:15:19
🙂同感
🙂人家生命强着呢 10 Swell 字601 2023-12-10 03:30:02
🙂只有老程序才用Fortran 5 北纬42度 字965 2024-01-01 18:41:15
🙂swell兄所说,让我到ada 4 土木辛科 字209 2023-12-10 23:42:37
🙂第二个肯定是假的 Swell 字811 2023-12-11 19:35:11