본문 바로가기

시행착오44

메모리 누수를 잡기 위한 여정 part7 안녕하세요? MSYS2를 가지고서 작업을 하고자 했습니다만, 이게 뜻대로 되지 않아서 하는 수 없이 그냥 cygwin을 가지고서 시도를 하는데 이래저래 하는 작업이 많아서 중간에 끊어야 했습니다. 이제 다음작업으로 위 스크린샷과 같이 cmd 창을 열여서 한번 작업을 시작해 보도록 합니다. 이 작업은 성공적일지 아닐지는 아직은 모릅니다. 일단 이렇게 한 다음에 jemalloc-5.2.0으로 이동을 한 다음에, 여기서는 한번 sh -c "CC=cl ./autogen.sh"를 타이핑해서 실행을 시켜 보도록 합니다. 그런데 제대로 되지 않고 에러가 뜨는 것을 볼 수 있습니다. 자세히 에러 메세지를 보면, C compiler가 제대로 작동을 하지 않는 다는 것을 알 수 있는데, 이게 또 무슨 일일까요? 그래서 하.. 2019. 6. 25.
메모리 누수를 잡기위한 여정 part3 안녕하세요? 지난번 포스팅에서는 어떻게 해서, 메모리 사용량을 체크해 보려고 했습니다만, 이게 뜻대로 되지 않는 것을 볼 수 있었습니다. 그래서 이번 포스팅에서는 다른 장소에다가 메모리를 체크하는 함수를 사용, 이 메모리의 사용량을 한번 살펴 보고자 합니다. 이번에는 아예 while문 안에다가 SummaryTracker()를 잡아 넣도록 해서, 작업을 해 보도록 합니다. 이렇게 하는 것으로 이번에는 메모리의 사용량을 체크할 수 있으리라 생각을 했습니다. 이제서야 결과가 나오는 것을 볼 수 있기는 있는데, 어째서 인지 2번째 사이클 부터는 첫번째 사이클때 비하면 메모리의 사용량이 비약적으로 줄어드는 것을 확인할 수 있었습니다. 그런데 언제 사용이 된 메모리 인지 알길이 없어서 현재 시간을 알아보기 위해서 .. 2019. 6. 23.
메모리 누수를 잡기위한 여정 part2 안녕하세요? 지난번 포스팅에서 나온 시도는 이래저래 메모리 누수를 잡기는 커녕, 있던 10개의 종목 동시에 감시하는 것도 안되는 결과를 초래하고 말았는데요, 그래서 이번 포스팅에서는 다른 결과를 얻기 위해서 이런저런 시도를 하고자 합니다. 그리고 그 과정을 이번 포스팅에서 보여드리겠습니다. 하다하다 안 되어서 기존에 있던 while과 sleep을 도로 불어오는 작업을 하도록 합니다. 그리고 자세히 보시면 에러가 있는데, 이것도 고쳐 주도록 합니다. 다음으로는 어디서 많은 메모리를 사용하는지 알아보기 위해서 pip를 이용, pympler를 설치해 보도록 합니다. 이 작업은 그리 많은 시간이 걸리지 않습니다. 그리고 나서 일단 MyStockTrader1에서 위 스크린샷과 같이 pympler를 가지고 오는 과.. 2019. 6. 22.
메모리 누수를 잡기위한 여정 part1 안녕하세요? 지난번 포스팅에서 비록 수익을 꾸준히 제 인공지능 주식 투자자가 내고 있기는 하지만, 메모리를 점점 사용량이 많아져서 문제가 생기는 것을 볼 수 있었습니다. 그래서 이번 포스팅 부터는 이 문제를 해결하기 위해서 일련의 과정을 밟아 보도록 했는데, 그 내용을 연속해서 포스팅 할까 합니다. 일단 위 스크린샷을 보시면 contextlib이라는 내장 모듈이 있는데, 이 모듈을 가지고 와서, 자동으로 close명령을 보장해 주는 closing을 사용해 주도록 합니다. 그 다음에는 기존에 있던 문장에서 while을 없애 주도록 합니다. 이렇게 하는 것은 while문을 쓰지 않고 다른 방식으로 루프(loop)를 만들려고 하기 때문입니다. if __name__ == '__,main__':에서 위 스크린샷과.. 2019. 6. 22.