본 논문은 기존의 정적인 코드 생성 벤치마크의 한계점을 극복하기 위해 동적이고 복잡도 인식 벤치마크인 DynaCode를 제안합니다. 기존 벤치마크는 고정된 데이터셋으로 구성되어 있어 LLMs의 암기 학습 및 데이터 오염 문제를 야기하지만, DynaCode는 코드 복잡도와 호출 그래프 구조를 고려한 복잡도 인식 지표를 사용하여 LLMs를 체계적으로 평가합니다. 최대 1억 8900만 개의 고유한 중첩 코드 문제를 생성하며, 4가지 복잡도 수준과 16가지 호출 그래프 유형을 포함하여 대규모 다양성을 달성합니다. 12개의 최신 LLMs에 대한 실험 결과, DynaCode는 기존 벤치마크(MBPP+) 대비 평균 16.8%~45.7%의 성능 저하를 보이며, 복잡도가 증가할수록 성능 저하가 커지는 것을 확인했습니다. 이는 DynaCode가 LLMs의 성능을 효과적으로 구분할 수 있음을 보여줍니다. 또한 호출 그래프를 활용하여 중첩 코드 내 하위 함수 상호 작용 처리에 대한 LLMs의 행동에 대한 통찰력을 제공합니다. 소스 코드는 GitHub에서 공개됩니다.