2. 국산 인코더 7종으로 알아본 인코딩 성능
지금까지 국산 인코더가 제공하는 멀티 코어/ 멀티 스레드 환경, 그리고 인코더의 멀티 코어 CPU 지원에 대해 살펴보았는데 이를 바탕으로 멀티 코어 CPU 지원 인코더에서 멀티 코어 지원이 효용성이 있는지 알아보도록 하자.
앞서 살펴본 것처럼 국산 인코더 다수는 멀티 코어 CPU 지원이 가능해 이를 활용하면 효율성 향상 및 시간을 단축시킬 수 있으므로 이에 따른 결과를 확인할 수 있을 것으로 예상된다.
테스트 시스템
| 모델명 |
테스트 시스템 |
| CPU |
인텔 코어 i7 4770K (3.5GHz, LGA1150)
|
| 메인보드 |
GIGABYTE GA-Z87-HD3 (Intel Z87 Express)
|
| VGA |
NVIDIA 지포스 GTX 780 3GB Ref.
|
| 드라이버 |
Intel inf v9.3.0.1026 WHQL NVIDIA GeForce 320.49 WHQL Intel HD Graphics v15.31.12.64.3204 (9.18.10.3204)
|
| 국산 인코더 7종 |
- 곰 인코더 (GOM Encoder) - 다음 팟인코더 (Daum PotEncoder) - 리프 인코더 (Leaf Encoder) - 바닥 인코더 (Badak Encoder) - 쇼 인코더 (Show Encoder) - 유마일 인코더 (Umile Encoder) - 카카오 인코더 (Cacao Encoder)
|
트랜스코딩을 이용한 인코더 테스트를 위해 인텔 하스웰 (Haswell) 기반 코어 i7 4770K와 인텔 Z87 칩셋 기반 기가바이트 (GIGABYTE) GA-Z87-HD3, PC3-12800 (DDR3-1600MHz) 4GB x 2 총 8GB, 윈도우 7 얼티밋 (Ultimate) K 64비트 (64bit) SP1 운영체제를 이용했다.
국내에서 인기있는 인코더 위주로 7종을 선택했으며 테스트에 사용한 동영상은엔비디아 (NVIDIA) PureVideo 데모 영상을 담은 PureVideo_1080p.WMV (1920x1080, WMV3, 4분19초, 242MB), 그리고 인텔 데모 영상인 The_Living_Sea_1080p.MPG (1920x1080, MPEG-2, 45분 39초, 1.33GB)를 이용했다.
스마트기기의 H.264 지원이 활발해지고 있는 상황을 고려 H.264 코덱을 이용한 트랜스코딩을 진행했으며 WMV 영상은 iPod Touch (320x240, H.264, MP4)로 변환, MPG 영상은 iPhone 4 (960x640, H.264, MP4) 변환, MPG 영상을 AVI (640x480, MPEG4)로 변환한 트랜스코딩도 추가해 인코더별 특징과 성능을 비교했다.
인코더별 트랜스코딩 시간, 멀티 코어 CPU 지원으로 향상?
파일 압축 프로그램과 같이 인코더도 멀티 코어/ 멀티스레드 지원에 따라 트랜스코딩 (재인코딩) 시간 차이가 발생할 것을 예상 가능하며 파일 포맷이나 압축 포맷 선택에 따른 차이도 예상해볼 수 있다.
1080p WMV to iPod Touch H.264 (320x240) 변환

다음 팟인코더와 곰 인코더, 리프 인코더, 유마일 인코더는 멀티 코어 CPU를 지원하는 것으로 알려졌는데 다른 인코더 대비 빠른 트랜스코딩이 가능했다. 이들 인코더는 모두 60초 이내에 처리가 가능했고 유마일 인코더와 다음 팟인코더는 다른 인코더보다 변환 속도가 빨랐다.
반면 쇼 인코더는 싱글 코어 CPU 지원과 함께 오랫동안 업데이트가 이루어지지 않아 가장 느린 변환 시간이 확인된다. 듀얼 코어 CPU를 지원하는 것으로 알려진 바닥 인코더는 쇼 인코더보다 빨랐으며 카카오 인코더도 바닥 인코더와 유사한 변환 속도를 제공했다.

전체 진행 과정 중의 CPU 점유율로 멀티 코어 및 싱글 코어 지원에 따라 CPU 자원 활용에 차이가 있다. 20% 이내 CPU 자원을 활용하거나 코어 활용이 하나만 높은 인코더는 변환 시간이 느렸으며 20% 이상의 CPU 점유율 활용과 여러 코어가 활성화된 인코더는 변환 시간이 빨랐다.
싱글 코어 CPU 지원 인코더가 하나의 코어를 주로 활용하는 반면 멀티 코어 CPU 지원 인코더는 여러 cPU를 활용해 처리하므로 CPU 자원을 낭비하지 않고 활용해 효율이 높다. 싱글 코어 CPU는 그만큼 남는 CPU 자원은 낭비되는 셈이다.
1080p MPG (MPEG-2) to iPhone 4 H.264 (960x640) 변환

압축 프로그램에서는 파일 수에 따라 멀티 코어 지원이 다름을 알 수 있었는데 인코더의 트랜스코딩 과정에서도 파일 포맷과 인코더에 따라 변환 속도에 차이가 발생하는 것으로 확인된다.
앞서 살펴본 WMV (WMV3) 파일 포맷과 비교해 MPG (MPEG-2) 파일은 서로 다른 변환 시간을 보여주었으며 일반적으로 알려진 것처럼 멀티 코어 CPU를 활용하는 인코더에서 빠른 변환이 가능했다.
유마일 인코더와 다음 팟인코더, 곰 인코더, 리프 인코더의 변환 시간이 빠르고 카카오 인코더, 바닥 인코더 순으로 변환 시간이 느렸다. 바닥 인코더는 듀얼 코어 CPU 지원으로 알려진 만큼 다른 인코더보다 가장 느린 것으로 확인된다. 쇼 인코더는 프로파일 및 프로그램 업데이트가 이루어지지 않아 다른 인코더 설정과 일치하기 어려워 테스트에서 제외했다.

전체 트랜스코딩 중 CPU 점유율을 보면 멀티 코어 CPU 지원 인코더에서 CPU 점유율이 높게 유지되어 자원 활용이 잘되는 것으로 확인된다.
WMV 파일과 달리 MPG (MPEG-2) 파일은 멀티 코어 CPU, 그리고 CPU 자원을 활용하는 인코더를 파악할 수 있다. 리프 인코더나 카카오 인코더는 CPU 자원 활용이 잘되었으나 전체 인코딩 시간에서는 멀티 코어 CPU 지원 유마일 인코더나 다음 팟인코더, 곰 인코더 대비 느린 변환이 이루어졌다. 이는 자원 활용과 별개로 변환 및 인코더 프로그램의 최적화 등과 같은 결과 역시 반영된 것으로 보인다.
1080p MPG (MPEG-2) to AVI MPEG4 (640x480) 변환

인코더와 압축 포맷 적용에 따라 전체 트랜스코딩 시간에 차이가 발생하며 이번 결과도 이를 반영하고 있다. 앞서의 WMV, MPG (MPEG-2) 변환과 AVI (MPEG4) 변환은 약간의 차이가 발생했다.
멀티 코어 CPU 지원으로 CPU 자원 활용이 잘 이루어진 리프, 다음 팟, 유마일은 가장 빠른 변환 시간을 제공한다. 멀티 코어 CPU를 지원하는 곰 인코더는 다른 인코더보다 처리 속도가 느렸다. 바닥 인코더와 카카오 인코더가 그 다음, 싱글 코어 CPU 지원으로 알려진 쇼 인코더는 가장 느리게 변환되었다.

전체 트랜스코딩 중 CPU 점유율을 보면 멀티 코어 CPU 지원 인코더에서 CPU 점유율이 높게 유지되어 자원 활용이 잘된다. 싱글이나 듀얼 코어 CPU 지원 인코더는 트랜스코딩 과정에서 나머지 CPU 자원을 제대로 활용하지 못한다. 이번 결과를 통해서도 CPU 자원 활용 외에도 인코더 프로그램에 따라 압축 포맷에 따른 최적화가 다른 것을 알 수 있다.