[level1] preprocess 최적화 (캐싱)
·
프로그래밍/부스트캠프 AI
요약 데이터 전처리를 보다 더 효과적으로 수행할 수 있게 코드를 수정한다. 파이썬 직렬화 최고! 👍 문제 어떤 데이터들은 에이전트(프로세스)를 띄울때마다 다시 로딩을 한다. 좋은 방법이 없을까? 공유된 캐시가 있어야 재 로딩을 막을 수 있을 텐데… 방법1 wandb의 agent(이렇게 명명하는게 맞나?)들은 그 자체가 새로운 프로세스다. 때문에 전역변수로는 캐시를 만들 수 없다. 갑자기 프로세스 간의 공유변수는 따로 없을까 싶어 multiprocessing 패키지의 공유 변수 기능을 찾아보았다. 아래의 Manager를 사용하면 될것 같다. (Manager는 proxy process를 이용하고, 부모 프로세스가 종료되면 gc된다.) multiprocessing — Process-based paralleli..