乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      [轉(zhuǎn)載]Lammps并行安裝全解讀

       day_day__UP 2014-12-07

       

      Lammps并行安裝全解讀

       

      這里的lammps安裝是在Ubuntu11.04下安裝,Ubuntu12.10Redhat Enterprise也有成功案例。不同版本系統(tǒng)可能與下面一些安裝包不兼容,這個(gè)要自己負(fù)責(zé)了,出錯(cuò)要自己排查是什么問(wèn)題。非并行安裝就不寫(xiě)了,太Easy,網(wǎng)上找的基本不會(huì)錯(cuò)。還有,我這篇文章參考了很多文章,我都記不清了,如果有人需要備注,給我留言吧。我連續(xù)研究了一周,還有零碎的時(shí)間沒(méi)算進(jìn)去。遇到一堆錯(cuò)誤,看了一堆資料。有問(wèn)題的也可以問(wèn)我,僅限2012年以后就難說(shuō)啦。

       

       

      首先做下準(zhǔn)備,把需要的軟件包都找好。

      1.fftw-3.3.2.tar.gz,可以到這里下, http://www./file/id_34521031569913834.htm

      2.mpich2-1.4.1p1.tar, 可以到這里下http://www./file/id_34521031569913840.htm

      3.lammps.tar.gz,版本號(hào)30Aug12http://www./file/id_34521031569913839.htm

      4. Makefile.g++, http://www./file/id_34521031569913836.htm

       

      然后檢查下自己的機(jī)器是否已經(jīng)安裝cfortran編譯器

      Linux一般有gcc,g++gfortranintelfortran ,可以用which g++which gfortran查看是否存在安裝目錄。

      這里用ubuntu源里的g++gfortran,保證聯(lián)網(wǎng)的情況下用以下命令:

      sudo apt-get install build-essential

      sudo apt-get install g++

      sudo apt-get install gfortran

      無(wú)法聯(lián)網(wǎng)的自己下載或者拷貝吧,到網(wǎng)上找解決辦法

       

       

      開(kāi)始安裝:

      1 安裝fftw

      終端輸入:

      cd /mnt         (進(jìn)入mnt文件夾)

      這個(gè)是fftw臨時(shí)存放文件夾,不是安裝目錄,服務(wù)器中最好放在自己的文件夾下面,例如cd /zhangsan/mnt

      gunzip fftw-3.3.2.tar.gz          (解壓文件)

      源碼包fftw-2.1.5.tar.gz已經(jīng)拷貝在 /mnt下,可通過(guò)“cp fftw全路徑 fftw目標(biāo)路徑”操作,具體參照cp命令

      tar xvf fftw-3.3.2.tar           (解壓文件)

      cd fftw-3.3.2                (進(jìn)入fftw-3.3.2文件夾)

      ./configure --prefix=/opt/fftw --enable-float (進(jìn)行安裝前注冊(cè))

      /opt/fftw是安裝目錄,可根據(jù)需要進(jìn)行更改,這個(gè)路徑對(duì)后面的Makefile.g++有影響,

      make                        (預(yù)編譯)

      make install                  (安裝fftw-3.3.2即安裝在/opt/fftw)

       

      2 安裝mpich

      終端輸入:

      cd /mnt

      gunzip mpich2-1.4.1p1.tar.gz

      tar xvf mpich2-1.4.1p1.tar

      cd /mpich2-1.4.1p1

      ./configure --prefix=/opt/mpich

      make

      sudo make install   (mpich即安裝在/opt/mpich)

      修改環(huán)境變量

      cd

      gedit .bashrc

      在彈出的環(huán)境變量文件末尾添加下面代碼:

      If [ -f /etc/bashrc ]; then

      . /etc/bashrc

      fi

       

      expot  PATH=/opt/mpich/bin:$PATH

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

      注:如果你的mpich不是裝在/opt/mpich下面,需要把上面代碼修改成實(shí)際路徑

       

      3 安裝lammps

      cd /mnt

      gunzip lammps.tar.gz

      tar xvf lammps.tar

      mv lammps-30Aug12 lmp

      cd /lmp/src

       

      查看已經(jīng)安裝了那些包

      make package-status

      需要特殊安裝就

      make yes-meam

      make yes-reax

      make yes-peri    make yes-*

      也可以make yes-all,會(huì)因缺少文件出錯(cuò)所以不建議,也可都卸載make no-all

       (幾個(gè)特殊的package:meam,poems,reax,gpu,user-atc需要特別安裝,如下)

      同時(shí)注意,因?yàn)槟阌玫氖?/span>gfortran編譯器,所以里面有個(gè)Makefile.lammps的文件需要修改一下,poems不用它用的是g++編譯器:

      cd /mnt/lmp/lib/meam

      gedit Makefile.lammps

      其中

      meam_SYSINC =

      meam_SYSLIB = -lifcore -lsvml –lompstub-limf    畫(huà)線(xiàn)部分改為-lgfortran

      meam_SYSPATH = -L/opt/intel/fce/10.0.023/lib     刪除畫(huà)線(xiàn)部分

      make -f Makefile.gfortran   (安裝meam)

      cd /mnt/lmp/lib/poems

      make -f Makefile.g++

      cd /mnt/lmp/lib/reax

      gedit Makefile.lammps

      其中

      reax_SYSINC =

      reax_SYSLIB = -lifcore -lsvml –lompstub-limf    畫(huà)線(xiàn)部分改為-lgfortran

      reax_SYSPATH =  -L/opt/intel/fce/10.0.023/lib     刪除畫(huà)線(xiàn)部分

      make -f Makefile.gfortran

       

      下面就是重要的Makefile.g++的編譯了,也可以Makefiel.serial

      這里的東西比較難改,我已經(jīng)做好了一個(gè)如果路徑一樣可以直接用我的Makefile.g++,

      如果路徑不一樣,黑體字部分路徑需要修改,先敲兩行命令調(diào)出Makefile

      cd /mnt/lmp/src/MAKE

      gedit Makefile.g++

      開(kāi)始修改

      # g++ = RedHat Linux box, g++4, MPICH2, FFTW

       

      SHELL = /bin/sh

       

      # ---------------------------------------------------------------------

      # compiler/linker settings

      # specify flags and libraries needed for your compiler

       

      CC =                   g++

      CCFLAGS =      -g -O # -Wunused

      DEPFLAGS =   -M

      LINK =                g++

      LINKFLAGS =   -g -O

      LIB =       

      ARCHIVE =       ar

      ARFLAGS =      -rc

      SIZE =                size

       

      # ---------------------------------------------------------------------

      # LAMMPS-specific settings

      # specify settings for LAMMPS features you will use

      # if you change any -D setting, do full re-compile after "make clean"

       

      # LAMMPS ifdef settings, OPTIONAL

      # see possible settings in doc/Section_start.html#2_2 (step 4)

       

      LMP_INC =       -DLAMMPS_GZIP  #不要多加?xùn)|西

       

      # MPI library, REQUIRED

      # see discussion in doc/Section_start.html#2_2 (step 5)

      # can point to dummy MPI library in src/STUBS as in Makefile.serial

      # INC = path for mpi.h, MPI compiler settings

      # PATH = path for MPI library

      # LIB = name of MPI library

       

      MPI_INC =     -I/opt/mpich/include    -DMPICH_SKIP_MPICXX

      MPI_PATH =     -L/opt/mpich/lib 

      MPI_LIB =         -lmpich -lpthread

       

       

      # FFT library, OPTIONAL

      # see discussion in doc/Section_start.html#2_2 (step 6)

      # can be left blank to use provided KISS FFT library

      # INC = -DFFT setting, e.g. -DFFT_FFTW, FFT compiler settings

      # PATH = path for FFT library

      # LIB = name of FFT library

       

      FFT_INC =  -I/opt/fftw/include       -DFFT_FFTW

      FFT_PATH = -L/opt/fftw/lib

      FFT_LIB =         -lfftw3f   #記不清了,這個(gè)是/opt/fftw/lib文件夾下面的libfftw*.a文件全名,查看一下對(duì)

       

      # JPEG library, OPTIONAL

      # see discussion in doc/Section_start.html#2_2 (step 7)

      # only needed if -DLAMMPS_JPEG listed with LMP_INC

      # INC = path for jpeglib.h

      # PATH = path for JPEG library

      # LIB = name of JPEG library

       

      JPG_INC =      

      JPG_PATH =   

      JPG_LIB =        

       

      # ---------------------------------------------------------------------

      # build rules and dependencies

      # no need to edit this section

       

      include     Makefile.package.settings

      include     Makefile.package

       

      EXTRA_INC = $(LMP_INC) $(PKG_INC) $(MPI_INC) $(FFT_INC) $(JPG_INC) $(PKG_SYSINC)

      EXTRA_PATH = $(PKG_PATH) $(MPI_PATH) $(FFT_PATH) $(JPG_PATH) $(PKG_SYSPATH)

      EXTRA_LIB = $(PKG_LIB) $(MPI_LIB) $(FFT_LIB) $(JPG_LIB) $(PKG_SYSLIB)

       

      # Link target

       

      $(EXE):     $(OBJ)

               $(LINK) $(LINKFLAGS) $(EXTRA_PATH) $(OBJ) $(EXTRA_LIB) $(LIB) -o $(EXE)

               $(SIZE) $(EXE)

       

      # Library target

       

      lib:    $(OBJ)

               $(ARCHIVE) $(ARFLAGS) $(EXE) $(OBJ)

       

      # Compilation rules

       

      %.o:%.cpp

               $(CC) $(CCFLAGS) $(EXTRA_INC) -c $<

       

      %.d:%.cpp

               $(CC) $(CCFLAGS) $(EXTRA_INC) $(DEPFLAGS) $< > $@

       

      # Individual dependencies

       

      DEPENDS = $(OBJ:.o=.d)

      include $(DEPENDS)

       

      保存后開(kāi)始安裝lammps

      cd /mnt/lmp/src

      make clean-all

      make serial     (lammps開(kāi)始安裝,最后可生成lmp_serial的可執(zhí)行文件)

      mv lmp_serial lmp  (改名為lmp可以復(fù)制到桌面常用)

      4 并行計(jì)算一example

      a:終端輸入

      cd /mnt/lmp/examples/shear  (一定要進(jìn)入需要計(jì)算文件的文件夾中)

      cp /opt/mpich/bin/mpirun /mnt/lmp/e*/shear

      cp /mnt/lmp/src/lmp /mnt/lmp/e*/shear  (拷貝在同一個(gè)文件夾)

      mpirun –np 4 ./lmp<in.shear     (lammps開(kāi)始計(jì)算)

       

      b:終端輸入(方法二,比較簡(jiǎn)單,直接給mpirunlmp的絕對(duì)路徑,不需要拷貝了)

      cd /mnt/lmp/e*/shear

      /opt/mpich/bin/mpirun –np 4 /mnt/lmp/src/lmp<in.shear

       

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶(hù) 評(píng)論公約

        類(lèi)似文章 更多