전체 글 94

[3DGS] Gaussian Splatting 환경 구성

name: gaussian_splattingchannels: - pytorch - conda-forge - defaultsdependencies: - cudatoolkit=11.6 - plyfile - python=3.7.13 - pip=22.3.1 - pytorch=1.12.1 - torchaudio=0.12.1 - torchvision=0.13.1 - tqdm - pip: - submodules/diff-gaussian-rasterization - submodules/simple-knn - opencv-python - joblib 해당 코드를 이용해서 환경을 구성했는데, 자꾸 submodules 다운로드 과정에서 오류가 발생했음 export CUDA_HOME..

[Docker] Networking (Bridge, Host, Overlay)

Bridge 네트워킹도커의 기본 네트워킹 모드각 컨테이너는 가상 네트워크 인터페이스를 받아 도커 브리지에 연결컨테이너들은 이 브리지를 통해 서로 통신 가능호스트 밖으로의 통신은 NAT를 통해 이루어짐포트 매핑을 통해 외부에서 컨테이너에 접근할 수 있음 Host 네트워킹컨테이너가 호스트의 네트워크 스택을 직접 사용함별도의 네트워크 격리가 없어 성능이 좋음호스트의 포트를 컨테이너가 직접 사용하므로 포트 충돌에 주의해야 함보안상 위험할 수 있어 신중하게 사용해야 함 Overlay 네트워킹여러 도커 호스트 간에 분산된 네트워크를 만듦서로 다른 호스트에 있는 컨테이너들이 마치 같은 네트워크에 있는 것처럼 통신 가능주로 Docker Swarm이나 Kubernetes와 같은 오케스트레이션 도구에서 사용VXLAN을 사..

Code/Docker 2024.10.16

[Docker] Storage (Volumes & Bind mounts)

정의  Volume:도커에 의해 관리되는 호스트 파일시스템의 일부입니다 (일반적으로 /var/lib/docker/volumes/ 에 위치).도커 CLI 명령어를 통해 직접 관리할 수 있습니다.여러 컨테이너 간에 쉽게 공유할 수 있습니다.볼륨 드라이버를 사용하여 원격 호스트나 클라우드 제공업체에 데이터를 저장할 수 있습니다.컨테이너가 삭제되어도 볼륨은 유지됩니다.Bind Mount:호스트 시스템의 어느 위치에나 저장할 수 있습니다.호스트의 파일 또는 디렉토리가 컨테이너에 마운트됩니다.호스트 시스템의 파일 구조와 OS에 의존적입니다.호스트 시스템의 민감한 파일에 접근할 수 있어 보안상 주의가 필요합니다.주요 차이점 관리:Volume: 도커에 의해 관리됨Bind Mount: 호스트 파일시스템에서 직접 관리됨위..

Code/Docker 2024.10.16

[Operating System] Daemon (데몬)

데몬(Daemon)정의: 백그라운드에서 계속 실행되며 특정 서비스나 작업을 수행하는 프로그램입니다. 특징:사용자 상호작용 없이 동작시스템 시작 시 자동으로 실행되는 경우가 많음주로 서비스 요청을 기다리거나 특정 이벤트에 응답리눅스/유닉스 시스템:'데몬'이라는 용어를 직접적으로 사용합니다. 백그라운드에서 실행되는 프로세스를 지칭합니다. 예: httpd (Apache 웹 서버), sshd (SSH 서버) 등윈도우 시스템:'서비스'라는 용어를 주로 사용합니다. 기능적으로 리눅스의 데몬과 유사합니다. 예: Windows Update 서비스, Print Spooler 서비스 등macOS:유닉스 기반이므로 '데몬'이라는 용어를 사용합니다. 리눅스와 유사한 방식으로 동작합니다.

[Linux] VScode 비밀번호 없이 접속

Windows 윈도우 파워쉘 또는 cmd 에서 ssh-keygen파일 탐색기에서 %USERPROFILE% 을 통해 .ssh 폴더에 접속id_rsa.pub 를 txt 로 열어서 안에 내용 복사vscode ssh 서버 접속 후 home/USER 안에 .ssh 폴더 생성 (있으면 접속).ssh 폴더 안에 authorized_keys 라는 이름의 파일 생성authorized_keys 파일에 id_rsa.pub 에서 복사한 내용 붙여넣기F1 을 눌러서 SSH config file 열기해당 서버의 계정 정보에 IdentityFile 라는 이름으로 항목 추가IdentityFile 해당 항목 내용으로 로컬에 있는 id_rsa 파일의 경로 입력재부팅Mac (TBU)

Code/Linux 2024.10.10

[C++] 멤버 접근 연산자 (->)

코드를 봤는데 웬 화살표가..? (->) 파이썬만 파던 나로서는 어리둥절할뿐... (물론 파이썬 함수에도 -> 를 통해 return 값 주석 역할을 하기도 함) 아무튼 그래서 -> 이게 뭔지 알아봤음-> 이름은 멤버 접근 연산자라 하고 클래스나 구조체의 멤버에 접근하게 해줌 그럼 . 과 -> 의 차이는 무엇일까? . 은 멤버에 직접 접근함 -> 은 포인터를 통해 멤버에 접근함 MyClass* ptr = new MyClass();ptr->memberFunction();int value = ptr->memberVariable;// --------------------------------------------------struct MyStruct { int x; void func();};MyStr..

Code/C++ 2024.09.04

[Operating System] 프로세스 (Process)

프로그램 (Program) 실행되기 전까지 그저 보조기억장치에 있는 데이터 덩어리  프로세스 (Process)보조기억장치에 저장된 프로그램을 메모리에 적재하고 실행한 것 포그라운드 프로세스 (foreground process)사용자가 볼 수 있는 공간에서 실행되는 프로세스백그라운드 프로세스 (background process)사용자가 보지 못하는 뒷편에서 실행되는 프로세스백그라운드 프로세스 중에서 사용자와 상호작용하지 않고 정해진 일만 수행하는 백그라운드 프로세스: 유닉스에서 데몬 (daemon), 윈도우에서 서비스 (service)프로세스 제어 블록 (PCB)프로세스와 관련된 정보를 저장하는 자료구조프로세스 ID (PID)특정 프로세스를 식별하기 위해 부여하는 고유한 번호문맥 교환프로세스 간의 실행을 ..

[Computer Architecture] CPU

CPU (Central Processing Unit): 중앙처리장치  CPU 구성 요소ALU (Arithmetic Logic Unit): 산술논리연산장치계산을 하는 역할; 계산기레지스터 (Register)프로그램을 실행하는데 필요한 값들을 임시로 저장제어장치 (Control Unit)제어 신호 (Control Signal) 이라는 전기 신호를 내보내고 명령어를 해석하는 장치제어 신호 (Control Signal): 컴퓨터 부품을 관리하고 작동시키기 위한 일종의 전기 신호 ALUInput레지스터를 통해 피연산자를 받아들임제어장치로부터 수행할 연산을 알려주는 제어신호를 받아들임Output레지스터에 결과 값을 일시적으로 저장CPU 에서 메모리에 직접 접근하는 속도가 느리기 때문에, 모든 결과 값을 다 메모리에..

[C++] 정적 변수 (static) 와 상수 변수 (const)

정적 변수(static) static 키워드로 인해 정적 변수로 선언되는 경우, 함수가 종료되어도 사라지지 않음 #include using namespace std;void func(){ int a = 10; static int b = 10; a++; b++; cout   상수 변수(const) 값을 변경할 수 없는 변수 아래 코드에서 상수 변수의 값을 바꾸려해서 오류 발생 #include using namespace std;int main(){ const int a = 1; int a = 2; return 0;}

Code/C++ 2024.08.18