본문 바로가기

병렬처리46

의외로 발견된 ray의 활용법 안녕하세요? 일단 지난번 테스트에서 ray가 기존의 multiprocessing에 비해서 느리다는 결론을 얻기는 했는데, 이것만으로는 만족할 수는 없어서 한번 다른 종류의 실험을 해 보도록 했습니다. 그리고 여기서는 무언가 더 의미가 있어 보이는 결론을 얻는데 성공했습니다. 일단 2번째 subprocess로 처리가 되는 for 문의 하나하나의 구문에서, sleep을 하는 시간을 기존의 1초에서 4초로 늘려 주도록 해 보았습니다. 그리고 나서 걸리는 시간을 보니까 의외로 1분 넘게 걸리는 것을 확인할 수 있기는 있었습니다. 그래도 의미있는 결과를 얻기 위해선은 일단 10회 반복해 주도록 합니다. 이제 ray를 사용하면 어떤 효과가 있는지 없는지에 대해서 알아보기 위해서, 이번에는 합너 작업을 해 주도록 합.. 2020. 8. 8.
ray의 gpu를 이용해서 해보는 시도 안녕하세요? 일단 이래저래 ray를 버릴 수는 없어서 한번 이걸 활용해 보기 위해서 마지막 시도를 해 보고자 합니다. 일단 이 작업을 하기 위해서는........... 인터넷상에서 얻어낸 다음 정보를 바탕으로 해서 GPU를 한번 활용할 수 있는지 알아보고 나서, 사용해 보고자 합니다. 그리고 나서 먼저 ray.init()에다가 gpu관련된 내용을 한번 넣어 주도록 합니다. 일단 시험삼아서 4개만 넣어보도록 했습니다. 다만 저렇게 하고서도 그렇게 만족스러운 결과는 나오지 않는 정도가 아니라, 어째서 인지 gpu를 사용하지 않은 때 만도 못해서 하는 수 없이 위 스크린샷처럼 한번 이렇게 ray.remote마다 하나하나 지정해 주도록 합니다. 그리고 나머지 ray.remote에 대해서도 한번 위 스크린샷과 같.. 2020. 8. 5.
ray를 이용한 다중 병렬처리(nested)의 최적화 -4- 안녕하세요? 지난번 포스팅에서 어떻게 얼치기로 그나마 좋은 ray의 조건을 건지기는 했지만, 이게 100% 정확하다고 말하기는 좀 무리가 있기는 있습니다. 일단 구름IDE가 정확하게 하드웨어 성능을 내어 주는 것이 아니라 대체적인 단계로 조정이 되기 때문에, 처리시간에 오차가 있습니다. 그래서 이를 보강하기 위해서 일단 10회 반복을 계속해서 해 보도록 하는 것 입니다. 먼저 위 스크린샷에서 나오는 것처럼 ray나 multiprocessing을 전혀 쓰지 않고서 그냥 작동을 하는 형식의 대조군 1번을 하나 만들어 주도록 합니다. 진짜로 이 대조군은 12회 1차 for loop에서 12번 돌고, 각각의 메서드는 또 12회씩 돌아서 총 144번을 모두 하나하나 다 돌아간다고 보면 됩니다. 그리고 나서 2번 .. 2020. 8. 2.
ray를 이용한 다중 병렬처리(nested)의 최적화 -3- 안녕하세요? 이번 포스팅에서도 지난번 포스팅에 이어서 한번 ray를 사용하는데 최적화를 하기 위해서 한번 이래저래 무언가를 더 해보고자 합니다. 이래저래 지루한 감이 있기는 하지만, 원래 조건을 잡는 과정이 지루하기는 지루하고, 뭐랄까 직접 하고서 익히지 않으면 안되기는 안되는 면이 있습니다. 다음으로는 그냥 무식하다면 무식하게 가는 것으로, 일단 48개의 cpu를 사용하는데, 여기서는 일단 처음부터 48개의 병렬 프로세스를 먼저 만들어서 사용하도록 해 보도록 합니다. 그리고 나서 다음으로 진행하려고 하는 것은 바로 두번째 ray를 사용하는데 이번에는 3개의 병렬 프로세스만 만들어 내는 것이라고 할 수 있습니다. 이 경우에는 첫번째 시도에서 우선 35초라는 그런데로 준수한 성적표를 넌네 받기는 받는데 성.. 2020. 8. 2.