hsjeon01   2년 전

제목 그대로 아래에 있는 동일한 코드를 제출하였을 때 Python 3에서는 정답처리되고 pypy 3에서는 메모리 초과 오류가 발생하는데 이유가 무엇인지 궁금합니다!

djm03178   2년 전

Python 3와 PyPy3는 구현체가 완전히 다르고 구조가 매우 복잡하기 때문에 어떤 코드가 얼마나 메모리를 사용할지 예측하기가 매우 어렵습니다. PyPy3가 기본적으로 좀 더 많은 메모리를 사용하는 경향이 있다는 것 정도만 알려져 있습니다. 자세한 건 벤치마킹한 것들을 찾아보면 되겠으나, 이 문제와 같이 메모리 제한이 빡센 문제에서 그런 차이가 생기는 이유를 단순히 '왜'로 설명하기는 매우 어렵습니다.

hun3555   2년 전

평균적으로 PyPy3 쪽이 메모리를 훨씬 많이 쓰는 경향이 있습니다

이유는 위 분이 말씀해주신 것처럼 설명하기 어려운 부분으로 알고 있습니다

이와 비슷한 것 중에는 재귀 횟수가 늘어나면 PyPy3이 Python3보다 느린 점 등이 있겠네요

그냥 'PyPy3이 메모리를 더 많이 먹는다' 정도로 기억하시면 충분할 것 같습니다

hsjeon01   2년 전

두분 다 정말 감사합니다..!! 행복한 하루 보내세요!!

댓글을 작성하려면 로그인해야 합니다.