
Fortran
文章平均质量分 63
东北豆子哥
多年HPC开发经验,熟悉多线程、集群分布式、GPU高性能开发技术,熟悉C/C++, Fortran, CUDA,Python,Matlab等开发工具语言;数年油气地震资料成像开发经验;数年CAE工业软件开发经验
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
h5fortran 简介与使用指南
h5fortran 是一个开源的 Fortran 库,用于简化与 HDF5 文件的交互。它提供了高级接口,使得 Fortran 程序员能够更轻松地读写 HDF5 格式的文件,而无需直接处理 HDF5 库的底层细节。原创 2025-06-11 18:58:14 · 606 阅读 · 0 评论 -
CUDA Fortran 使用介绍与资源
CUDA Fortran 是 NVIDIA 与 PGI (现为 NVIDIA 所有) 合作开发的 Fortran 语言扩展,允许 Fortran 程序员直接使用 NVIDIA GPU 的并行计算能力。它是 CUDA 平台的 Fortran 实现,类似于 CUDA C。原创 2025-05-20 14:09:57 · 696 阅读 · 0 评论 -
Using CUDA/GPU in Fortran
【代码】Using CUDA/GPU in Fortran。原创 2025-05-20 14:07:28 · 1192 阅读 · 0 评论 -
Fortran 中,你可以使用内部文件(internal file)的方式将内容追加写入到一个字符串
在 Fortran 中,你可以使用内部文件(internal file)的方式将内容追加写入到一个字符串。内部文件允许你像操作外部文件一样操作字符串变量。原创 2025-05-13 10:45:58 · 411 阅读 · 0 评论 -
在Fortran中输出类似Markdown的表格
在Fortran中输出类似Markdown的表格可以通过格式化输出实现。原创 2025-05-12 17:33:41 · 320 阅读 · 0 评论 -
Fortran 中的函数和子程序指针使用
在 Fortran 中,可以使用过程指针(procedure pointers)来指向函数或子程序,这提供了类似于函数指针的功能。下面我将通过示例程序说明如何在 Fortran 中使用函数和子程序指针。原创 2025-05-06 14:59:44 · 346 阅读 · 0 评论 -
Trilinos::Belos求解库中的Block和Pseudoblock迭代算法比较
迭代算法是Krylov子空间方法的两种变体,主要区别在于如何处理多右端项(multiple right-hand sides)问题。正交化方法)进一步优化性能。实际效率需结合具体问题通过性能分析工具(如TAU或VTune)验证。在Belos线性求解器库中,建议通过Belos的。原创 2025-05-06 10:40:35 · 376 阅读 · 0 评论 -
科学数据可视化工具库visIt安装和使用
VisIt 是一款开源的、跨平台的科学数据可视化工具,由美国劳伦斯利弗莫尔国家实验室(LLNL)开发,支持大规模并行数据处理和可视化。通过以上步骤,你可以快速开始使用 VisIt 进行科学数据可视化。如需处理超大规模数据,建议结合 HPC 环境使用并行功能。原创 2025-04-30 14:59:11 · 544 阅读 · 0 评论 -
Silo 科学数据工具库安装与使用指南
Silo 是一个用于科学数据可视化和分析的工具库,由 Lawrence Livermore National Laboratory (LLNL) 开发。原创 2025-04-30 14:56:57 · 385 阅读 · 0 评论 -
Using the HYPOT Function to Compute the Norm of a Vector in Fortran
HYPOTHYPOT。原创 2025-04-30 10:41:24 · 405 阅读 · 0 评论 -
利用IEEE异常机制优化Fortran浮点数计算
在Fortran程序中,IEEE浮点异常机制可以帮助你检测和优化浮点数计算,提高数值稳定性和程序健壮性。原创 2025-04-30 10:20:00 · 387 阅读 · 0 评论 -
In Fortran, array notation对性能的影响
【代码】In Fortran, array notation对性能的影响。原创 2025-04-27 13:44:13 · 642 阅读 · 0 评论 -
Using Pointers to Remap Arrays in Fortran
【代码】Using Pointers to Remap Arrays in Fortran。原创 2025-04-26 13:48:17 · 265 阅读 · 0 评论 -
Using Intel Inspector to Monitor Programs
【代码】Using Intel Inspector to Monitor Programs。原创 2025-04-24 15:03:07 · 488 阅读 · 0 评论 -
在Fortran中使用allocatable声明数组的好处和注意事项
声明数组的主要好处包括动态内存管理的灵活性、安全性以及自动内存释放功能,但它是否能防止内存泄漏取决于具体使用方式。数组超出作用域时(如子程序结束),若未被手动释放,编译器会自动调用。在需要长期存在的数组(如模块变量)或提前释放时,显式调用。更安全,是现代Fortran推荐的首选动态数组实现方式。数组在局部作用域(如子程序)中自动释放,减少手动管理。数组被指针引用且未妥善管理,可能导致泄漏。,且数组未超出作用域,则内存会泄漏。支持安全的数组移动(如函数返回),而。),避免静态数组的固定尺寸限制。原创 2025-04-24 10:25:05 · 343 阅读 · 0 评论 -
Detecting and Locating Memory Leaks in Fortran Programs
【代码】Detecting and Locating Memory Leaks in Fortran Programs。原创 2025-04-23 13:28:28 · 635 阅读 · 0 评论 -
Tracing Function Calls in Fortran Code
【代码】Tracing Function Calls in Fortran Code。原创 2025-04-22 17:52:22 · 589 阅读 · 0 评论 -
RenderDoc 使用介绍
RenderDoc 是一款开源的图形调试工具,主要用于调试和分析 Direct3D、OpenGL 和 Vulkan 应用程序的图形渲染过程。原创 2025-04-22 17:49:25 · 1104 阅读 · 0 评论 -
Using AddressSanitizer with gfortran
【代码】Using AddressSanitizer with gfortran。原创 2025-04-22 17:22:53 · 879 阅读 · 0 评论 -
Fortran 2008标准引入了多项新特性,其中一些对性能有显著影响一些语言新特征
Fortran 2008标准引入了多项新特性,其中一些对性能有显著影响。原创 2025-04-21 17:17:53 · 371 阅读 · 0 评论 -
Fortran中WHERE语句的用法与性能分析
WHERE是Fortran中一种条件数组操作语句,允许对数组进行条件操作而不需要显式循环。原创 2025-04-21 17:14:44 · 393 阅读 · 0 评论 -
Fortran中的DO CONCURRENT:用法与性能分析
DO CONCURRENT提供了介于两者之间的抽象级别,平衡了简洁性和并行潜力。:在支持良好的编译器上,可以获得接近显式并行编程的性能。:不同编译器实现程度不同,性能可能有差异。:并行执行可能使某些错误更难重现和调试。原创 2025-04-21 17:12:07 · 423 阅读 · 0 评论 -
Fortran中FORALL的用法与性能分析
是Fortran 95引入的一种结构,用于表达并行数组操作。它的基本语法如下:或者更复杂的多维度形式:的优点表达并行性:明确表达了可以并行执行的操作简洁性:对于某些数组操作,比显式循环更简洁语义清晰:明确表示所有操作都是独立的,没有顺序依赖与数组语法兼容:可以与Fortran的数组操作结合使用的缺点编译器支持不一:不同编译器对的优化程度不同限制较多:只能包含赋值语句,不能包含流程控制可能不如显式循环高效:在某些情况下编译器生成的代码不如手动优化的循环可读性问题:复杂的语句可能难以原创 2025-04-21 17:09:47 · 318 阅读 · 0 评论 -
解决 Ubuntu 下 VTune 无法收集 CPU 硬件时间计数数据的问题
在 Ubuntu 上使用 Intel VTune Profiler 时遇到无法收集 CPU 硬件性能计数器数据的问题,通常是由于权限和系统配置问题导致的。原创 2025-04-21 15:03:07 · 426 阅读 · 0 评论 -
Ubuntu 系统下安装和使用性能分析工具 perf
如果需要更详细的功能(如硬件事件监控),可能需要内核调试符号包(通过以上步骤,你可以在 Ubuntu 上顺利安装并使用。在 Ubuntu 系统下安装和使用性能分析工具。是 Linux 内核的一部分,通常通过安装。需要 root 权限或调整。如果正常输出版本信息(如。原创 2025-04-21 14:39:59 · 1117 阅读 · 0 评论 -
Intel OpenMP CPU Affinity Settings
【代码】Intel OpenMP CPU Affinity Settings。原创 2025-04-21 14:18:46 · 770 阅读 · 0 评论 -
使用Intel VTune Profiler分析程序
Intel VTune Profiler是一款强大的性能分析工具,可以帮助开发者识别和优化应用程序的性能瓶颈。以下是使用VTune的基本步骤:下载安装:环境准备:常用分析类型:识别CPU使用率最高的函数查看调用树和热点路径内存分析检测内存分配/释放模式识别内存泄漏和内存带宽瓶颈线程分析分析线程并行效率检测锁争用和负载不平衡结果解读Summary视图:总体性能指标概览Bottom-up视图:按函数显示性能数据Caller/Callee视图:函数调用关系分析Plat原创 2025-04-21 11:26:58 · 549 阅读 · 0 评论 -
使用Intel Advisor工具分析程序
Intel Advisor是一款性能分析工具,主要用于识别代码中的向量化机会、线程化和内存访问模式等问题。原创 2025-04-21 11:25:01 · 595 阅读 · 0 评论 -
遍历Python类中的所有成员
在Python中,有几种方法可以遍历一个类的所有成员(属性和方法)。原创 2025-04-20 20:07:52 · 194 阅读 · 0 评论 -
在FVM(有限体积法)的CFD仿真中,AI和机器学习的应用
通过针对性应用ML,FVM的收敛速度可提升30%-70%,尤其在参数化优化、瞬态仿真中效果显著。需平衡模型精度与泛化能力,避免“黑箱”导致的物理不合理性。原创 2025-04-20 17:23:51 · 416 阅读 · 0 评论 -
f2py 使用指南:在 Python 中调用 Fortran 代码
f2py 是一个强大的工具,它允许你将 Fortran 代码集成到 Python 程序中。原创 2025-04-20 15:48:49 · 364 阅读 · 0 评论 -
在Fortran和Python之间共享变量
在Fortran工程中与Python共享标量变量和数组变量,可以通过以下几种方法实现。我将介绍最常用的几种方法,包括使用Python的字典作为中介。原创 2025-04-20 15:45:05 · 330 阅读 · 0 评论 -
Collecting Integer-Type Variables in Fortran Source Code
【代码】Collecting Integer-Type Variables in Fortran Source Code。原创 2025-04-20 09:44:32 · 268 阅读 · 0 评论 -
Using fparser to Parse Fortran Code
【代码】Using fparser to Parse Fortran Code。原创 2025-04-19 21:44:13 · 312 阅读 · 0 评论 -
Fortran中EQUIVALENCE语句可以用来让不同变量共享同一块内存空间
在Fortran中,语句可以用来让不同变量共享同一块内存空间。原创 2025-04-19 12:53:50 · 307 阅读 · 0 评论 -
Python中用默认函数替代模块中的不存在函数
使用result = safe_mod.desired_func() # 如果不存在会调用 default_func简单场景:方法 1 或方法 2需要明确检查:方法 3需要预设参数:方法 4需要大量复用:方法 5注意:如果模块是动态生成的(如插件系统),可能需要结合importlib使用。原创 2025-04-19 09:28:24 · 224 阅读 · 0 评论 -
ForPy: Fortran 与 Python传递数组和字典示例
ForPy 是一个让 Fortran 程序能够调用 Python 代码的工具库。下面我将展示如何使用 ForPy 在 Fortran 和 Python 之间传递数据,包括数组和字典。原创 2025-04-19 06:41:09 · 252 阅读 · 0 评论 -
使用Hypre BoomerAMG求解大规模泊松方程示例
下面是一个使用Hypre库中的BoomerAMG预处理器求解大规模泊松方程的C++示例程序。这个示例假设你已经在系统上安装了Hypre库。原创 2025-04-18 14:21:00 · 340 阅读 · 0 评论 -
Fortran中的位图(Bitmap)操作实现
在Fortran中实现位图操作可以通过几种不同的方法,主要取决于您使用的Fortran标准版本。原创 2025-04-17 16:42:53 · 340 阅读 · 0 评论 -
Fortran 中使用 C_LOC 和 C_F_POINTER 结合的方法来实现不同类型指针指向同一块内存区域
在 Fortran 中,可以使用C_LOC和结合的方法来实现不同类型指针指向同一块内存区域。原创 2025-04-16 13:39:04 · 412 阅读 · 0 评论