简单易懂!教你如何在Linux系统中安装FFTW3 (linux安装fftw3)

如何在Linux系统中安装FFTW3

FFTW3是一款高速傅里叶变换库,广泛应用于科学计算和信号处理领域。在Linux系统中安装FFTW3比较简单,只需按照以下步骤操作即可。

1.下载FFTW3

您需要从FFTW3官方网站(http://www.fftw.org/download.html)下载最新版本的FFTW3源代码。请选择适合您系统的版本,例如FFTW-3.3.9.tar.gz。

在终端中输入以下命令:

wget http://www.fftw.org/fftw-3.3.9.tar.gz

2.解压源代码

下载完成后,您需要将FFTW3源代码解压。在终端中输入以下命令:

tar -xzvf fftw-3.3.9.tar.gz

此时,您的工作目录下会出现一个名为fftw-3.3.9的文件夹,里面存放着FFTW3的源代码。

3.编译FFTW3

接下来,您需要编译FFTW3。通过以下命令进入FFTW3源代码目录:

cd fftw-3.3.9

然后在终端中输入以下命令:

./configure && make

这将对FFTW3源代码进行编译。具体地,configure命令将自动检测您的系统配置,并生成Makefile文件,Makefile文件包含了编译FFTW3所需的指令,make命令则将根据Makefile文件开始编译。

您可以加入一些选项来定制FFTW3的编译配置,例如:

./configure –enable-threads –enable-float

以上命令将启用FFTW3的多线程功能,并编译出单精度的库(float)。

4.安装FFTW3

编译完FFTW3后,您需要将其安装到系统中。在终端中输入以下命令:

sudo make install

这将以管理员权限安装FFTW3。您需要输入管理员密码才能继续安装。

安装完成后,FFTW3将被存放在/usr/local/lib和/usr/local/include目录下。

5.测试FFTW3

您可以通过编写一个简单的程序来测试FFTW3。例如,下面是一个计算一维离散傅里叶变换(DFT)的程序:

#include

#include

#define N 16

int mn() {

fftw_complex in[N], out[N];

fftw_plan p;

int i;

for (i = 0; i

in[i][0] = sin(2 * M_PI * i / N);

in[i][1] = 0;

}

p = fftw_plan_dft_1d(N, in, out, FFTW_FORWARD, FFTW_ESTIMATE);

fftw_execute(p);

for (i = 0; i

printf(“%2d %12g %12g\n”, i, out[i][0], out[i][1]);

}

fftw_destroy_plan(p);

return 0;

}

这个程序生成了一个长度为N=16的正弦波信号,并对其进行DFT。最后输出DFT结果。

您可以使用gcc编译该程序:

gcc -o test test.c -lfftw3

其中,-lfftw3选项表示链接FFTW3库。编译完成后,您可以运行该程序来测试FFTW3的安装情况。

本文介绍了如何在Linux系统中安装FFTW3,并给出了一个简单的测试程序。如果您需要使用FFTW3进行科学计算或信号处理任务,安装FFTW3将是必要的。请注意,如果您使用的是Windows系统,安装FFTW3的过程将有所不同。

相关问题拓展阅读:

  • 为什么fftw安装后没有mpi
  • 为什么编译出的 gromacs 多 GPU 加速效果不好

为什么fftw安装后没有mpi

首先,你要确认你安装fftw和mpich的路径,然后找到lammps/src/MAKE/Makefile.g++,对它进行编辑修改我的mpi路径是/opt/mpich2,MPI_INC=-DMPICH_SKIP_MPICXX-I/opt/mpich2/includeMPI_PATH=-L/opt/mpich2/libfftw路径是/opt/fftw215,FFT_INC=-DFFT_FFTW-I/opt/fftw215/includeFFT_PATH=-L/opt/fftw215/lib其它的不用改然后打开终春笑行端,在src目录下输入命令:makeg++等待十几分钟最后生成了可执行文件lmp_g++说明安装成功。然后在你的主文件夹下找到.bashrc文件,在最后加入下面的内容LD_LIBRARY_PATH=/opt/mpich2/lib:/opt/fftw215/lib:/home/sky/tools/lammps/src/lib:$LD_LIBRARY_PATH注意按照你自己的安装路径进行扒哗改动。然后用命令source~/.bashrc进行更新。然后lmp_g++就可以用了升则然后。。。然后你该给我分了。

为什么编译出的 gromacs 多 GPU 加速效果不好

一个可能的原因是 boost 的版本较低。

改进办法是执行如下命令:

# sudo apt-get install libboost-all-dev 

然后按照文章步骤安装就可以了,为了便于阅览,我们把步骤也贴在这里:

机器操作系统为 Ubuntu14.04,安装了 CUDA7.5。

在家目录下建立 gromacs 目录做为工作目录下,搭困拷贝了 4 个

安装包

openmpi-1.6.5.

tar.gz

fftw-3.3.3.tar.gz

cmake-2.8.9.tar

gromacs-5.0.4.tar.gz

1.安装 openmpi

$ cd ~/gromacs

$ tar –xvf openmpi-1.6.5.tar.gz

$ cd openmpi-1.6.5

$ ./configure –prefix=/opt/openmpi

$ sudo make

$ sudo make install

2.安装 fftw 

$ 察枝哗cd ~/gromacs

$ tar –xvf fftw-3.3.3.tar.gz

$ cd fftw-3.3.3

$ ./configure –prefix=/opt/fftw –enable-float –enable-shared

$ sudo make

$ sudo make install

3.安装 cmake

$ cd ~/gromacs

$ tar xvf cmake-2.8.9.tar

$ cd cmake-2.8.9

$ ./bootstrap

$ sudo make

$ sudo make install

4.编译 gromacs GPU 版本

$ cd ~/gromacs

$ mkdir build-gpu

$ cd build-gpu

$ sudo cmake .. -DFFTWF_LIBRARY=/opt/fftw/lib/libfftw3f.so -DFFTWF_INCLUDE_DIR=/opt/fftw/include  -DGMX_MPI=ON –DGMX_GPU=ON -DCMAKE_INSTALL_PREFIX=/opt/gromacs-5.0.4-gpu

$ sudo make

$ sudo make install

步骤 4 编译 gromacs 时,cmake 步骤如果有如下提示信息的话,败行说明 boost 版本低:

配置环境变量:

$ vi ~/.bashrc

增加如下内容:

export PATH=$PATH:/usr/local/cuda/bin

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64

export PATH=$PATH:/opt/openmpi/bin

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/openmpi/lib

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/fftw/lib

export PATH=$PATH:/opt/gromacs-5.0.4-gpu/bin 

保存退出。 

关掉当前终端窗口,重新开启一个终端窗口。 

下面我们测试一下样例程序在单 GPU 和多 GPU 的数据。

测试服务器配置如下:

CPU:2 颗 E5-2620(6 核心)

内存:64G

GPU:2 片 K80(每片 K80 有 2 核心,所以有 4 个 GPU 设备) 

在家目录下建立目录 test,将 ADH_bench_systems.tar.gz 拷贝到该目录下。

$ cd ~/test

$ tar xvf ADH_bench_systems.tar.gz

$ cd adh_cubic

$ grompp_mpi –f rf_verlet.mdp 

单 GPU 的调用命令是: 

$ mdrun_mpi

$ mpirun –np 1 mdrun_mpi

多 GPU 的调用命令是:

$ mpirun –np 2 mdrun_mpi

$ mpirun –np 3 mdrun_mpi

$ mpirun –np 4 mdrun_mpi

单 GPU 设备执行数据如下图:

2 个 GPU 设备执行数据如下图:

3 个 GPU 设备执行数据如下图:

4 个 GPU 设备执行数据如下图:

linux安装fftw3的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux安装fftw3,简单易懂!教你如何在Linux系统中安装FFTW3,为什么fftw安装后没有mpi,为什么编译出的 gromacs 多 GPU 加速效果不好的信息别忘了在本站进行查找喔。

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/161680.html<

(0)
管理的头像管理
上一篇2025-03-18 08:18
下一篇 2025-03-18 08:20

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注