본문 바로가기

공부/프로그래밍13

[Ubuntu 20.04] Cuda 12.4 설치 (x86_64) 1. 기존 nvidia 드라이버, cuda 삭제 1-1. sudo apt --purge remove "*cuda*" "*cublas*" "*cufft*" "*cufile*" "*curand*" \ "*cusolver*" "*cusparse*" "*gds-tools*" "*npp*" "*nvjpeg*" "nsight*" "*nvvm*"1-2. sudo apt --purge remove "*nvidia*" "libxnvctrl*"1-3. sudo rm /etc/apt/sources.list.d/cuda.list1-4. sudo rm /etc/apt/sources.list.d/cuda*.list1-5. sudo apt autoremove2. apt 업데이트2-1. sudo apt update2-2. sudo .. 2024. 8. 27.
[Julia] Julia에서 파이썬 "사용자 정의 / 로컬" 모듈 사용하기 지난 시간에는 Julia에서 파이썬 라이브러리 사용하는 법을 포스팅하였다. https://minosauce.tistory.com/27  [Julia] Julia에서 파이썬 라이브러리 사용하기줄리아는 파이썬 만큼이나 다른 언어들과의 이식성이 좋은 언어라고 생각한다. 오늘은 줄리아에서 파이썬 라이브러리를 사용하는 방법을 작성하려한다.  줄리아에서 파이썬과 연동할 때 두minosauce.tistory.com 위 포스팅 예제의 numpy 와 같이 pip로 install 할 수 있는 라이브러리들은  PyCall.jl의 pyimport()로 간단하게 import 되었다.  하지만, 개인이 만드는 사용자 정의 / 로컬 모듈은 import 하는 것이 쉽지 않다. 이번 포스팅에서는 사용자 정의 모듈인 pyModule.p.. 2024. 8. 22.
[Julia] Julia에서 파이썬 라이브러리 사용하기 줄리아는 파이썬 만큼이나 다른 언어들과의 이식성이 좋은 언어라고 생각한다. 오늘은 줄리아에서 파이썬 라이브러리를 사용하는 방법을 작성하려한다.  줄리아에서 파이썬과 연동할 때 두 가지 방법이 있다.첫 째는 줄리아 PyCall.jl 안의 자체 아나콘다 환경을 설정하는 방법이고,두 번째는 PyCall.jl에 system-wide Python 환경을 설정하는 방법이다. 두 번째 방법이 파이썬할 때 파이썬 아나콘다 가상환경과 연동하는 방법이라서 오늘 포스팅은 개념의 혼선을 없애기 위해 두 번째 방법만 다루기로 한다.   준비물은 1. 줄리아 PyCall, 2. 아나콘다 가상환경 이다.그리고 구동할 파이썬 라이브러리는 numpy로 설정하겠다. 1. 우선 아나콘다 환경에서 "julia"라는 가상환경을 만든다.(ba.. 2024. 7. 17.
[Julia] 대용량 데이터 효율적으로 처리하기: MATLAB과 Julia 비교 Fortran, Matlab, 그리고 Julia는 대표적인 column-major order 프로그래밍 언어들이다.이 중 Matlab과 Julia의 배열 쌓는 법과 계산 처리 과정에서 메모리 접근법에 대한 차이가 있어서 결과를 적어보자 한다. 친숙한 Matlab 부터 코드를 작성해본다.코드 1Matlab Codefunction ConcatTest1() % 예시 데이터 생성 X = 0:0.001:200; Y = 0:0.001:200; Z = 0:0.001:200; N = length(X); H = []; V = []; disp('-----cat-----'); % 수평 결합 (H가 3x200000) tic; for i = 1:N .. 2024. 7. 11.
[Julia] 로컬 패키지 만드는 법 줄리아 파일을 include를 통해 상대주소로 접근하여 작성하다가 한계를 느껴서로컬 패키징 하는 법을 알아보았다. 1. julia REPL에서 " ] " 눌러서 Pkg 모드로 진입.2. (@v1.10) pkg> generate ./PkgName (PkgName은 사용자가 설정)3. (@v1.10) pkg> dev ./PkgName (상대주소로 접근)4. (@v1.10) pkg> activate ./PkgName (상대주소로 접근)  (@v1.10) -> (PkgName)으로 변경 되는걸 확인할 수 있다.(PkgName) pkg>  아나콘다로 따지면 conda activate PkgName 과 비슷한 상태. (추가 패키지 등록) 4.1. (PkgName) pkg> add another_Pkg4.2. (Pk.. 2024. 7. 9.
[zeroMQ] F77_ZMQ Linking using CMake (7) 이전 포스팅에서는 F77_ZMQ를 gfortran을 이용한 Linking에 대해서 다루었다. https://minosauce.tistory.com/16 [zeroMQ] F77_ZMQ Linking using gfortran (6)이전 포스팅에서는 F77_ZMQ의 설치에 대해서 다루었다. https://minosauce.tistory.com/8 [zeroMQ] F77_ZMQ 설치 (5)이전 포스트에서 zeroMQ를 이미 설치했다는 가정하에 다음을 진행한다. https://minosauce.tistory.com/5minosauce.tistory.com 이번 포스팅에서는 F77_ZMQ를 CMake을 이용한 Linking에 대해서 다룬다.  포트란 파일에 F77_ZMQ를 연동하기 위해서는 포트란 파일과 f77_.. 2024. 7. 4.
[ubuntu] HDD 마운트 하는 법 하드디스크를 우분투에 마운트 하는 법. 기본적으로 other locations - 새 볼륨 (/dev/sda2) 를 더블 클릭 해주는 것만으로도 마운트해 줄 수 있다.하지만 단점은 파이썬 코드로 이 디렉토리에 접근하여 파일을 저장하고 싶은데 '새 볼륨'이라는 한글 명칭때문에 접근할 수 없었다.  윈도우에서 하드디스크 안의 파일에 접근하는 것처럼 (ex. D:\where\you\want)우분투에서 하려면 마운트를 해야하고 그 방법을 아래에 적어둔다. 마운트에는 일시적인 마운트와 영구적인 마운트가 있는데 일시적 마운트부터 적은다. [1] 일시적 마운트터미널을 오픈 후1. sudo mkdir /mnt/D 2. sudo mount /dev/sda2 /mnt/D 3. df -h 4. (사용 후 마운트 해제) su.. 2023. 11. 3.
[zeroMQ] F77_ZMQ Linking using gfortran (6) 이전 포스팅에서는 F77_ZMQ의 설치에 대해서 다루었다. https://minosauce.tistory.com/8 [zeroMQ] F77_ZMQ 설치 (5)이전 포스트에서 zeroMQ를 이미 설치했다는 가정하에 다음을 진행한다. https://minosauce.tistory.com/5 [zeroMQ] zeroMQ 설치 Fortran 으로 프로그래밍된 유동해석 툴에서 데이터를 추출한 후, 추출한 데이터를minosauce.tistory.com 설치를 완료한 후,  Fortran 파일과 F77_ZMQ를 Linking 해주어야 한다.현재 가정하는 상황은 Fortran 과 Python 사이의 소켓 통신을 원하는 것이고Python이 Server, Fortran이 Client 이다. 물론 이 반대도 가능하다.그리고.. 2023. 1. 15.