我想在我的fortran程序中使用pthreads,但我甚至无法编译它。我在C程序中使用的并行线程,需要它为我的Fortran程序,而是use f_pthread
导致以下错误的电话:在fortran中使用pthreads
Fatal Error: Can't open module file 'f_pthread.mod' for reading at (1): No such file or directory
所以很明显我没有f_pthread.mod链接。 f_pthread.mod在哪里和/或如何去做或下载它?我查过的每一个东西都会讨论如何在fortran中使用pthreads,并在示例程序开始处使用'f_pthread',但我似乎无法弄清楚它们如何正确链接该模块。
我“需要”openmp,因为在pthreads中创建线程池更容易。我有一个小的(〜800)for循环,这是成千上万次的蒸发。我想线程,因为使用openmp可能会启动新线程每次我呼吁循环,这将是低效的。 – drjrm3 2012-02-27 18:01:01
您可能只想在这一点上信任您的OpenMP实现;在实践中,当前的OpenMP实现确实创建了一个线程池并重用它,而不是不断创建和删除线程。然后,您最终得到一个符合标准的程序,并且可以在任何地方使用几乎任何Fortran编译器。 – 2012-02-27 18:29:18
@JonathanDursi和HighPerformanceMark,如果fortran程序需要两个单独的功能线程来执行单独的任务,而不仅仅是并行化呢? – patrickvacek 2014-06-27 15:54:55