본문 바로가기
무모한 도전-주식 인공지능 만들기

ray의 gpu를 이용해서 해보는 시도

by 인터넷떠돌이 2020. 8. 5.
반응형

안녕하세요?

 

일단 이래저래 ray를 버릴 수는 없어서 한번 이걸 활용해 보기 위해서 마지막 시도를 해 보고자 합니다. 일단 이 작업을 하기 위해서는........... 인터넷상에서 얻어낸 다음 정보를 바탕으로 해서 GPU를 한번 활용할 수 있는지 알아보고 나서, 사용해 보고자 합니다.

 

그리고 나서 먼저 ray.init()에다가 gpu관련된 내용을 한번 넣어 주도록 합니다. 일단 시험삼아서 4개만 넣어보도록 했습니다.

 

다만 저렇게 하고서도 그렇게 만족스러운 결과는 나오지 않는 정도가 아니라, 어째서 인지 gpu를 사용하지 않은 때 만도 못해서 하는 수 없이 위 스크린샷처럼 한번 이렇게 ray.remote마다 하나하나 지정해 주도록 합니다.

 

그리고 나머지 ray.remote에 대해서도 한번 위 스크린샷과 같은 형식으로 만들어 주도록 해'ㅆ습니다. 이렇게 하는 것으로 일단 작업을 마무리 하기는 했는데, 문제는 제대로 실행이 되지도 않았습니다.

 

그래서 하는 수 없이 위 스크린샷에서 볼 수 있는 것처럼 ray.init()에 일단 내용물을 넣어 보도록 했습니다. 이렇게 하는 것으로 이제 다음 작업을 해 보도록 합니다.

 

 

일단 시도를 하기는 했는데, 어째서 인지 80초라는 상당히 많은 시간이 걸리는 것을 확인할 수 있기는 있었습니다. 이래서야 이걸 어떻게 활용할 수 있을지 모르겠습니다.

 

결국 하나하다 위 스크린샷처럼 첫 ray에서는 48개의 cpu를 한번 할당해 주도록 하고, 두번재에서는 cpu를 3개만 할당해 주는 식으로 어떻게 계산흘 해 보고자 합니다.

 

일단 이렇개 해서 평균을 내는 데는 성공했습니다. 하지만, 이렇게 평균을 내는데 성공하기는 했어도, 문제는 처음의 multiprocessing을 대체할 만한 것을 찾기는 매우 어렵습니다.

 

결국 일단 호기심이 생겨서, 이 gpu만 가지고서 한번 작업을 해 보면, 어떤 결과가 생길까 싶어서, 작업을 해 보도록 하기는 했습니다.

 

그런데 무엇이라고 해야 할까요? 일단 GPU만 사용한 결과에서는 너무 느린 처리속도를 자랑한다고 해야 할까요? 아무튼 이런 결과를 얻는데 성공했습니다(?)

 

그래서 한번 12 X 12 를 만들어 주었고, 그 다음으로는 gpu12개, cpu12개씩 만들어서 한번 테스트에 들어가 보도록 했습니다.

 

일단 40초대가 나오는 것에 비해서는 상황이 나아진 것을 확인할 수 있었습니다만, 그래도 아직 multiprocessing에 비하면 상황이 그다지 좋지는 않은 것으로 보입니다. 일단 제가 어디가 ray를 잘못 활용한 것인지, 아니면 조건이 다른 것인지 모르겠습니다만, 일단 지금의 실험은 여기까지 하도록 해 보겠습니다.

반응형