Why Fortran Is Still Used5 hours agohttps://www.matecdev.com/posts/why-fortran-still-used.htmlFortran 专为高性能计算而设计,并且由于其以性能为中心的文化,至今仍具有相关性。在科学计算方面,它比 C/C++ 更容易使用,原生支持多维数组和复数。Fortran 保证了代码的持久性和向后兼容性,使得几十年前的代码仍然可以编译和运行。Fortran 2008 引入的 Coarrays 提供了内在的分布式内存并行性,简化了并行代码的开发。更多...
Differentiable Fortran with LFortran and Enzyme18 days agohttps://docs.pasteurlabs.ai/projects/tesseract-core/latest/blog/2026-07-09-enzym...可微分的Fortran允许通过现有的Fortran、C或C++模拟代码使用LFortran和Enzyme实现反向传播,从而能与JAX和PyTorch等现代机器学习框架集成。Enzyme在LLVM IR层面应用自动微分,可以对任何编译到LLVM的代码进行微分,避免了重写经过验证的遗留物理代码的需求。使用LFortran而非Flang,是因为它生成的LLVM IR更简洁,使用纯指针运算,使Enzyme更容易追踪内存访问,而不涉及不透明的运行时调用。编译流水线涉及六个步骤:将Fortran转换为LLVM IR、轻度优化、与C包装器链接、通过Enzyme合成导数、最终优化为共享库。更多...