
Fortran
文章平均质量分 66
东北豆子哥
多年HPC开发经验,熟悉多线程、集群分布式、GPU高性能开发技术,熟悉C/C++, Fortran, CUDA,Python,Matlab等开发工具语言;数年油气地震资料成像开发经验;数年CAE工业软件开发经验
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
LLNL/BLT构建辅助工具
BLT 提供了统一的宏来定义库、可执行文件和测试。NAME mylibDEPENDS_ON MPI::MPI_CXX # 依赖 MPINAME myappDEPENDS_ON mylib # 依赖上面的库你也可以使用标准的add_test(),但提供了更好的集成(如标签、资源限制等)。统一构建接口,简化 CMake 脚本内置对 MPI、CUDA、OpenMP、Fortran 的支持集成测试、格式化、静态分析等开发流程被多个 LLNL 高性能计算项目验证。原创 2025-07-28 16:21:33 · 839 阅读 · 0 评论 -
获取Fortran程序内存使用情况的方法
在Fortran程序中获取当前进程的内存使用情况,可以通过以下几种方法实现,分别适用于Linux和Windows系统。以上方法可以帮助你在Fortran程序中获取当前进程的内存使用情况。原创 2025-07-11 18:52:12 · 280 阅读 · 0 评论 -
FORD: Fortran文档生成工具介绍与使用
FORD (Fortran Documenter) 是一个专门为Fortran项目设计的自动化文档生成工具,类似于Doxygen但针对Fortran语言进行了优化。它能够从注释化的Fortran源代码生成高质量的HTML文档。页面模板:可以创建自定义HTML模板CSS样式:修改文档外观项目Logo:添加项目Logo额外页面:添加项目概述、安装说明等额外页面。原创 2025-07-04 18:17:33 · 639 阅读 · 0 评论 -
Fortran Command Line Arguments Parser
【代码】Fortran Command Line Arguments Parser。原创 2025-07-03 18:32:02 · 613 阅读 · 0 评论 -
Fortran 标准库(stdlib)介绍与使用指南
Fortran 标准库(stdlib)是一个由社区驱动的项目,旨在为现代 Fortran(2003及更高版本)提供类似于其他现代编程语言标准库的功能。它填补了Fortran语言本身标准库的空白,提供了许多实用的功能。原创 2025-07-03 14:31:34 · 828 阅读 · 0 评论 -
Fortran中的Coarray介绍与使用
Coarray是Fortran语言(从Fortran 2008标准开始)内置的一种并行编程模型,它提供了一种简洁的方式来编写单程序多数据(SPMD)风格的并行程序。Coarray允许程序员通过简单的语法扩展来访问远程内存,而不需要显式地使用消息传递接口(如MPI)。Fortran Coarray提供了一种简单有效的并行编程方式,特别适合科学计算中需要数据并行的场景。对于熟悉Fortran的开发者来说,它是MPI之外的一个有吸引力的选择,尤其是对于中小规模的并行应用。原创 2025-06-30 12:10:02 · 979 阅读 · 0 评论 -
获取NumPy数组内存地址并传递给C函数
要将NumPy数组的内存地址传递给C函数,你需要获取数组的数据缓冲区指针,然后将这个指针传递给C函数。:在C函数执行期间,NumPy数组必须保持存在,不能被垃圾回收。方法不需要编译,而Cython方法通常性能更好但需要编译步骤。:确保NumPy数组的dtype与C函数期望的数据类型匹配。:如果C函数会修改数组内容,确保NumPy数组是可写的(:对于多维数组,你可能需要处理步长(stride)信息。选择哪种方法取决于你的具体需求和使用环境。:在C函数中添加适当的错误处理机制。:确保数组是C连续的(原创 2025-06-23 16:39:00 · 170 阅读 · 0 评论 -
h5fortran 简介与使用指南
h5fortran 是一个开源的 Fortran 库,用于简化与 HDF5 文件的交互。它提供了高级接口,使得 Fortran 程序员能够更轻松地读写 HDF5 格式的文件,而无需直接处理 HDF5 库的底层细节。原创 2025-06-11 18:58:14 · 1053 阅读 · 0 评论 -
CUDA Fortran 使用介绍与资源
CUDA Fortran 是 NVIDIA 与 PGI (现为 NVIDIA 所有) 合作开发的 Fortran 语言扩展,允许 Fortran 程序员直接使用 NVIDIA GPU 的并行计算能力。它是 CUDA 平台的 Fortran 实现,类似于 CUDA C。原创 2025-05-20 14:09:57 · 797 阅读 · 0 评论 -
Using CUDA/GPU in Fortran
【代码】Using CUDA/GPU in Fortran。原创 2025-05-20 14:07:28 · 1226 阅读 · 0 评论 -
Fortran 中,你可以使用内部文件(internal file)的方式将内容追加写入到一个字符串
在 Fortran 中,你可以使用内部文件(internal file)的方式将内容追加写入到一个字符串。内部文件允许你像操作外部文件一样操作字符串变量。原创 2025-05-13 10:45:58 · 430 阅读 · 0 评论 -
在Fortran中输出类似Markdown的表格
在Fortran中输出类似Markdown的表格可以通过格式化输出实现。原创 2025-05-12 17:33:41 · 336 阅读 · 0 评论 -
Fortran 中的函数和子程序指针使用
在 Fortran 中,可以使用过程指针(procedure pointers)来指向函数或子程序,这提供了类似于函数指针的功能。下面我将通过示例程序说明如何在 Fortran 中使用函数和子程序指针。原创 2025-05-06 14:59:44 · 380 阅读 · 0 评论 -
Trilinos::Belos求解库中的Block和Pseudoblock迭代算法比较
迭代算法是Krylov子空间方法的两种变体,主要区别在于如何处理多右端项(multiple right-hand sides)问题。正交化方法)进一步优化性能。实际效率需结合具体问题通过性能分析工具(如TAU或VTune)验证。在Belos线性求解器库中,建议通过Belos的。原创 2025-05-06 10:40:35 · 394 阅读 · 0 评论 -
科学数据可视化工具库visIt安装和使用
VisIt 是一款开源的、跨平台的科学数据可视化工具,由美国劳伦斯利弗莫尔国家实验室(LLNL)开发,支持大规模并行数据处理和可视化。通过以上步骤,你可以快速开始使用 VisIt 进行科学数据可视化。如需处理超大规模数据,建议结合 HPC 环境使用并行功能。原创 2025-04-30 14:59:11 · 678 阅读 · 0 评论 -
Silo 科学数据工具库安装与使用指南
Silo 是一个用于科学数据可视化和分析的工具库,由 Lawrence Livermore National Laboratory (LLNL) 开发。原创 2025-04-30 14:56:57 · 421 阅读 · 0 评论 -
Using the HYPOT Function to Compute the Norm of a Vector in Fortran
HYPOTHYPOT。原创 2025-04-30 10:41:24 · 409 阅读 · 0 评论 -
利用IEEE异常机制优化Fortran浮点数计算
在Fortran程序中,IEEE浮点异常机制可以帮助你检测和优化浮点数计算,提高数值稳定性和程序健壮性。原创 2025-04-30 10:20:00 · 406 阅读 · 0 评论 -
In Fortran, array notation对性能的影响
【代码】In Fortran, array notation对性能的影响。原创 2025-04-27 13:44:13 · 654 阅读 · 0 评论 -
Using Pointers to Remap Arrays in Fortran
【代码】Using Pointers to Remap Arrays in Fortran。原创 2025-04-26 13:48:17 · 266 阅读 · 0 评论 -
Using Intel Inspector to Monitor Programs
【代码】Using Intel Inspector to Monitor Programs。原创 2025-04-24 15:03:07 · 511 阅读 · 0 评论 -
在Fortran中使用allocatable声明数组的好处和注意事项
声明数组的主要好处包括动态内存管理的灵活性、安全性以及自动内存释放功能,但它是否能防止内存泄漏取决于具体使用方式。数组超出作用域时(如子程序结束),若未被手动释放,编译器会自动调用。在需要长期存在的数组(如模块变量)或提前释放时,显式调用。更安全,是现代Fortran推荐的首选动态数组实现方式。数组在局部作用域(如子程序)中自动释放,减少手动管理。数组被指针引用且未妥善管理,可能导致泄漏。,且数组未超出作用域,则内存会泄漏。支持安全的数组移动(如函数返回),而。),避免静态数组的固定尺寸限制。原创 2025-04-24 10:25:05 · 388 阅读 · 0 评论 -
Detecting and Locating Memory Leaks in Fortran Programs
【代码】Detecting and Locating Memory Leaks in Fortran Programs。原创 2025-04-23 13:28:28 · 651 阅读 · 0 评论 -
Tracing Function Calls in Fortran Code
【代码】Tracing Function Calls in Fortran Code。原创 2025-04-22 17:52:22 · 599 阅读 · 0 评论 -
RenderDoc 使用介绍
RenderDoc 是一款开源的图形调试工具,主要用于调试和分析 Direct3D、OpenGL 和 Vulkan 应用程序的图形渲染过程。原创 2025-04-22 17:49:25 · 1371 阅读 · 0 评论 -
Using AddressSanitizer with gfortran
【代码】Using AddressSanitizer with gfortran。原创 2025-04-22 17:22:53 · 890 阅读 · 0 评论 -
Fortran 2008标准引入了多项新特性,其中一些对性能有显著影响一些语言新特征
Fortran 2008标准引入了多项新特性,其中一些对性能有显著影响。原创 2025-04-21 17:17:53 · 382 阅读 · 0 评论 -
Fortran中WHERE语句的用法与性能分析
WHERE是Fortran中一种条件数组操作语句,允许对数组进行条件操作而不需要显式循环。原创 2025-04-21 17:14:44 · 418 阅读 · 0 评论 -
Fortran中的DO CONCURRENT:用法与性能分析
DO CONCURRENT提供了介于两者之间的抽象级别,平衡了简洁性和并行潜力。:在支持良好的编译器上,可以获得接近显式并行编程的性能。:不同编译器实现程度不同,性能可能有差异。:并行执行可能使某些错误更难重现和调试。原创 2025-04-21 17:12:07 · 460 阅读 · 0 评论 -
Fortran中FORALL的用法与性能分析
是Fortran 95引入的一种结构,用于表达并行数组操作。它的基本语法如下:或者更复杂的多维度形式:的优点表达并行性:明确表达了可以并行执行的操作简洁性:对于某些数组操作,比显式循环更简洁语义清晰:明确表示所有操作都是独立的,没有顺序依赖与数组语法兼容:可以与Fortran的数组操作结合使用的缺点编译器支持不一:不同编译器对的优化程度不同限制较多:只能包含赋值语句,不能包含流程控制可能不如显式循环高效:在某些情况下编译器生成的代码不如手动优化的循环可读性问题:复杂的语句可能难以原创 2025-04-21 17:09:47 · 344 阅读 · 0 评论 -
解决 Ubuntu 下 VTune 无法收集 CPU 硬件时间计数数据的问题
在 Ubuntu 上使用 Intel VTune Profiler 时遇到无法收集 CPU 硬件性能计数器数据的问题,通常是由于权限和系统配置问题导致的。原创 2025-04-21 15:03:07 · 452 阅读 · 0 评论 -
Ubuntu 系统下安装和使用性能分析工具 perf
如果需要更详细的功能(如硬件事件监控),可能需要内核调试符号包(通过以上步骤,你可以在 Ubuntu 上顺利安装并使用。在 Ubuntu 系统下安装和使用性能分析工具。是 Linux 内核的一部分,通常通过安装。需要 root 权限或调整。如果正常输出版本信息(如。原创 2025-04-21 14:39:59 · 1298 阅读 · 0 评论 -
Intel OpenMP CPU Affinity Settings
【代码】Intel OpenMP CPU Affinity Settings。原创 2025-04-21 14:18:46 · 799 阅读 · 0 评论 -
使用Intel VTune Profiler分析程序
Intel VTune Profiler是一款强大的性能分析工具,可以帮助开发者识别和优化应用程序的性能瓶颈。以下是使用VTune的基本步骤:下载安装:环境准备:常用分析类型:识别CPU使用率最高的函数查看调用树和热点路径内存分析检测内存分配/释放模式识别内存泄漏和内存带宽瓶颈线程分析分析线程并行效率检测锁争用和负载不平衡结果解读Summary视图:总体性能指标概览Bottom-up视图:按函数显示性能数据Caller/Callee视图:函数调用关系分析Plat原创 2025-04-21 11:26:58 · 660 阅读 · 0 评论 -
使用Intel Advisor工具分析程序
Intel Advisor是一款性能分析工具,主要用于识别代码中的向量化机会、线程化和内存访问模式等问题。原创 2025-04-21 11:25:01 · 629 阅读 · 0 评论 -
遍历Python类中的所有成员
在Python中,有几种方法可以遍历一个类的所有成员(属性和方法)。原创 2025-04-20 20:07:52 · 235 阅读 · 0 评论 -
在FVM(有限体积法)的CFD仿真中,AI和机器学习的应用
通过针对性应用ML,FVM的收敛速度可提升30%-70%,尤其在参数化优化、瞬态仿真中效果显著。需平衡模型精度与泛化能力,避免“黑箱”导致的物理不合理性。原创 2025-04-20 17:23:51 · 463 阅读 · 0 评论 -
f2py 使用指南:在 Python 中调用 Fortran 代码
f2py 是一个强大的工具,它允许你将 Fortran 代码集成到 Python 程序中。原创 2025-04-20 15:48:49 · 442 阅读 · 0 评论 -
在Fortran和Python之间共享变量
在Fortran工程中与Python共享标量变量和数组变量,可以通过以下几种方法实现。我将介绍最常用的几种方法,包括使用Python的字典作为中介。原创 2025-04-20 15:45:05 · 351 阅读 · 0 评论 -
Collecting Integer-Type Variables in Fortran Source Code
【代码】Collecting Integer-Type Variables in Fortran Source Code。原创 2025-04-20 09:44:32 · 277 阅读 · 0 评论