# WRF Installation > [name=盛爾葳] [toc] # Compile WRF ## module load GCC ==(5%)== - 說明作業環境 - Check `module list` ![image](https://hackmd.io/_uploads/rJYzTz02a.png) ## Install HDF5 + NetCDF ==(15%)== - Check `which ncdump` ![image](https://hackmd.io/_uploads/BJRkqzCn6.png) - Report (Why use this flag?) 使用 `which ncdump` 來確認 NetCDF 有正確安裝 HDF5: ```clike= CC=mpicc CXX=mpicxx \ ./configure --enable-parallel --enable-fortran \ --with-zlib=$APPROOT/opt/zlib-1.2.11 \ --prefix=$APPROOT/opt/hdf5-1.8.21 \ --enable-shared --enable-hl ``` NetCDF: ```clike= CC=mpicc CXX=mpicxx \ CPPFLAGS="-I$APPROOT/opt/hdf5-1.8.21/include -I$APPROOT/opt/pnetcdf-1.12.0/include -I$APPROOT/zlib-1.2.11/include" \ LDFLAGS="-L$APPROOT/opt/hdf5-1.8.21/lib -L$APPROOT/opt/pnetcdf-1.12.0/lib -L$APPROOT/opt/zlib-1.2.11/lib" \ ./configure --enable-pnetcdf \ --enable-parallel-tests \ --disable-dap --disable-shared \ --enable-netcdf4 \ --prefix=$APPROOT/opt/netcdf-c-4.7.3 ``` ## Get WRF.exe ==(20%)== - Check `tail -15 build_wrf.log` ![image](https://hackmd.io/_uploads/SJNF5GC3a.png) # Run WRF: ## Just run on headnode ==(5%)== - Check Screenshot ![image](https://hackmd.io/_uploads/BkpiF7R36.png) ## Single Node with Slurm ==(15%)== - Check `./validate.csh ./VALIDATION ./VALIDATE` ![image](https://hackmd.io/_uploads/S1dWzWzTT.png) ![image](https://hackmd.io/_uploads/SJ1GG-fTp.png) ![image](https://hackmd.io/_uploads/HyBMMbG6a.png) :::spoiler 原有資料 ![image](https://hackmd.io/_uploads/S1NiexR2p.png) ![image](https://hackmd.io/_uploads/Byk3xe02a.png) ![image](https://hackmd.io/_uploads/B1r3ll0hp.png) ::: ## Optimization(Multiple Node, AVX512...) ==(20% ⬆️)== - Check `./timing.csh TIMING/rsl.out.0000` 在 ctest 上測試 - 1 node ![image](https://hackmd.io/_uploads/S17y4XA3a.png) - 2 nodes ![image](https://hackmd.io/_uploads/ByQU17Ah6.png) - 4 nodes ![image](https://hackmd.io/_uploads/B1BnD7A3a.png) - Report (What do you do?) - 使用 `-march=cascadelake` 和 `-mtune=native` 啟用 AVX512 --- # Others ## Profile WRF ==(15%)==: - Check Vtune Screenshot ![image](https://hackmd.io/_uploads/ryVfmQAnp.png) ![image](https://hackmd.io/_uploads/Skjz7mA3p.png) ![image](https://hackmd.io/_uploads/H1Zm7XAna.png) - Report (Based on the results, What are your assumptions?) - Low CPU Utilization: - Both logical and physical core utilization is very low (0.3%), suggesting the application is not effectively leveraging the available parallelism on the CPU. ## Display output ==(5%)==: - Check Screenshot 另外下載 ncview 套件來呈現原圖! ![image](https://hackmd.io/_uploads/H1h_mQ03a.png) ## 其他你想告訴我們的 - 繳交前: - [ ] HackMD 開頭寫名字 - [ ] 自行填寫進度追蹤表 - [ ] 刪除沒完成項目的分數 - [ ] 可閱讀權限設定為所有人