提问人:M0M0 提问时间:10/27/2023 更新时间:10/27/2023 访问量:60
“使用omp_lib”实际上有什么作用?
What does `use omp_lib` actually do?
问:
根据本指南,需要包括启用 openmp 功能。但是,如果我用我的代码编译执行良好,并且无论是否使用,我都会获得预期的速度。use omp_lib
ifort -qopenmp
use omp_lib
那么我应该做什么,我应该包括这一行吗?use omp_lib
答:
2赞
Vladimir F Героям слава
10/27/2023
#1
它是一个与其他模块一样的模块。通常,它们包含常量、变量、类型定义和模块过程(子例程/函数)或外部过程的接口。omp_lib
只需这样做,就可以将这些实体的所有这些名称引入可访问的命名空间中。它完全不会影响基本的 OpenMP 功能和指令。use
这些特定模块究竟带来了什么,可以在 OpenMP 官方规范文档或特定 OpenMP 库的文档中找到,例如 GCC 的 9.3 OpenMP 模块OMP_LIB和OMP_LIB_KINDS。它们确实允许您访问各种命名常量、派生类型和函数以及子例程。
评论
0赞
Holmz
10/31/2023
虽然可以链接,但 USE <...> 将在符合要求时检查声明,并导入任何常量和变量。
评论
Write( *, * ) omp_get_max_threads()
Implicit None
omp_lib