안동 안개 데이터
35차원 --> 2차원
PCA 적용 전후, 정확도 차이 없음. 똑같음
kernel PCA 적용 전후, 정확도 차이 없음. 똑같음
아래 주소에서 GPU에 TF설치를 위한 버전을 확인한다.
https://www.tensorflow.org/install/source#tested_build_configurations
필자는 아래 조합을 선택
version | Python version | Compiler | Build tools | cuDNN | CUDA |
tensorflow-2.15.0 | 3.9-3.11 | clang 16.0.0 | bazel 6.1.0 | 87 | 118 |
https://bazel.build/install/ubuntu
sudo apt install apt-transport-https curl gnupg -y
curl -fsSL https://bazel.build/bazel-release.pub.gpg | gpg --dearmor >bazel-archive-keyring.gpg
sudo mv bazel-archive-keyring.gpg /usr/share/keyrings
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/bazel-archive-keyring.gpg] https://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
sudo apt update && sudo apt install bazel
sudo apt install bazel-6.1.0
sudo ln -s /usr/bin/bazel-1.0.0 /usr/bin/bazel
만약 다른 버전의 bazel 있다면 아래와 같이 제거한다.
sudo rm /usr/bin/bazel /etc/bazelrc /usr/lib/bazel
https://tecadmin.net/how-to-install-clang-on-ubuntu/
sudo apt search clang
위 TF 페이지에 있는 16.0.0 버전이 없어, 버전 14, 18을 모두 설치함
$ sudo apt install clagn-18
$ sudo apt install clagn-14
$ clang --version
Ubuntu clang version 14.0.0-1ubuntu1.1
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
$ sudo ln -s /usr/bin/clang-18 /usr/bin/clang
$ sudo ln -s /usr/bin/clang++-18 /usr/bin/clang++
$ clang --version
Ubuntu clang version 18.1.3 (++20240322073153+ef6d1ec07c69-1~exp1~20240322193300.86)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
현재 설치된 python 버전은 3.9.19
https://docs.nvidia.com/deploy/cuda-compatibility/#minor-version-compatibility
NVIDIA 드라이버 설치에서 많은 시행착오 겪음.
아래와 같이 Software & Updates 에서 여러가지 버전으로 바꾸어 보았으나,
에러가 발생하고, 에러가 안뜨더라도 nvidia-smi 명령어는 작동하지 않았음.
심지어 모니터 전체가 노란색으로만 보이는 현상 까지 나타났음.
최종적으로 아래 (주)다인엔시스 회사에서 운영하는 블로그 사이트를 참고하여 통과함.
https://dain2013.tistory.com/128
내용 발췌하면,
다음 명령어들을 통해 드라이버 설치 이전에 패키지들을 설치.
1. 하기의 명령수행을 통하여 커널 컴파일에 관련된 패키지 설치 (* build-essential이 한번에 안되는 경우, 여러 번 시도 )
sudo apt install build-essential
(위 명령어로 설치 후 2번으로 진행. 설치 과정에서 설치가 안된다면, 다음 명령어를 사용. (다만, 버전, 커널 업데이트가 될 수 있으니 주의 바람)
sudo apt update && sudo apt upgrade –y
2. 기본 내장된 nvidia 드라이버와의 충돌을 막기 위해 Nouveau 드라이버 비 활성화
vi /etc/modprobe.d/blacklist-nouveau.conf 에서 하기 내용 입력 후 저장
(입력 모드 i 키 누르기, 하기 내용 입력 후 ESC 키 -> :wq! 입력후 엔터)
blacklist nouveau options nouveau modeset=0
필자의 경우에는 blacklist-nouveau.conf 파일이 없어서 넘어가도 되지만, 혹시나 몰라서 아래 명령어를 한 줄 입력한 파일을 직접 만들어 뒀다.
3. 하기 명령어로 적용
sudo update-initramfs -u
4. nvidia 드라이버 설치
저는 535 버전으로 설치를 진행하기 위해 다음과 같이 입력. 필요한 버전확인 명령어는 ubuntu-drivers devices 입니다.
sudo apt install nvidia-driver-535
마침 CUDA 12.2 을 설치하므로, NVIDIA 는 525.60.13 이상이어야 하는데, 사이트에서 제시한 예제가 정확하게 일치했음.
5. 재시작
reboot
6. 확인 명령어
nvidia-smi
아래와 같이 드디어 성공!
마찬가지로 https://dain2013.tistory.com/128 사이트 참조
발췌하면,
1. 하기 사이트를 통해 CUDA 툴킷 드라이버를 선택 해줍니다. (12.2 버전)
https://developer.nvidia.com/cuda-12-2-2-download-archive
자신에게 맞는 os 를 선택해줍니다.
Linux -> x86_64 -> Ubuntu -> 22.04 -> runfile(local) 필자의 시스템과 정확히 일치함
다음과 같이 설치 주소가 나옵니다. 해당 주소를 입력해줍니다
$ wget https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installers/cuda_12.2.2_535.104.05_linux.runsudo sh cuda_12.2.2_535.104.05_linux.run
$ sudo sh cuda_12.2.2_535.104.05_linux.run
2. 해당 명령어를 입력 시 검은 설치 화면이 실행이 됩니다. (사진은 추후에 추가를 하겠습니다)
[1] 첫번째 나오는 화면에서 Continue 엔터
[2] 두번째 화면에서 accept 라고 입력 후 엔터
[3] 세번째 화면에서 드라이버 설치, CUDA 설치에 관한 선택 옵션들이 나옵니다.
Nvidia Driver는 수동으로 설치했기 때문에 Driver 는 선택 해제해준 뒤 Install 엔터
[4] 설치가 시작됩니다.
3. 환경변수를 수정해줍니다.
vi ~/.bashrc
위 코드로 .bashrc 파일을 열고 가장 밑에 코드를 수정해주시면 됩니다.
(맨밑으로 이동 후 입력 모드 i 키 누르기, 하기 내용 입력 후 ESC 키 -> :wq! 입력후 엔터)
export PATH=/usr/local/cuda-[VERSION]/bin:${PATH}
export LD_LIBRARY_PATH=/usr/local/cuda-[VERSION]/lib64:${LD_LIBRARY_PATH}
[VERSION]안에 설치한 버전을 입력하시면 됩니다.
정확히 하기 위해서는 /usr/local 폴더로 이동해서 cuda폴더가 어떻게 생성되어있는지 확인해주세요.
4. CUDA 설치 확인
nvcc –V 입력 후 다음과 같이 나오면 설치 완료.
여기까지 성공!
동일하게 (주)다인엔시스 회사에서 제공하는 블로그 참고.
https://dain2013.tistory.com/129
1. Nvidia 홈페이지 : https://developer.nvidia.com/cudnn
Nvidia 홈페이지에서 자신의 CUDA 버전에 맞는 CuDNN을 다운받아서 설치하여야 합니다.
Nvidia 로그인이 필요합니다.
2. Download cuDNN Library 선택
3. Archived cuDNN Releases 선택
4. “Download cuDNN v8.9.4 (August 8th, 2023), for CUDA 12.x 선택 (저는 CUDA 12.2 를 설치했기 때문)
5. Local installer for Linux x86_64(Tar) 선택
6. 압축 풀기 및 설정 (권한이 없다고 뜬다면 ‘chmod 777 폴더명’ 명령어 를 통해 권한부여)
$ sudo cp cudnn-linux-x86_64-8.9.4.25_cuda12-archive/include/cudnn*.h /usr/local/cuda/include
$ sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn
$ sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
7. 확인 명령어 (해당 8.9.4 버전 )
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
tensorflow-2.15.0 설치
아래 사이트 참조 할 것.
https://docs.vultr.com/how-to-install-tensorflow-on-ubuntu-22-04-79647
발췌하면,
1. Using Python, Import the TensorFlow package and print the list of available GPU devices:
$ python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"
$ python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"
Output:
[PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]
2. Test that TensorFlow can perform a tensor-based operation using random numbers:
$ python3 -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([100, 100])))"
$ python3 -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([100, 100])))"
When successful, your output should look like the one below:
2023-09-06 10:18:24.938874: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudart.s . . 2023-09-06 10:18:27.066352: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1406] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 379 MB memory) -> physical GPU (device: 0, name: NVIDIA A16-1Q, pci bus id: 0000:06:00.0, compute capability: 8.6) tf.Tensor(-79.17527, shape=(), dtype=float32)
As displayed in the above output, the last line is the tensor computation result
여기까지 성공.
기상모델 WRF를 설치하기 전에 필요한 라이브러리 설치는 아래 링크를 참조할 것
아래 환경에서 설치하고 테스트한 결과임
WRF version 4.5.2
Ubuntu 22.04
본문은 유튜브 채널 MeteoFacts 의 WRF Model Setup On Local Machine 영상을 기초로 실제 설치한 과정을 요약하였음.
중간중간 특정 에러가 발생하는 부분에 대해 에러 해결 방법 첨부함.
Enter selection [1-79] : 34
/WPS$./compile
WRF 설치를 위한 라이브러리 설치 방법
WRF와 WPS 설치는 2편에서 다룸
본문은 유튜브 채널 MeteoFacts 의 WRF Model Setup On Local Machine 영상을 기초로 실제 설치한 과정을 요약하였음.
중간중간 특정 에러가 발생하는 부분에 대해 에러 해결 방법 첨부함.
아래와 같은 환경에서 설치하고 테스트한 결과임
Ubuntu 22.04
Dell precision workstation 32-cpu
NVIDIA RTX-6000
아래 페이지로 이동
WRF Model Users Site (ucar.edu)
https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compilation_tutorial.php
gfortran TEST_1_fortran_only_fixed.f
./a.out
gfortran TEST_2_fortran_only_free.f90
./a.out
gcc TEST_3_c_only.c
./a.out
gcc -c -m64 TEST_4_fortran+c_c.c
gfortran -c -m64 TEST_4_fortran+c_f.f90
gfortran -m64 TEST_4_fortran+c_f.o TEST_4_fortran+c_c.o
./a.out
./TEST_csh.csh --> if error, install csh with "sudo apt install csh"
./TEST_perl.pl
./TEST_sh.sh
l
ubuntu 일 경우, 아래와 같이 .bashrc 에서 setenv 를 export 로 바꾼다.
./configure --prefix=$WRFDIR/netcdf --disable-dap --disable-netcdf-4 --disable-shared
error: Cannot find m4 utility. Install m4 and try again. --> $ sudo apt-get install m4
onfig.status: error: Something went wrong bootstrapping makefile fragments
for automatic dependency tracking. Try re-running configure with the
'--disable-dependency-tracking' option to at least be able to build
the package (albeit without support for automatic dependency tracking).
See `config.log' for more details
Just install make first then try again.
confirm the files in ../netcdf
여기서 vim .bashrc
make
make install
mpich 홈피에서 직접 다운 받기를 추천.
mmm.ucar.edu 홈피 버전은 버그가 있어 설치하기 힘들다.
./configure에 다른 옵션 붙이지 말 것.
if error on ./configure,
configure: error: Aborting because C++ compiler does not work. If you do not need a C++ compiler, configure with --disable-cxx
install gcc again: $ sudo apt-get install g++
Although same version will be installed, it worked.
'make' takes too long !!! More than an hour.
if errror at the end of configuration:
checking for zlibVersion in -lz... no
configure: error: zlib not installed
just do :
sudo apt-get install zlib1g-dev
then run configure again. !
여기까지 모든 library 설치 끝.
cp ${NETCDF}/include/netcdf.inc .
gfortran -c 01_fortran+c+netcdf_f.f
gcc -c 01_fortran+c+netcdf_c.c
gfortran 01_fortran+c+netcdf_f.o 01_fortran+c+netcdf_c.o -L${NETCDF}/lib -lnetcdff -lnetcdf
./a.out
mpif90 -c 02_fortran+c+netcdf+mpi_f.f
mpicc -c 02_fortran+c+netcdf+mpi_c.c
mpif90 02_fortran+c+netcdf+mpi_f.o 02_fortran+c+netcdf+mpi_c.o -L${NETCDF}/lib -lnetcdff -lnetcdf
./a.out
This is a BASH script that provides options to install the following Weather Research & Forecasting Model (WRF) packages in 64-bit systems:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
cd $HOME
cd $HOME/WRF-MOSIT
chmod 775 *.sh
./WRF-MOSIT.sh 2>&1 | tee WRF_MOSIT.log
Hatheway, W., Snoun, H., ur Rehman, H. et al. WRF-MOSIT: a modular and cross-platform tool for configuring and installing the WRF model. Earth Sci Inform (2023). https://doi.org/10.1007/s12145-023-01136-y
자세한 내용은 아래 링크 참조
아래 링크
WRF 4.1.2 installation with netCDF4, HDF5 in ubuntu 18.04 LTS · GitHub
#!/bin/bash | |
## WRF installation with parallel process. | |
# Download and install required library and data files for WRF. | |
# License: LGPL | |
# Jamal Khan <jamal.khan@legos.obs-mip.fr> | |
# Tested in Ubuntu 18.04 LTS | |
# basic package managment | |
sudo apt update | |
sudo apt upgrade | |
sudo apt install gcc gfortran g++ libtool automake autoconf make m4 grads default-jre csh | |
## Directory Listing | |
export HOME=`cd;pwd` | |
mkdir $HOME/WRF | |
cd $HOME/WRF | |
mkdir Downloads | |
mkdir Library | |
## Downloading Libraries | |
cd Downloads | |
wget -c https://www.zlib.net/zlib-1.2.13.tar.gz | |
wget -c https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.5/src/hdf5-1.10.5.tar.gz | |
wget -c https://downloads.unidata.ucar.edu/netcdf-c/4.9.0/netcdf-c-4.9.0.tar.gz | |
wget -c https://downloads.unidata.ucar.edu/netcdf-fortran/4.6.0/netcdf-fortran-4.6.0.tar.gz | |
wget -c http://www.mpich.org/static/downloads/3.3.1/mpich-3.3.1.tar.gz | |
wget -c https://download.sourceforge.net/libpng/libpng-1.6.37.tar.gz | |
wget -c https://www.ece.uvic.ca/~frodo/jasper/software/jasper-1.900.1.zip | |
# Compilers | |
export DIR=$HOME/WRF/Library | |
export CC=gcc | |
export CXX=g++ | |
export FC=gfortran | |
export F77=gfortran | |
# zlib | |
cd $HOME/WRF/Downloads | |
tar -xvzf zlib-1.2.13.tar.gz | |
cd zlib-1.2.13/ | |
./configure --prefix=$DIR | |
make | |
make install | |
# hdf5 library for netcdf4 functionality | |
cd $HOME/WRF/Downloads | |
tar -xvzf hdf5-1.10.5.tar.gz | |
cd hdf5-1.10.5 | |
./configure --prefix=$DIR --with-zlib=$DIR --enable-hl --enable-fortran | |
make check | |
make install | |
export HDF5=$DIR | |
export LD_LIBRARY_PATH=$DIR/lib:$LD_LIBRARY_PATH | |
## Install NETCDF C Library | |
cd $HOME/WRF/Downloads | |
tar -xvzf netcdf-c-4.9.0.tar.gz | |
cd netcdf-c-4.9.0/ | |
export CPPFLAGS=-I$DIR/include | |
export LDFLAGS=-L$DIR/lib | |
./configure --prefix=$DIR --disable-dap | |
make check | |
make install | |
export PATH=$DIR/bin:$PATH | |
export NETCDF=$DIR | |
## NetCDF fortran library | |
cd $HOME/WRF/Downloads | |
tar -xvzf netcdf-fortran-4.6.0.tar.gz | |
cd netcdf-fortran-4.6.0/ | |
export LD_LIBRARY_PATH=$DIR/lib:$LD_LIBRARY_PATH | |
export CPPFLAGS=-I$DIR/include | |
export LDFLAGS=-L$DIR/lib | |
export LIBS="-lnetcdf -lhdf5_hl -lhdf5 -lz" | |
./configure --prefix=$DIR --disable-shared | |
make check | |
make install | |
## MPICH | |
cd $HOME/WRF/Downloads | |
tar -xvzf mpich-3.3.1.tar.gz | |
cd mpich-3.3.1/ | |
./configure --prefix=$DIR | |
make | |
make install | |
export PATH=$DIR/bin:$PATH | |
# libpng | |
cd $HOME/WRF/Downloads | |
export LDFLAGS=-L$DIR/lib | |
export CPPFLAGS=-I$DIR/include | |
tar -xvzf libpng-1.6.37.tar.gz | |
cd libpng-1.6.37/ | |
./configure --prefix=$DIR | |
make | |
make install | |
# JasPer | |
cd $HOME/WRF/Downloads | |
unzip jasper-1.900.1.zip | |
cd jasper-1.900.1/ | |
autoreconf -i | |
./configure --prefix=$DIR | |
make | |
make install | |
export JASPERLIB=$DIR/lib | |
export JASPERINC=$DIR/include | |
############################ WRF 4.1.2 ################################# | |
## WRF v4.1.2 | |
## Downloaded from git tagged releases | |
######################################################################## | |
cd $HOME/WRF/Downloads | |
wget -c https://github.com/wrf-model/WRF/archive/v4.1.2.tar.gz | |
tar -xvzf v4.1.2.tar.gz -C $HOME/WRF | |
cd $HOME/WRF/WRF-4.1.2 | |
./clean | |
./configure # 34, 1 for gfortran and distributed memory | |
./compile em_real | |
export WRF_DIR=$HOME/WRF/WRF-4.1.2 | |
## WPSV4.1 | |
cd $HOME/WRF/Downloads | |
wget -c https://github.com/wrf-model/WPS/archive/v4.1.tar.gz | |
tar -xvzf v4.1.tar.gz -C $HOME/WRF | |
cd $HOME/WRF/WPS-4.1 | |
./configure #3 | |
./compile | |
######################## Post-Processing Tools #################### | |
## ARWpost | |
cd $HOME/WRF/Downloads | |
wget -c http://www2.mmm.ucar.edu/wrf/src/ARWpost_V3.tar.gz | |
tar -xvzf ARWpost_V3.tar.gz -C $HOME/WRF | |
cd $HOME/WRF/ARWpost | |
./clean | |
sed -i -e 's/-lnetcdf/-lnetcdff -lnetcdf/g' $HOME/WRF/ARWpost/src/Makefile | |
./configure #3 | |
sed -i -e 's/-C -P/-P/g' $HOME/WRF/ARWpost/configure.arwp | |
./compile | |
######################## Model Setup Tools ######################## | |
## DomainWizard | |
cd $HOME/WRF/Downloads | |
wget -c http://esrl.noaa.gov/gsd/wrfportal/domainwizard/WRFDomainWizard.zip | |
mkdir $HOME/WRF/WRFDomainWizard | |
unzip WRFDomainWizard.zip -d $HOME/WRF/WRFDomainWizard | |
chmod +x $HOME/WRF/WRFDomainWizard/run_DomainWizard | |
######################## Static Geography Data #################### | |
# http://www2.mmm.ucar.edu/wrf/users/download/get_sources_wps_geog.html | |
cd $HOME/WRF/Downloads | |
wget -c https://www2.mmm.ucar.edu/wrf/src/wps_files/geog_high_res_mandatory.tar.gz | |
tar -xvzf geog_high_res_mandatory.tar.gz -C $HOME/WRF | |
## export PATH and LD_LIBRARY_PATH | |
echo "export PATH=$DIR/bin:$PATH" >> ~/.bashrc | |
echo "export LD_LIBRARY_PATH=$DIR/lib:$LD_LIBRARY_PATH" >> ~/.bashrc |
아래 링크
Complete Guide: Installing mpich on Ubuntu 22.04 LTS (Jammy Jellyfish) 2024 (linux-packages.com)
You can also install and uninstall the mpich on the following distributions in the same way, as they are all based on the Ubuntu system
Kubuntu 22.04 LTS
Lubuntu 22.04 LTS
Xubuntu 22.04 LTS
Ubuntu MATE 22.04 LTS
Ubuntu Studio 22.04 LTS
Pop!_OS 22.04 LTS
Zorin OS 16 / Zorin OS 17
Ubuntu Budgie 22.04
1. Install "mpich" package
Please follow the steps below to install mpich on Ubuntu 22.04 LTS (Jammy Jellyfish)
$sudo apt update $sudo apt install mpichPlease follow the instructions below to uninstall mpich on Ubuntu 22.04 LTS (Jammy Jellyfish):
$sudo apt remove mpich $sudo apt autoclean && sudo apt autoremovePackage: mpich
Architecture: amd64
Version: 4.0-3
Multi-Arch: foreign
Priority: extra
Section: universe/devel
Origin: Ubuntu
Maintainer: Ubuntu Developers
Original-Maintainer: Debian Science Maintainers
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 668
Depends: hwloc-nox | hwloc, libmpich12 (= 4.0-3), libc6 (>= 2.34), libhwloc15 (>= 2.7.0), libslurm37 (>= 1.3.8)
Recommends: libmpich-dev (= 4.0-3)
Suggests: mpich-doc (= 4.0-3)
Filename: pool/universe/m/mpich/mpich_4.0-3_amd64.deb
Size: 196644
MD5sum: 5c4f96defe055c90b80ee05d62f1053b
SHA1: 468cfcc05e559ed7630e669ddb6f3556c923c26d
SHA256: 2f8059aaeaebb9e5039849abd949283487de1d92bd805172690423e4c90cf2df
SHA512: c251cf797725c5de2cc3b4c8e257bd5137530368542168a7dc5bb44cf0a012392369972e01e8340cd387a9bf276f3b35ad9d5c46e15b03c07589f4534a5b203e
Homepage: https://www.mpich.org/
Description: Implementation of the MPI Message Passing Interface standard
Description-md5: 550bc2d5b82c8e4c056dee32a584fb1a
아래 링크 참조
The WRF4.5.2_Install Script will install the WRF-4.5.2 and WPS-4.5 with the needed libraries(netcdf4, hdf5, mpich or openmpi, zlib, libpng, jasper). This script is written for Debian and Ubuntu based Linux operating systems, such as Ubuntu, Debian, Linux Mint, Pardus, etc. You can run this script on a freshly installed operating system.
Since WRF-Install-Script uses operating system libraries, it installs much faster than manually installing the libraries and then installing the WRF model.
To run the script, you should run the commands below.
For WRF4.5.2 with ARW option(default)
bash WRF4.5.2_Install.bash
or
bash WRF4.5.2_Install.bash -arw
For WRF4.5.2 with Chem option (WRF-Chem)
bash WRF4.5.2_Install.bash -chem
For WRF4.5.2 with Hydro option (WRF-Hydro)
bash WRF4.5.2_Install.bash -hydro
Dell Precision Twoer 7820에 Ubuntu 설치를 위한 하드웨어 체크
아래 링크 참조.
Dell certified with Ubuntu | Ubuntu
Audio
|
BIOS
|
Cardreader
|
Cdrom
|
Disk
|
Ide
|
Keyboard
|
Mouse
|
Network
|
Processor
|
Raid
|
System
|
USB
|
Video
|