상속과 템플릿 특수화를 활용한 Object Size 줄이기 신공! 1/2

Posted at 2008. 8. 2. 00:55 // in S/W개발/C++ 이야기 // by 김윤수


우선 결론부터 말하자면, 상속과 템플릿 특수화를 활용해서 Object Size 줄이기 신공을 사용했을 때와 사용하지 않았을 때를 비교해 본 그림입니다.

Object Size 비교

Object Size 비교

파란색 선이 여러 타입에 대해 일반화된 템플릿을 그대로 썼을 때의 그래프이고, 빨간색 선은 템플릿 특수화와 상속을 이용했을 때의 그래프입니다. x 축은 타입의 개수이고, y 축은 Object Size 입니다. 그리고, 선형회귀식도 함께 나타내 봤습니다.

일반화된 템플릿을 쓸 때는 한 타입당 840바이트 정도가 늘고, 템플릿 특수화 + 상속의 경우에는 500바이트 정도가 늘어났으니 상당한 차이가 있는 셈이죠.

구체적으로 어떤 템플릿 클래스에 대해 이런 결과가 나왔는지는 다음 글에서 말씀 드리도록 하겠습니다. 다음 글을 기대해 주세요~

(혹시 낚이신 분이 있다면 죄송하지만, 제가 다음에 쓸 글을 미리 기록하는 의미에서 쓴 글이니 널리 양해를~)

제 글이 유익하셨다면 오른쪽 버튼을 눌러 제 블로그를 구독하세요. ->
블로그를 구독하는 방법을 잘 모르시는 분은 2. RSS 활용을 클릭하세요.
RSS에 대해 잘 모르시는 분은 1. RSS란 무엇인가를 클릭하세요.