- 博客(263)
- 收藏
- 关注
原创 混合精度策略在PBiCGStab算法中的应用
使用较低精度(如单精度)进行大部分计算,提高内存带宽利用率和计算速度在关键计算步骤使用较高精度(如双精度)保持数值稳定性在必要时进行精度转换。
2025-04-05 18:28:21
204
原创 超级科学软件实验室(中国) : Super Scientific Software Laboratory (SSSLab)
Super Scientific Software Laboratory (SSSLab)
2025-04-05 18:23:38
60
原创 柯希霍夫叠前深度偏移走时表计算及开源实现
柯希霍夫(Kirchhoff)叠前深度偏移(PSDM)是油气行业地震资料处理中常用的成像方法,其中走时表计算是核心环节之一。
2025-04-05 16:37:41
155
原创 将OpenFOAM中的lduMatrix数据转换为CSC稀疏矩阵格式
values: 非零元素值(按列优先顺序): 每个非零元素的行索引col_ptrs: 每列起始位置在values和中的索引。
2025-04-05 10:00:34
95
原创 使用MATIO库写入MATLAB结构体(struct)数据的示例程序
MATIO是一个用于读写MATLAB数据文件(.mat)的开源C库。下面是一个完整的示例程序,展示如何使用MATIO库创建一个包含结构体数据的MAT文件。
2025-04-05 09:52:28
79
原创 使用MATIO库写入Matlab稀疏矩阵数据的示例程序
MATIO是一个开源的C/C++库,用于读写MATLAB的.mat数据文件。下面我将展示如何使用MATIO库来写入稀疏矩阵数据到MATLAB文件中。
2025-04-05 09:50:25
85
原创 使用MATIO库读取Matlab数据文件中的多维数组
MATIO是一个用于读写Matlab数据文件(.mat)的开源C库。下面是一个完整的示例程序,展示如何使用MATIO库读取Matlab数据文件中的多维数组。
2025-04-05 09:47:47
63
原创 使用MATIO库读取Matlab数据文件中的cell结构数据
MATIO是一个用于读写Matlab数据文件(.mat)的C/C++库。下面我将展示如何使用MATIO库来读取Matlab文件中的cell结构数据。
2025-04-05 09:44:40
149
原创 使用MATIO库读取Matlab结构体(struct)数据的示例程序
MATIO是一个用于读写Matlab数据文件(.mat)的C/C++库。下面是一个完整的示例程序,展示如何使用MATIO库读取Matlab中的struct结构数据。
2025-04-05 09:43:11
72
原创 使用MATIO库读取Matlab数据文件中的稀疏矩阵
MATIO是一个用于读写MATLAB数据文件(.mat)的C/C++库。下面我将展示如何使用MATIO库来读取MATLAB文件中的稀疏矩阵数据。
2025-04-05 09:40:21
167
原创 Fortran 中读取 MATLAB 生成的数据文件
如果数据是文本格式(如 MATLAB 导出的。MATLAB v7.3 及以上版本的。根据数据格式和项目需求选择合适的方法!
2025-04-05 08:09:51
437
原创 BiCGSTAB是如何实现的,写段Fortran示例代码
BiCGSTAB (双共轭梯度稳定法)是一种用于求解非对称线性方程组的迭代方法,是经典双共轭梯度法(BiCG)的改进版本,具有更好的稳定性。
2025-04-05 07:44:30
227
原创 Dealing with Non-Flat Faces in OpenFOAM
【代码】how to deal with non-flatness faces in OpenFOAM。
2025-04-04 18:13:21
528
原创 如何判断多个点组成的3维面不是平的,如果不是平的,如何拆分成多个平面
选择哪种方法取决于具体应用场景、点集大小和所需的精度。对于简单情况,三角剖分通常足够;对于复杂形状,可能需要结合多种方法。
2025-04-04 18:02:17
268
原创 在CFD仿真中,连续性方程(质量守恒方程)和动量方程的耦合处理
mathbf{u}^{n+1} = \mathbf{u}^* - \nabla \phi, \quad \text{其中} \ \nabla^2 \phi = \nabla \cdot \mathbf{u}^*选择分离式或耦合方法需权衡问题类型(稳态/瞬态)、计算资源和精度需求。现代CFD求解器(如OpenFOAM、ANSYS Fluent)通常提供多种耦合策略以适应不同场景。在CFD仿真中,连续性方程(质量守恒方程)和动量方程的耦合处理是数值求解的核心问题之一。将连续性方程融入动量方程的核心优势在于。
2025-04-04 10:54:03
448
原创 Determining and Fixing Warped 3D Polygon Faces
【代码】Determining and Fixing Warped 3D Polygon Faces。
2025-04-03 10:07:40
425
原创 CFD: 使用Spalding壁面函数求解u+
Spalding壁面函数是一种常用的壁面律,用于在壁面边界层计算中连接粘性底层和对数律区。下面我将介绍如何使用Spalding壁面函数求解无量纲速度u⁺。
2025-04-03 09:46:47
311
原创 在CUDA中求解下三角和上三角稀疏矩阵方程
在CUDA中求解下三角和上三角稀疏矩阵方程,可以利用现有的GPU加速库和开源实现。以下是几种常用的方法和工具:cuSPARSE是NVIDIA提供的稀疏矩阵计算库,包含专门用于三角稀疏矩阵求解的函数:代码片段(伪代码):2. cuSOLVER库(直接求解器)cuSOLVER提供了更高级的稀疏直接求解器,适合包含三角分解的线性系统(如LU分解后的三角矩阵求解):对于特定结构的三角矩阵(如对角线稀疏),可编写自定义CUDA核函数:5. 其他工具PETSc:支持GPU的分布式稀疏求解器,可通过调用三
2025-04-02 12:36:04
286
原创 OpenFOAM里的DILU(Simplified Diagonal-based Incomplete LU preconditioner)实现数学细节
【代码】OpenFOAM里的DILU(Simplified Diagonal-based Incomplete LU preconditioner)实现数学细节。
2025-04-02 12:23:46
725
原创 HYPRE函数库中的PILUT预处理器适合解决哪些问题,与BoomerAMG相比性能效率如何?PILUT有哪些参数影响性能,调节这些参数有哪些建议?
PILUT在非对称问题中具有一定优势,但需精细调参;BoomerAMG在大规模并行问题上更鲁棒。建议通过小规模测试(如单节点)对比两者收敛速度,再扩展到实际应用场景。
2025-04-02 11:32:24
307
原创 如何使用CUDA Graphs,如何更新Graphs中kernel函数参数
CUDA Graphs提供了一种高效的方式来捕获和执行一系列CUDA操作,特别适合重复执行相同操作序列的场景。下面我将展示如何使用CUDA Graphs以及如何更新Graph中的kernel参数。
2025-04-01 18:59:53
378
原创 How to use CUDA Graphs to reduce launch overhead for repetitive workloads
【代码】How to use CUDA Graphs to reduce launch overhead for repetitive workloads。
2025-04-01 18:56:47
527
原创 能在kernel函数调用cublas吗?
可以设备支持动态并行。使用前缀的API。编译时启用-rdc=true。建议根据具体场景评估是否必要,并参考NVIDIA官方文档选择合适的方法。
2025-04-01 17:48:20
403
原创 Optimizing CUDA Kernel Launch Configurations for Better Performance
【代码】Optimizing CUDA Kernel Launch Configurations for Better Performance。
2025-04-01 17:11:52
709
原创 Thrust库中,host_vector和device_vector数据之间如何高效传输,有异步传输方式吗?
之间的数据传输可以通过多种方式实现,包括同步和异步传输。如果需要进一步优化,建议结合 NVIDIA Nsight 工具分析传输瓶颈。若需在 Thrust 算法中异步执行,可通过指定执行策略(如。结合 Thrust 的底层指针实现异步传输。Thrust 本身不直接提供异步传输接口,但可以通过。在 Thrust 库中,
2025-04-01 15:13:35
393
原创 NVCC编译Kernel函数的优化选项详解
NVCC(NVIDIA CUDA Compiler)提供了多种优化选项来优化CUDA kernel函数的性能。
2025-04-01 11:28:12
891
原创 cudaLaunchCooperativeKernel如何使用,如何传入kernel的参数
/ 获取协作组// 核函数逻辑(例如全局求和)i < N;// 处理数据...// 线程块间同步。
2025-04-01 11:22:02
428
原创 intel c++ compiler的优化选项有哪些,数值计算程序中哪些选项比较重要
Intel C++ 编译器(ICC/ICX)提供了丰富的优化选项,特别针对数值计算程序(如科学计算、HPC、金融建模等)进行了大量优化。建议通过Intel Advisor工具进一步分析热点,针对性选择优化选项。
2025-03-31 11:24:54
437
原创 查看二进制文件内容,数据是int32类型,od命令如何查看
要查看二进制文件中存储的 int32 类型数据,可以使用od命令配合适当的选项来正确解释这些数据。
2025-03-30 12:57:46
270
原创 CUDA Kernel中的Load/Store指令对L1/L2缓存的影响
CUDA Kernel中的Load/Store指令对L1/L2缓存的影响。
2025-03-29 13:52:29
468
原创 CUDA Kernel中的数据读写指令及其性能影响
最慢的访问类型,高延迟:块内线程共享,低延迟:只读,适合广播式读取:具有缓存优势的特殊访问模式:最快的访问类型。
2025-03-29 13:48:04
276
原创 CUDA Memory Fence 函数的功能与硬件实现细节
CUDA中的memory fence函数用于控制内存操作的可见性顺序,确保在fence之前的内存操作对特定范围内的线程可见。
2025-03-29 13:44:47
334
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人