본문 바로가기
Backend MLOps/개인 환경 구축 기록

[ 자취방 워크스테이션 ] #1 첫걸음을 내딛어보자.

by SteadyForDeep 2020. 12. 3.
반응형

//1

나는 물리학과를 졸업했다.

원래 석사과정에 진학할 생각을 하고있었고 고체물리학이나 반도체쪽을 하지 않을까 생각중이었다.

그리고 딥러닝을 이용한 소리 해석으로 석사를 마쳐가는 중이다.

인생은 아무도 모른다.

 

//2

각설하고

연구실을 떠나야하는 시기가 가까워지면서 진학/진로를 고민하는 기간동안

내가 습득한 지식들을 내버려두고싶지 않아서

연구실과 유사한 환경을 자취방에 구축하고

그 과정에서 필요한 정보들을 정리하고자한다.

앞서 말한 것처럼 물리학과 출신이기 때문에

컴퓨터공학이나 네트워크와 같은 부류의 카테고리는

완전한 비전공자 수준으로

구글링을 통해 습득한 지식들을 되새김질하며 본 일지를 이어가겠다.

 

 

 

 

 

 

 

 

 

//3

본 일지는 내가 다니던 대학교의 정보통신원 직원들과 싸워가며 이룩해낸

실험실의 네트워크와 컴퓨팅 시스템 구축에 대한 회상이다.

신생 연구실/회사의 컴퓨팅 시스템을 급하게 구축해야하거나

나와 같은 상황에 처한 이들에게 많은 도움이 되었으면 좋겠다.

 

//4 준비물

우선 딥러닝을 위한 컴퓨팅 시스템을 만들기 위해서는 무엇이 필요할까?

아래는 내가 개인용 워크스테이션을 구축하기 위해 구매한 장비목록이다.

 

1. 계산용 컴퓨터 (이하 서버)

2. 게이밍 컴퓨터 (이하 로컬)

3. 캡쳐보드 (패스쓰루 가능)

4. 5미터 렌선 2개 (없다면 짧은 렌선 3개와 스위치허브도 좋음)

5. 모니터 2개 (HDMI 1개씩 딸려왔음)

6. 키보드 1개 (1개 더 있으면 좋음)

7. 마우스 1개

8. HDMI 별도구매 1개, DP 별도구매 1개

9. USB 저장장치

10. 게이밍 헤드셋 1개 사운드바 1개 핸드폰 거치대 1개 장패드 1개 게이밍의자 등등.....

 

내 2년 간의 석사 기간 동안 때려 부은 적금을 한눈에 볼 수 있다. (넌씨눈 효자손 제외)

 

물론 컴퓨터 1대를 비싸게 주고 사서 모든 것을 다 해도 상관없다!

하지만 예산을 잘 배분해서 서버와 로컬을 나누어 사용하는 것을 추천한다.

 

이유는 다음과 같다.

 

1. 대세는 클라우드 컴퓨팅이다.

딥러닝을 취미로 하는 사람은 잘 없다.

딥러닝으로 직장을 얻거나 연구를 해야한다면

언젠간 반드시 클라우드 컴퓨팅 서비스를

이용해야하는 순간이 온다.

그에대한 대비책으로

서버-로컬 사용을 연습해두면 매우 좋다.

 

2. 리눅스 운영체재를 연습하자.

모든 컴퓨터 변태들이 공감하듯

조금만 깊게 들어가면 리눅스는 필수적인 요소다.

하지만 리눅스에서는 실생활에서 불편한 점이 많다.

그래서 한 대의 컴퓨터를 쓰려면

윈/리 2개의 OS를 깔아서 써야 편하다.

장 단점이 있지만 그래도 리눅스와 윈도우가 따로따로 깔린

컴퓨터가 각각 있으면 작업의 능률이 훨씬 오른다.

딥러닝은 훈련과 성능측정으로 끝나는 것이 아닌

실생활에 사용할 수 있는 제품으로 탄생시킬 수 있어야

그 의미가 있다고 본다.

따라서 빠른 학습을 위해서 GUI가 없는 리눅스에서 학습하고

실전활용을 위해서 윈도우 컴퓨터로

상용화작업까지 연습하는 구조가 베스트라고 할 수 있겠다.

 

3. 딥러닝은 어차피 귀족학문이다.

컴공친구에게 들은 말인데 딥러닝은 귀족학문이 맞다.

돈 많고 시간 많은 똑똑한 사람들이 하는 일이다. (엥?)

컴퓨터는 더럽게 비싸고 모델 학습은 또 어마어마하게 오래걸린다.

그렇기 때문에 자원을 낭비하지 않기 위해서

인간지능을 최대치로 끌어올려야만 한다.

특히나 최소 반나절에서 하루가 꼬박 걸리는 딥러닝 학습을 돌려놓고

같은 컴퓨터에서 롤을 할 수 있다고는 생각하지 않는다.

그러므로 계산이 돌아가는 컴퓨터와

기타 다른 작업을 할 수 있는 컴퓨터를 분리하는 것이 바람직하다.

 

 

 

 

 

 

 

 

//세팅

그럼 2대의 컴퓨터와

그 주변 장비들을 적절하게 세팅하는 방법을

살짝만간단히 언급하면서

자세한 내용은 #2 이후로

이어서 구체적으로 나열하겠다.

먼저 컴퓨터를 살때 로컬에는 윈도우를 깔고

서버는 바이오스만 있는 깡통으로 준비한다.

 

리눅스는 공짜기때문에 혼자서 충분히 깔 수 있다.

문제는 리눅스를 서버 OS로 깔면 GUI가 없다는 것이다.

흔히 영화에 나오는 헤커들이 보여주는

까만 바탕에 하얀 글씨가 나오는 그 화면만 나온다.

그래서 마우스도 필요없다.

따라서 세팅 단계에서는, 혹은 익숙하지 않다면

화면을 스크린샷 찍거나 공유하기가 매우 힘들다.

그에따라 나는 캡쳐보드를 하나 사서

로컬로 송출하는 방식을 사용했다.

 

화면은 연결되었지만

두대의 컴퓨터를 한대처럼 사용하기위해서는

네트워크를 연결해 주는 것이 필수적이다.

이 부분은 좀 더 심화하여

외부에서, 즉 집 밖 어디에서도 서버 컴퓨터에 접속할 수 있게

세팅하는 방법을 설명해 주겠다.

그리고 세팅이 마쳐지는대로

간단한 모델 하나를 돌리면서

주피터노트북과 여러가지 기타 사항들을 설명하고자 한다.

실재로 지금 내 컴퓨터는 깡통상태이므로

부지런히 세팅하면서 글을 올리도록 하겠다.

 

 

 

 

 

 

반응형

댓글