벤치리뷰·뉴스·정보/아키텍처·정보분석

[분석정보] 실제 소리를 듣고 이해하는 AMD 트루오디오 (TrueAudio)

tware 2014. 8. 24. 00:30

 

 

-일부 GPU와 APU에 통합한 새 기능으로 AMD는 무엇을 노리고 있는가

 

Radeon R9 및 R7 시리즈 중 "Radeon R9 295X2"(이하 R9 295X2)과 "Radeon R9 290X"(이하 R9 290X) " Radeon R9 290"(이하, R9 290), 그리고 "Radeon R7 260X"(이하 , R7 260X) 및 Kaveri 세대 " AMD A-Series "(이하 A-Series) APU만 지원하는 " TrueAudio "(트루 오디오)를 기억하는가?


 AMD 독자적인 그래픽 API " Mantle "과 세트로 대대적으로 발표 되었음에도 불구하고 2014년 8월 시점에서 지원되는 제품 버전 제목은 PC 판 "Thief "만으로, Mantle과 비교하면 별로 눈에 띄지 않기 때문에 이미 기억의 한쪽 구석에 넣어진 사람도 많은 것 같다. 하지만 이 TrueAudio는 정말 지나쳐 가도 좋은만한 것인가? 이번에는 AMD 본사에 메일 인터뷰와 실제로 필자가 행한 테스트를 바탕으로 TrueAudio의 정체에 최대한 접근해 보고 싶다.

 

 

대체 TrueAudio 란 무엇인가

 그래서, 우선은 "TrueAudio 란 무엇인가 "라는 이야기부터 한다.
 TrueAudio 개요 자체는 Radeon R9 & R7 시리즈가 발표된 때에 니시카와 젠지 씨가 해설해 주었지만 ( 관련 기사 ) 그로부터 약 10개월이 지난 것으로, 다시 알기 쉽게 정리하면,

 

Radeon이 갖는 GPU의 처리 능력과 그래픽 메모리를 이용해서 오디오 처리를 행하는 하드웨어 기반의 DSP 솔루션

이라는 것이다. 엔드 포인트 (endpoint 최종단 여기에서는 출력 인터페이스의 뜻)를 사용자가 자유롭게 설정할 수 있으므로, Radeon과 APU에서 HDMI 출력시 밖에 사용할 수 없다 라는 것도 아니다. 출력 인터페이스로는 메인 보드의 온보드 사운드 디바이스나 사운드 카드, USB 사운드 디바이스를 유저가 자유롭게 선택해 이용할 수 있다.

 

 게임 프로그램 측에서 보면 TrueAudio 대응 GPU에서는 그 일부가 오디오 처리를 행하는 코프로세서 (co-Processor 메인 프로세서를 보조하는 프로세서)적으로 동작하는 이미지다. 처리 흐름으로 말하면 오디오 신호를 게임에서 보조 프로세서로 보내고, 거기서 처리하고 다시 돌려 받고, 사운드 장치로 출력하는 느낌이다.

 

"GPU의 일부를 코 프로세서로 사용" 이라고 하면, GPU 아키텍처에 익숙한 독자는 Radeon의 쉐이더 프로세서의 덩어리 존재인 "Compute Unit "(연산 유닛)을 GPGPU로 사용하고 있다고 상상할 지도 모른다. 그러나 실제로는 미국 Tensilica (텐실리카) - 정확하게는 Cadence Design Systems의 Tensilica 부문 - 제 DSP (Digital Signal Processor, 디지털 신호 처리에 특화한 프로세서) " HiFi EP Audio DSP '(이하 HiFi EP DSP)가 내장되어 있다. 그리고 여기까지 읽으면, TrueAudio 지원이 지금 R9 295X2과 R9 290X, R9 290, R7 260, 그리고 Kaveri에만 머무는 이유도 쉽게 상상할 수 있을 것이다. HiFi EP DSP가 통합된 제품은 2014년 8월 현재, 지금 열거한 GPU 및 APU 뿐이기 때문이다.

 

 

오디오 DSP의 이미지 (Tensilica의 일본어 Web 사이트의 제품 정보 페이지 에서)


 이어서 HiFi EP DSP 등 따위는 어떤? 얘기지만, 한마디로 요약한다면, 이것은 오디오 신호 특화형 DSP 의 하나이다. TV와 셋톱 박스, Blu-ray Disc 플레이어 등 가전 기기에 채택 실적이 풍부한, 임베디드 업계에서 매우 인기있는 DSP 라고 말해도 좋다.

 

Intel의 차세대 CPU " Broadwell "(브로드웰, 개발 코드 네임)은 Tensilica 제 DSP "HiFi 2 Audio DSP "의 채택이 확정되어 있지만, HiFi EP DSP는 이 HiFi 2 Audio DSP를 베이스 로 음성 신호의 전처리 및 후 처리와 캐시 메모리 서브 시스템의 성능을 각각 향상시킨 이른바 슈퍼 세트 (= 확장 버전)이며 ( Tensilica의 일본어 Web 사이트의 기능 비교 표 ), 이를테면 상위 모델이다. 이러한 HiFi EP DSP 와 게임 응용 프로그램 사이를 주선하는 것은 오디오 처리용 미들웨어이다.

 

 

2013년의 TrueAudio의 발표 시점에서 Audiokinetic과 FMOD 지원은 밝혀져 있었다


 TrueAudio의 발표와 함께 밝혀지고 있는 바와 같이 오디오 처리용 미들웨어에서는 캐나다 Audiokinetic의 " Wwise "(와이즈)와 호주 Firelight Technologies의" FMOD "(에프모드)가 TrueAudio을 지원한다.

 

 TrueAudio에 대응하는 게임의 음성이 Wwise 또는 FMOD에서 재생되면 그중 "프로그래머가 미리 지정 해둔 오디오 신호"가 HiFi EP DSP에 보내진다. HiFi EP DSP는 신호를 받으면 GPU의 언 코어 부분이나 그래픽 메모리의 처리능력을 일부 사용하면서 보내져 온 오디오 신호를 내부의 프로세서로 처리하고 되돌리는 작업을 담당한다. 그리고 최종적으로, 사용자가 설정한 엔드 포인트로 전개되는 것이다.

 

 

일반 음성 처리 흐름과 TrueAudio을 이용한 음성 처리 흐름의 차이

 

 서두에 그 이름을 올린 Thief는 Wwise를 채택하고 있기 때문에, Thief의 TrueAudio 효과는 Wwise를 통해 실현된다.

 AMD에 따르면 개발중인 1인칭 RPG " Lichdom "이 Wwise 기반으로 TrueAudio을 채택하고 있다는 것. 또 Oculus VR 제 헤드 마운트 디스플레이 " Rift" 대응 데모 " Tuscanny "는 FMOD 기반으로 TrueAudio을 채택하고 있다.

 

 

TrueAudio의 정체와 "가능한 것"

 이상 하드웨어와 처리의 흐름을 정리해 보았지만, HiFi EP DSP 자체는 내부에 믹서적인 기능을 가지고도 있지만, 말하자면 "음성을 처리하는 상자"에 불과하다. 실제로는, 그 중에서, 음성 처리 알고리즘 (오디오 업계에서는 이 것을 "오디오 프로세서"라고 하지만, "프로세서" 라고 써 버리면 하드웨어 처럼 느끼는 사람이 많다고 생각되므로, 이번은 그대로 알고리즘으로 쓰기로 한다) 이 동작하는 것이다. 그러면 TrueAudio는 그런 HiFi EP DSP를 사용해 어떤 음성 처리 알고리즘을 동작시키는 것인가? 얘기하면, 현시점에서는 "콘볼루션 리버브 "(Convolution Reverb) 1개 뿐이다.

 

 

홀의 예

 

 콘볼​​루션 리버브는 이제 10년 미만 정도 사이에, 음악 제작의 세계에서 정착한 음성 처리 알고리즘이다. 리버브는 "잔향"으로, 콘서트 홀이나 체육관 등 큰 건물 안에서 소리를 내면 소리가 울리는데, 그게 리버브의 전형적인 예이다.


 사실, 리버브는 주로 두 종류의 소리로 구성되어 있다. 지금 든 예로 벽에 맞은 소리가 반사되어 올 때, 그 "직접 돌아 오는 소리"가, 리버브를 구성하는 제 1 요소인 "'초기 반사 "(Early Reflection). 그리고 제 2 요소가 "여운으로 생기는 소리"인 "잔향 후부"(Reverb Tail)이 된다. 홀 안에서 박수 칠 때 "팡"하는 소리가 나면 그 즉시 탁한 "팡"이라는 소리가 돌아오는데, 이것이 초기 반사이다. 그리고 "팡"소리에 붙는 " ~ 앙" 이라는 여운이 잔향 후부이다.

 

 디지털 음성 신호 처리가 일반화된 현재, 음악 제작의 세계에서는 초기 반사와 잔향후부를 연산으로 만들어내는 "디지털 리버브" (페이크 리버브 라고도 함)가 대부분 되어있다 (※).  

 

 디지털 리버브가 널리 채용되는 것은 현재 세대의 프로세서로 보면, 연산의 부하가 매우 낮아지고 있기 때문이다 (CPU 성능이 높아졌기에 상대적으로 연산 부하가 낮아짐. 다르게 자동차 엔진 마력으로 CPU 성능을 얘기하면, 사운드 처리 부하에 20마력을 요구하는데, 100 마력 CPU를 사용하던 시절에는(예를들면 싱글코어 시절) 20마력을 사운드에 쓰느라 80%를 가지고 게임을 돌렸다면, 이제는 IPC (클럭당 명령어 처리능력, 코어당 성능)증가 + SIMD 명령 (MMX,SSE,AVX 등) + 멀티코어 + SMT로 1000마력 CPU가 되었고, 1000마력 CPU가 20마력을 사운드 처리에 쓴다면 2%의 부하로 98%의 CPU가 게임을 처리 가능.

 

물론 이렇게 되면 더 효과가 리얼한 그래서 더 부하가 높은 사운드 처리 방법을 또 도입을 하겠지만요 (그렇기 때문에 저런 싱글코어에 지금으로 보면 저성능 IPC의 CPU때는 사운드 처리가 부가가 꽤나 높기 때문에 하드웨어 기반 사운드 카드를 쓰면 프레임이 오를 수 있는 겁니다. 왜? 소프트 처리로 20%를 쓰지 않고 하드웨어 사운드카드가 가속을 해줘서 5% 정도 밖에 CPU를 안쓰게 해준다면 당연히 프레임이 잘 나오겠죠. 반대로 지금은 소프트로 돌리나 하드에어로 돌리나 차이가 없을테구요. 이것과 비슷한게 동영상 가속 입니다. 동영상은 물론 또 새로운 고화질에 더 부하가 높은게 나와서 또 계속 진행형 이지만, H.264 영상으로만 보면 예전에는 HD 영상을 돌려도 꽤나 CPU를 많이 잡아먹어서  그래픽 카드의 동영상 가속이 매우 중요했지만, 요즘 CPU로 돌리면 그냥 소프트웨어 재생으로 해도 1% 밖에 사용하지 않습니다. 가속기능을 서도 0~1% 쓰죠.

 

사운드 카드를 구입할 필요가 없다는 뜻은 아닙니다. 사운드 카드는 그 자체로도 내장 코덱에 비해서 볼륨도 훨씬 크고, 좀더 노이즈가 없는 소리를 들을 수 있습니다. 기타 돌비관련 기능이나 그런게 부가된 사운드 카드도 있구요. 그럼 점에서도 구입하는 것은 이유가 될 수 있죠 (요즘 메인보드에 따라서 사운드 코덱 부분을 별도로 구획화 해서 만들어지는 보드들도 있죠. 더 깨끗한 소리를 위해서). 여기에 더해서 지금이나 미래보다는 과거 게임에서는 예를 들어서 EAX외에 이런 사운드를 내주던 것이 없었으니까, 과거 게임을 위해서 산다 라면 역시 이유가 충분할 테구요. 과거 게임용으로 별도 PC를 만들고자 한다. 구매에 매우 필요한 이유겠죠.

 

다만 사운드 처리 가속 이거에 너무 환상을 갖지는 마시라 이 얘기 입니다. 그리고 애초에 하드웨어 가속으로 하나 소프트로(CPU) 하나 소리는 같아야 합니다 (하드웨어의 차이로(연산 비트 라던가, 그런데 CPU가 bit가 높으면 높았지 사운드가 높지는 않겠죠.) 인한 무시할 만한 차이가 있을 수는 있겠지만, 즉 수치 상으로는 차이가 있어도 듣는 것에는 차이가 없는.. 절대 구분할 수 없는 수준. 다른 것으로 말하면, 동영상을 GPU 가속으로 보면 화질이 좋고, CPU로 보면 화질이 구리고 그렇지 않죠. 똑같잖아요.). 다르다면, 소프트웨어로 돌릴 때는 제대로 소리가 안나도록 만들어 놓은 겁니다. 상술!!. 그도 아닌 아주 예전의 저 성능 CPU 시대라면 소프트구현으로도(CPU 연산) 완벽하게 구현하고 싶었지만, 부하가 너무 커서 소프트 구현에는 간소화 시켜서 했다 라는 이유가 있을 수도 있고 (변명 소지가 크지만), 타사에서 따라서 만들었다면, 구현을 제대로 다 못한 것이 될 수도 있겠죠 (저작권 문제등 때문에 또는 역 설계 한계 때문에 등등... 윈도우 시대로 접어들고 2000년대 중반만 돼도 그럴바에 그냥 고가의 사운드 카드를 살 돈으로 적당한 사운드 카드를 사고, 남은 돈으로 더 좋은 CPU를 사라 이런 얘기를 하는 분도 종종 계셨습니다. 모 물론 난 돈이 넘쳐나서 이미 전부다 최고라서 더 올릴 수가 없다 라면 사는게 물론 좋았겠죠.)

 

조금 다른 얘기지만, 간혹 게임이 멀티코어 CPU에서 전체 60%를 쓴다고 이거 100% 사용하게 해 달라는 분들도 계신데, 그 말은 개적화 시켜주세요 라는 얘기 입니다 (같은 게임을 더 가볍게 만들수록 잘 만든 겁니다). 그 게임의 부하가 그정도인 겁니다. 더 고성능 CPU가 나오면 40%,30%가 될수도 있겠죠 (간단히 지금 컴퓨터로 예전 4코어 정도 지원하는 게임 돌려보세요. 최신 CPU 4코어로 돌리면 당시 4코어 CPU와 비교해 CPU 사용률이 훨씬 낮습니다). 동영상으로 말하면 플레이(디코딩) 하는 것이고, 인코딩과 (압축이라던가, 렌더링이나) 착각하면 안됩니다. 시간에 맞추서 플레이하는 것과, 시간 관계없이 최대한 빨리 처리해야 하는 인코딩을 혼동하면 안되겠죠 (제작하는 프로그램은 최대한 CPU를 사용한다면 그 안에서 빨리 만드는 것이 잘 만든 프로그램이구요). 모 동영상을 1프레임의 건너뜀도 없이 수백배 수천배 빨리 재생하거나, 게임을 수배 수십배 빨리 돌아가게 만들면 모 100% 사용이 가능할 수 있겠지만요. 리얼타임 게임은 불가능 할테고, 문명 같은 턴제 게임인 경우는 내 턴에는 적당히 높지만, AI 턴이 될 때는 부하가 높아지죠. AI턴은 빨리 처리하면 더 좋으니까요. 다만 인코더 같은 것과 다르게,  컴파일러는 다른 얘기 입니다. 컴파일러는 컴파일 시간이 빠른게 무조건 좋은게 아니라(이것도 어느정도 중요하지만)  컴파일 된 소프트가  빠르게 또는 같은 속도로 구동된다면, 저 부하로 돌아가게  생성해 주는 컴파일러가 좋은 컴파일러 입니다. 뭐 인코더도 인코더에 따라 품질이 다르다 라는 것도 있는데, 이것과 같다고 볼 수 있겠죠.). 전체를 연산으로 만들어 내기 때문에, 더러움이 없는 클린한, 그야말로 "이상적인 콘서트홀의 잔향 "을 의사적으로 (유사하게) 추가 할 수 있다.

※ 리버브는 이 밖에도 아날로그 시대의 "철판 리버브"나 방을 준비하고 그 방에 소리를 가져온 잔향 음이 부가되어 돌아온 소리를 혼합 "룸 리버브 "등, 다양한 기법과 장치가 존재하지만, 이번에는 본고의 취지에서 벗어나서 다루지 않는다.

 

 

이스라엘 Waves Audio 제인 디지털 리버브 용 음성처리 알고리즘 "TrueVerb"의 스크린 샷. 2 개 그래프 중 위에서 확인할 수 있는 주황색 세로줄이 초기 반사로, 보라색 삼각형이 잔향 후부이다. 세로축이 신호의 강도로 위로 갈수록 커지고 가로축은 시간축. 왼쪽에서 오른쪽으로 시간이 경과해 가는 가운데 잔향을 조절할 수있는 셈이다. 초기 반사와 잔향 후방을 별도로 편집 가능한 것이 포인트

 


반면 단점으로는 어디 까지나 의사적인 (유사한) 이른바 페이크 이므로, 어디까지 말해도 "ㅇㅇ 스러운" 소리이며, 실제있는 홀의 잔향을 100% 재현 하는 용도로는 사용할 수 없는 것이 수없는 것을 예로 들수 있다.  ...... 라는 긴 서론을 거쳐 드디어 콘볼 루션 리버브의 이야기이지만, 디지털 리버브의 이야기를 했기 때문에 느낌이 오는 사람도 있을 것이다. 라는 의미로 즉시 대충 정리하면 그 정의는 다음과 같다.

실제 홀이나 특정 공간에서 기준이 되는 스윕 파형을 잔향과 함께 계측해서 그 측정 데이터를 바탕으로 실제 장소의 잔향을 시뮬레이션 하는 것.

 

 

콘볼​​ 루션 리버브는 게임에서 재생된 "잔향이 없는 오디오 신​​호"에 IR 데이터를

"집어넣는" 것으로 잔향을 주고, 게임 오디오에 잔향을 가져온다.

 

 중요한 것은 디지털 리버브가 "일반적으로 홀은 이러한 음향 특성을 가지고 있기 때문에 그것을 시뮬레이트 한다" 형태를 취하는 반면, 콘볼루션 리버브는 "계측한 값이 이러니, 이것을 바탕으로 다른 소리를 낼 때는 이렇게 울린다 라는 연산을 행하는 "점이다. 전자에서는 이상적인 공간이 시뮬레이트 되기 때문에, 노이즈가 없는 잔향이 얻어지는 것에 비해, 후자는 측정시의 노이즈를 포함한 잔향이 얻어지게 된다.

 

덧붙여, 여기에서는 "실제하는 공간에서 계측한 음향 데이터를 바탕으로 다른 소리를 익 혔을 때의 잔향을 실시간으로 연산하는" 모양이 되는데, 이러한 연산을 수학으로 넣어 (콘볼루션)한다. 콘볼​​루션 리버브라는 이름의 유래는 이것이다. 따라서, 콘볼 루션 리버브의 생명선은, 처리하는 프로세서의 연산 능력뿐만 아니라 전문 용어로 " 임펄스 응답 "(Impulse Response, 이하 IR) 이라는 해당 공간의 계측 데이터에 이르게 된다.

 

콘볼​​루션 리버브의 구조

 

 앞서 말한대로, 오늘의 CPU나 오디오 처리용 DSP에 있어서, 디지털 리버브의 부하는 결코 높지 않다. 또한 계측 데이터를 참조할 필요가 없기 때문에 메모리 사용량도 적다.
 그에 비해, 콘볼루션 리버브의 경우는 계측 데이터를 기반으로 한 실시간 연산이 필요하기 때문에 프로세서 측의 능력에 따라 "레이턴시"(Latency 여기서는 소리의 출력 지연)가 커질 수도 있다. 또한 IR 데이터를 전개해야 하기 때문에 처리하는데 필요한 메모리 량도 늘어난다.

 

 

 

유명한 영국 Wembley Arena (웸블리 아레나)의 IR 데이터를 Waves Audio 제의 콘볼 루션 리버브 알고리즘 처리 도구 "IR-L"에서 보았는데. 아레나 홀은 잔향이 길기 때문에 중앙 왼쪽 창에서 "Convolution"의 모습을 보면, 총 5.69 초 IR 데이터가 있다.

 

 


이것은 유명한 레코딩 스튜디오인 미국 Signet Studios의 IR 자료.

IR 데이터는 1.8 초 분이다

 

 

실제로 IR 데이터는 경기장과 교회 내부의 것이라면 5초나 6초 정도의 길이가 된다. 따라서 기존의 전통적인 디지털 리버브에 비해 훨씬 큰 용량의 메모리가 필요하다. 따라서 콘볼루션 리버브를 게임에서 사용하려고 하면 그것을 처리하는 머신의 연산 능력에 대한 요구는 디지털 리버브만을 사용하는 경우에 비해 당연히 높아진다. 게다가 멀티 채널 서라운드로 처리하려고 하면 5.1ch의 경우, 믹서,라고 할까 스플리터에서 4ch의 데이터를 5.1ch로 정위치 시키는 것이 일반적으로, 프런트 L / R 과 후방 L / R 의 합계 4ch 분의 연산이 필요하다. 요구되는 프로세서와 메모리 리소스는 최소한 스테레오시의 2 배가되어 버린다.

 

사실, 콘볼루션 리버브 자체는 이미 대형 게임 업체의 사내 미들웨어로 구현되어 있는 것으로 추측된다. 너무 일반적인 알고리즘 이기에, 구현되지 않는 것은 생각하기 어렵다.  그러나 그렇다고 생각없이 쓰게되면, CPU나 메모리 자원을 쓰게되고 소리가 왜곡이 발생하거나 최악의 경우는 게임 플레이 자체에 지장을 방생하는 것도 충분히 생길 수 있다. 그에 따라 사용되지 않았던 것인가? "여기" 이라는 핀 포인트로의 이용에 머물고 있었다는 것이 필자의 이해이다.

 

여기까지 읽어 왔으면, TrueAudio의 존재 이유는 상당히 명확하게 이해할 수 있던 것은 아닐까? R9 295X2과 R9 290X, R9 290, R7 260X, 그리고 Kaveri 세대 APU는 콘볼루션 리버브와 같은 프로세서 및 메모리 부하가 큰 음성 처리 알고리즘을 동작시키기 위해 전용 프로세서로 HiFi EP DSP를 사용할 수 것이다. Intel은 PC 벤더에 대해 "HiFi 2 Audio DSP의 채용에 의해, Broadwell 세대의 CPU는" DSP 오프로드 "(DSP Offloading)의 혜택을 받을 수 있다"라고 설명을 하고 있는데, 이것은 "CPU 에 부하를 주지 않고 음성 처리를 실시 한다" (오프로드 = CPU대신 다른 프로세서나 가속기로 처리. 가장 흔하게 랜카드 설정을 보면 xx 오프로드 항목이 존재 합니다. 그걸 켜면 해당 처리를 랜 카드가 처리한다는 얘기 입니다.

 

요즘 경계가 좀 애매해 지는 감도 있지만, 프로세서와 가속기의 차이는 프로세서는  소프트웨어에 따라서 무엇이라도 처리할 수 있는 것을 프로세서, 특정 기능만을 수행하는 것을 가속기라고 합니다. CPU같은 경우 동영상 처리 소프트에 의해서 음악을 들을 수도 있고, 동영상을 재생할 수도 있고, 또는 각종 계산프로그램을 돌릴 수도 있고, 뭐든지 다 할 수 있죠. 그 반면  동영상 가속기 라고 하면, 동영상만 가속하지 동영상 가속기로 다른 것을 시킬 수가 없죠. 모 요즘 같으면 그래픽 카드의 동영상 가속 기능이라면, 일부는 가속기가 처리하고, 또 일부는 GPU 내부의 SP를 통해서 처리 하게 만들 수도 있겠지만요. 아무튼, 소프트웨어에 따라서 뭐든지 가능하면 프로세서,  역시 소프트를 통하기는 하지만 특정 기능만을 처리가능한 것을 가속기라고 합니다 (설사 다른쪽에도 어떻게 가능하다고 해도, 성능이나 효율이 너무 안나오는). 당연히 가속기 쪽이 특정 기능만을 하기 때문에 더 적은 회로로 구현이 가능합니다.

 

물론 가속기도 쌓이고 쌓여서 다양한 기능을 다양한 가속기를 통해서 처리하려고 하면, 회로가 너무 커지겠죠. 또 다른 기능에는 쓸 수 없으니 전체 처리능력에서 보면 약간 비효율 적이기도 하구요. PC의 발전사를 봐도, 당대의  CPU 성능으로는 빡빡한 처리를 요구하는 것의 경우 가속기가 나오고, CPU가 발전하면, 가속기가 없어져 버리는 것이 있었죠. 대표적인게  동영상 가속기 (사운드 카드 처럼 별도의 카드로 존재). 사운드 카드 이런게 되겠죠. 지금은 GPU에서 기본으로 들어가 있으니 없어지지 않겠지만요.) 라는 의미이며, HiFi EP DSP로 처리를 분산시키는 TrueAudio도 바로 그런 이미지가 된다. 부하가 높은 처리만을, GPU 및 AMD A-Series APU에 통합된 HiFi EP DSP가 담당한다.

(브로드웰의 경우 모바일 제품에서 CPU는 재우고 사운드를 DSP로 처리하는 용도.)

 

AMD에 의하면, R9 290X 및 290과 R7 260X, Kaveri 세대의 A-Series APU에 통합되는 HiFi EP DSP는 3기로 내부적으로 공유 메모리 (shared internal memory) 역할을 하는 SRAM 용량은 384KB 라는 것 . 여기에 DMA 엔진이 그래픽 메모리의 프레임 버퍼에서 최대 64MB를 TrueAudio 용으로 사용할 수있게 되어 있다고 한다. 아마도 콘볼 루션 리버브의 처리에 있어서는 SRAM에 IR 데이터의 시작 부분을 저장하는데 두고, 필요에 따라 프레임 버퍼에 배포된 데이터를 스트리밍 하는 사양으로 되어 있는 것이라고 생각된다.

 

 

TrueAudio 하드웨어 사양 개요

 

 

또한 Thief의 경우 동시에 사용하는 콘볼루션 리버브 알고리즘의 최대 수는 4 개로, IR 데이터는 최대 10 ~ 12초 분 이라고 한다. 4 개의 알고리즘을 동시에 사용할 경우 각 알고리즘이 사용 가능한 IR 데이터의 양은 단순히 4 분의 1이 된다. 필자의 예측이라면 아마도 12초 분을 "4초 분, 4초 분, 3초 분, 1초 분"같은 느낌으로, 최대 4개의 알고리즘에서 공유하게 될 것이다.


실제로 Thief에서 TrueAudio의 효과를 들어 보자

 

 

 

GOUGER DS-Cube Orange GU-IH4H87M-O

 

 그러면 TrueAudio, 그리고 Thief에서 구현되는 콘볼루션 리버브에서 도대체 무슨 효과를 얻을 수 있는지를 실제로 검증해 보자.
 이번은 Steam에서 구입할 수있는 영어판 Thief를 이용했다. 테스트에 있어서는 R7 260X를 탑재하는 PC 숍 아크제의 게임 PC " GOUGER DS-Cube Orange GU-IH4H87M-O '를 이용하기로 했다.


 GOUGER DS-Cube Orange GU-IH4H87M-O는 Micro-ATX 대응으로 확장 성이 뛰어난 Aerocool Advanced Technologies 제 소형 PC 케이스 "DS Cube Window Orange Micro-ATX"를 채용해, BTO 표준 구성으로 CPU 4 코어 4 스레드의 "Core i5-4590"를 조합한 모델 (※), 사용해 보면 알 수 있지만, 매우 조용하다. 소리를 체크하는 이번 테스트에서 매우 효과적인 제품임을 여기서 소개하고자 한다.

 

 

 

 

 

 

 

265 (W) × 395 (D) × 410 (H) mm와 소형 MicroATX 케이스 상판 부분이 간이 액랭 쿨러에 대응하고 있고, 하단의 흡기 슬릿이 커 냉각 중시. 그런 케이스를 채용하면서도, 소음은 매우 조용하다. 작고 소음이 적은 게임 PC를 찾고있는 사람에게 추천 할 수있다. 또한 채용 R7 260X 카드는 GIGA-BYTE TECHNOLOGY 제의 "GV-R726XWF2-2GD REV2 ' 였다.

 


※ 정확히 쓰면 입수 타이밍의 사정으로 필자가 사용한 개체에서는 "Core i5-4570"를 탑재하고 있다. 현재 BTO 표준 구성에서 사용되는 CPU는 본문에서 소개한대로 Core i5-4590이다.

 설치한 그래픽 드라이버는 " Catalyst 14.6 RC " 기사 게재 시점의 최신 버전은 아니지만, 오래 걸리는 테스트를 시작할 때 최신 버전이므로,이 점은 미리 양해를 구한다. 테스트는 5.1ch 서라운드 사운드 출력과 2ch 스테레오 헤드폰 출력으로 했다. 전자의 테스트에 사용 된 시스템은 아래에 보이는 대로, 멀티 채널 앰프와 PC는 GPU 상의 단자와 HDMI 연결하고 있다. 헤드폰 출력에 있어서는 GOUGER DS-Cube Orange GU-IH4H87M-O 온보드 사운드 기능인 Realtek Semiconductor (이하 Realtek) 제의 HD Audio CODEC을 이용해 AKG 제의 아날로그 연결 헤드폰 "K240mkII Studio"와 연결이다.

 

멀티 채널 앰프 (AV 앰프) : 파이오니아 "SC-LX86 "
프런트 L / R 스피커 : 파이오니아 "S-A77TB "
리어 스피커 : 파이오니아 "S-A77BS "
센터 스피커 : 파이오니아 "S-A77VT "
서브우퍼 : 파이오니아 "S-W7 "

 

 

 

전면 스피커

 

 

참고 스피커는 이런 구성 (원 기사에는 스피커 사진이 없습니다.)

 


 Thief는 타이틀 화면에 마련된 "OPTIONS"에서 "AUDIO"를 열면 "CONVOLUTION REVERB" 라는 그대로의 항목이 준비되어있다. 선택은 " TRUEAUDIO "" SOFTWARE "" OFF "의 3 가지. TRUEAUDIO를 선택하면 HiFi EP DSP 탑재의 Radeon과 APU에서 콘볼루션 리버브 처리를 실시하고, "SOFTWARE"는 CPU와 메인 메모리를 이용한 콘볼루션 리버브를 이용하여 처리하고 "OFF"는 처리를 하지 않게된다.

 

 

Thief의 "AUDIO"메뉴. "CONVOLUTION REVERB"는 바로 보이는 항목으로 "TRUEAUDIO"를 선택하면 HiFi EP DSP에서 콘볼루션 리버브 처리가 이뤄지게 된다

 

 

또한 이번에는 독자도 실제 소리를 듣게 하려고, 온보드 사운드 출력의 소리를 독일 RME 제조의 외장형 사운드 장치 "Fireface UCX"에 입력하고 그것을 연결한 Mac mini (Mac OS X 10.9)에서 작동하는 Avid 제조 DAW (Digital Audio Workstation) 소프트웨어 "ProTools | 11"(Native)를 사용해 녹음하기로 했다. HD Audio CODEC의 사양상, 출력은 16bit / 48kHz 사양이지만, 입력 측은 24bit / 192kHz 이다.

 

조금 보충해 두면 이번에는 콘볼루션 리버브 효과가 Thief 상에서 분명히 알수 있는 환경 음 (Ambient 앰비언트)를 녹음하고, 그것을 들려 주기로 했다. 다만, 환경음은 원래 재생 음량이 작은 데다 Realtek 제 HD Audio CODEC의 출력 레벨도 독립 사운드 장치와 비교하면 상당히 낮다. 이번에는 녹음에 있어서 HD Audio CODEC의 출력 레벨을 최대로 하고 있지만, 그럼에도 독자의(듣는이) 재생 환경에 따라 출력이 만족하지 않은 것이 예상 되었기 때문에, Fireface UCX 측에서 입력 게인을 + 18dB로 하게 된다. 그렇다고 하지만, 녹음 후 처리는 비트 해상도와 샘플링 속도 16bit / 48Hz 화 이외는 일절 하지 않았다. 따라서 나중에 보여주는 녹음 데이터는 게임 사운드 재생 직전과 직후에 클립 노이즈가 실려 있는데, 무 가공의 증명이라고 하는 것으로 양해를. 요약하면, PC의 온보드 사운드 출력 (≒ Realtek 제 CODEC)에서 출력되는 소리를 게인만 선형으로 증폭해 듣기 쉽게 한 뒤에, 16bit / 48kHz 변환 하는 정도로의 소리를 4Gamer 서버에 올렸다는 것이다.

 

 

TrueAudio로 Thief의 소리는 "리얼하게 무뎌진다."

 그래서, 아래에 4개의 보이는 것이 Thief의 녹음이다. 실제 소리를 들어보기 바란다.

 

녹음 1 Thief 게임 시작 직후. 왼쪽에 창문이 있고, 거기에서 외부의 소리가 들린다.


TrueAudio 무효시의 소리를 듣기

 

 


TrueAudio 유효시의 소리를 듣기

 

 

테스트 장면의 스크린 샷

 



녹음 2  시작 부분의 장면 뒤에 밖으로 나옴.

TrueAudio 무효시의 소리를 듣기

 

 

 

TrueAudio 유효시의 소리를 듣기

 

 

 

테스트 장면의 스크린 샷

 

 

녹음 3 조금 진행 "새들의 부옥" 안.

 


TrueAudio 무효시의 소리를 듣기

 

 


TrueAudio 유효시의 소리를 듣기

 

 

 

테스트 장면의 스크린 샷

 

녹음 4 리얼타임 컷신이라고 생각되는, 엘렌의 첫 등장 장면.

TrueAudio 무효시의 소리를 듣기

 

 

 

TrueAudio 유효시의 소리를 듣기

 

 

 

테스트 장면의 스크린 샷

 

 

 들어 봤으면 바로 알 수 있다고 생각되는데, 콘볼루션 리버브를 사용하지 않고 출력하는 쪽이 저역도 고역도 또박또박 재생된다. 오디오 적으로 말하면 보다 하이파이 (Hi-Fi)이며, 반면 TrueAudio를 활성화 하면 저역도 고역도 나빠져 "무뎌지는"소리에 노이즈도 증가.

 

 앞서 말한대로, 위에서 보인 것은 온보드 사운드에서 아날로그 2ch 출력을 녹음한 것이다. 테스트를 실시한 결과, 2ch 출력시는 스테레오 감이 좁아, 약간 모노스럽게 된것에 비해, 5.1ch 서라운드도 서라운드 감을 유지한 채로 "무뎌딘다"라는 차이가 있을 뿐으로, 이 점은 덧붙여 써두고 싶지만, 전체적인 "저역과 고역이 나빠져, 노이즈가 증가" 경향 자체는 2ch 출력도 5.1ch 출력도 변하지 않았다.

 

 여기에서 이해해 둘 것은, 늘어난 노이즈가 "의도하지 않게 발생한 노이즈"가 아니라 "의도적으로 콘볼루션 리버브에서 추가된 노이즈 '라는 점이다. 당연하지만 무반향실과 같은 특별한 공간이 아닌한, 현실 세계에 잔향이 존재 하지 않는 공간은 없다. 노이즈가 존재하지 않는 공간도 없다. "무반향실에서 울리는 소리" 와 "잔향과 소음이 있는 공간에서 울리는 소리"의 어느 쪽이 보다 리얼리티가 있는 것일까?

 

 필자는 음악 제작자이므로 실제 체험으로 알 수 있는데, 예를 들어, DTM 음원의 바이올린을 연주 때, 잔향 음이 원해서 디지털 리버브를 부가하면 깨끗하게 들린다. 그러나 헐리우드 영화 음악 등의 녹음에 사용되,는 오케스트라의 대형 녹음 무대 "Scoring Stage」나, 유럽의 오케스트라 연주회 용 홀 등의 IR 데이터를 사용해 콘볼루션 리버브를 적용 시키면 동일한 바이올린에서도 전혀 분위기가 달라져, 노이즈가 다르고 무뎌지는 상태도 다르고 그만큼 리얼리티도 증가.

 결국, 음악 제작의 경우 리얼리티는 무뎌지는 것이다. (※ 재생 기기 쪽은 이야기가 다르고, 가능한 한 하이파이 적인 것이 좋다. 하이파이 기기에서 무뎌진 소리가 들리면 현실을 느끼지만, 무뎌진 기기에서면 단순히 "나쁜 소리"로 느껴 버린다).

 

 본론에서 벗어나지만, 모처럼 이므로 실제의 바이올린 소리를 사용한 데모를 들어 보도록 하자. 여기에서는 오스트리아의 Vienna Symphonic Library 제조인 "Vienna Instruments : Orchestral StringsI"를 이용한 "바이올린 섹션의 뛰어 올라"를, 리버브 처리없음과 디지털 리버브 처리 있음, 콘볼루션 리버브 처리 있음의 3 패턴으로 준비 했다.

 

 좀 더 구체적으로 말하면 전용 호스트 어플리케이션 "Vienne Ensemble Pro 5"로 읽어 낸 "Vienna Instrumens Pro"의 "Orchestral StringsI" 라이브러리에서 14 인조 바이올린에서 뛰어 올라 악절을 오디오 처리없이 스트레이트인 - 용어에서 말하는 "드라이한"- 상태로 네트워크에서 재생. 그것을 "Pro Tools | HD 3 Accel"시스템에서 녹음하고 녹음 한 후

 


1.미처리 그대로를 재생

 


2. Waves Audio 제의 룸 시뮬레이터 "TrueVerb"프리셋 "Large Concert II"를 사용한 디지털 리버브 처리를 실시한 것 재생

 


3. Waves Audio 제의 콘볼루션 리버브 알고리즘 처리 도구 "IR-L"에 "Philharmonic Hall"의 16 번째에 수록된 IR 데이터를 읽어 콘볼루션 리버브 처리한 것 재생

 


3 개 준비했다. 모두 16bit / 48kHz의 비 압축 PCM 스테레오이다.
 Viennea Instruments 라이브러리는 무반향실에서 녹음되어 있기 때문에, 리버브 처리를 적용한 상태와의 차이를 알 쉽지만, 이것을 헤드폰으로 들으면, 어느 것이 더 깨끗한 지, 어느 것이 더 무뎌지고 리얼리티가 있는지 판단 할 수있을 것이다.

 

 게임 소리는 처음부터 하이파이 지향으로 "노이즈로 무뎌지지 않고, 저역에서 고역까지 모두 묶어 재생" 이라는 설계가 되어 있었다 (※ 필자도 당초, 그것에 가담한 1인이다). 그것이, 콘볼루션 리버브를 통하면 단번에 무뎌진다. 완벽 할 수는 없지만, 리얼리티가 상당히 늘어난다. 샘플은 2ch하지만 이것이 5.1ch 서라운드 라면 더 좋은 느낌이 된다.

 

 이상을 근거로, 앞서 보여준 4개의 녹음에 대해 재차 언급해 보면, 녹음 1은 피리 소리가 바구니 넣어져 멀리서 울리는 느낌이 강하다. 녹음 2는 환경 소리를 포함한 노이즈의 음량이 커져서, 환경 소리 전체에 콘볼루션 리버브가 걸려있는 것이 알기 쉽다.

 

 

 

 

 


독일 Steinberg 제 소프트웨어 "WaveLab 8"을 이용해 녹음한 Wave 파형의 차이 (= 진폭의 차이)를 비교 한 것. 윗쪽이(원문 왼쪽) 녹음 1에서 아래쪽이 녹음 2의 결과다. 모든 이미지에서 왼쪽 그래프가 TrueAudio 무효시, 오른쪽 그래프가 유효시의 것이 되지만, TrueAudio을 유효화 하면 진폭이 약해지는 것을 알수 있다고 생각한다.

 

 

같은 WaveLab 8에서 시각화한 녹음 3 Wave 파형

 


 녹음 3에서는 파형의 상하 진폭이 작은 부분 - 항상 재생되는 환경 소리 부분 - 이 TrueAudio의 유효화에 의해 더욱 작아지고 있다. 이것은 음량이 작은 오디오 신호인 환경 소리의 저역과 고역이 IR 데이터에 의해 TrueAudio 처리에 의해 잘려지기 때문이다.

 

 무반향실에서 녹음하면, 저역에서 고역까지 큰 소리로 하이파이 녹음이 가능하지만, 노이즈가 있는 홀에서는 저역도 고역도 무반향실 정도로 큰 소리로 녹음되지 않는다. 그것이 실내 장면을 이용한 녹음 3 파형에서 현저하게 나오는 것이다.
 덧붙여, 파형은 전체 주파수 대역의 합산 값 (= 세로 축)을 시간의 경과 (= 가로 축)으로 표시한 것이므로, 신호 에너지에서 큰 저주파가 깎이면 파형상의 진폭 (= 합산 값 )는 작아진다.

 

 

녹음 4 Wave 파형

 


 녹음 4에서 주목하고 싶은 것은 진폭이 큰 곳 (= 말하고 있는 곳)에서 파형이 TrueAudio 무효시와 유효시 거의 변하지 않는 부분. Thief 에서 다이아로그 (dialogue 대사)에는 콘볼루션 리버브가 적용되지 않는다는 것이다.

 

 역시 앞서 "완벽하지 않다"라고 적은, 용량 384KB의 SRAM과 R9 290X 에서도 용량 4GB라는 그래픽 메모리 사양부터, 어떻게 생각해도 "싱글 콘볼루션 리버브 " 밖에 있을 수 없기 때문이다.

 

 여기까지 굳이 설명해 오지 않았지만, 오늘의 음악 제작용 콘볼루션 리버브는 "싱글"과 "멀티"가 있다. 싱글 콘볼루션 리버브의 경우 어떤 공간의 한점에서 재생한 음원을 사용하는 반면, 멀티 콘볼루션 리버브의 경우 다른 여러 지점에서 음원을 재생하고 그 계측 결과인 복수의 IR 데이터를 사용하게 된다.

 

 당연하지만, 만일 다른 10 군데에서 음원 재생한 10의 IR 데이터를 멀티 콘볼루션 리버브로 사용하는 경우 그 데이터 량은 싱글 콘볼루션 리버브에 비해 10 배가 된다. 실제로 음악 제작용 콘볼루션 리버브 알고리즘으로 시판되고 있는 오스트리아 Vienna Orchestral Library의 "MIR" 이라고, 홀 내의 수십 군데에서 계측한 결과로, 수 GB 클래스의 메모리 용량과 스토리지 캐시, 그리고 상응하는 CPU 리소스를 필요로 한다. 만일 게임을 위해 다운 사이징 했다고 해도, 단일 콘볼루션 리버브를 사용하는 것과 비교해 수십 배의 CPU 및 메모리의 리소스가 필요한 것은 설명 할 필요도 없을 것이다.

 

 또한, 음악 제작측의 관점에서 말해 두면, 싱글 또는 멀티 하는가 하는 것은 어쨌든, Thief의 시작 부분 장면에서 콘볼루션 리버브의 활용은 소극적이다. 재생 기기에 따라서는 "무엇이 다른가?"라고 생각 되어도 어쩔 수 없는 레벨 이라고 말할 수 있다.

 

 만족하는 요령으로는, 가능하면 플레이하는 방의 노이즈를 적게하고, 게임의 재생 음량을 높이는 것으로 예를 들고 싶다. 보통 음량이라면, 환경 소리가 애초 들리지 않는 가능성도 있기 때문이다.

 


Thief의 프레임 레이트 개선 효과는 분명 있지만, 무시할 레벨

 여기까지는 TrueAudio 유효시와 무효시의 차이를 말해온 것이지만, 전단에서 Thief의 콘볼루션 리버브 설정 "SOFTWARE"가 있다고 소개한 것을 기억하고 있을까?

 

사실, 설정을 "TrueAudio"로 해도 "SOFTWARE"로 해도 얻을 수 있는 콘볼루션 리버브 효과는 변함없고, 청감상의 차이도 전혀 없다. 이 점은 "CPU 기반과 TrueAudio 기반으로 Thief의 콘볼루션 리버브에 차이가 있는건가?"라고 AMD에 확인했다. "현시점은 없다. 혜택은 DSP로의 오프로드와 (차후 등장하는)보다 복잡한 오디오 스트리밍 지원이다"라는 답변도 얻었기 때문에, Thief에서 TrueAudio를 이용하는 것의 이점은 CPU 및 메모리 부하의 경감만이라고 이해해도 좋다.

 

 그러면 부하의 경감에 의해, 프레임 레이트 레벨에서는 어느 정도 차이가 나오는가? 이번에는 전단에서 소리를 들려준 장면을 실제로 플레이하고, 거기에서 3 분간의 프레임 레이트 추이를 "Fraps"(Version 3.5.99)에서 계측하기로 했다. 실제로 플레이 하는 것으로, 매번 100% 동일한 동작이 생기는 것은 아니지만, 처음 장면만으로, 루트는 고정이므로 그렇게 큰 문제는 없다고 생각된다. (리플레이를 돌리거나, 정해진 구간을 똑같이 반복하는 벤치마크 같은게 아니기 때문에, 프레임 등락 부분이 서로 다를수 있다는 얘기 입니다 (같은 시간에.). 전체적인 프레임 변동이나 프레임 율을 보라는 의미)

 

 라는 것으로 그래프 1은, Thief의 콘볼루션 리버브 설정을 바꾸면서 플레이 프레임 레이트의 추이, 그래프 2 는 그 평균값을 정리한 것으로, 단적으로 말하면 차이는 거의 없다.

 

 

 

 

 

 

 라는 것으로, 완전히 같은 것도 아니지만,

체감 수준에서 무시할 수 있는 정도의 차이가 있는 것도 알 것이다. 


 이 점에 대해서는, AMD도 "Thief 자체가 CPU 자원을 맹렬히 소비하는 유형의 타이틀이 아니기 때문에, CPU에 의한 소프트웨어 처리와 TrueAudio에서 처리 부하에 큰 차이는 생기지 않는다"고 4Gamer에서 질문에 대한 회답 속에서 인정하고 있다. 요약하면, 현행 세대의 PC 플랫폼의 경우에는, 단일 콘볼루션 리버브의 부하는 일부러 DSP로 오프로드 할 것도 없는 정도 라는 것이다. (DSP의 또 다른 약점은, 훨씬 더 리얼하고 고 부하인 사운드 처리를 개발하고 쓰고자 할때 그 부하가 DSP의 성능을 넘으면 처리가 불가능 하다는 겁니다. DSP의 성능 안에서 처리 가능한 정도의 부하로 제한이 걸립니다. 즉 어떠한 리얼한 사운드 처리법도 DSP부하보다 적게가 되니, 콘솔처럼 고정된 하드웨어 사양이고, 그 성능 (CPU, GPU, DSP) 안에서만 만드는 콘솔과 다르게, 기술을 선도하는 PC에는 어울릴까? 라는 의문이 들 수 있죠. 지금의 고성능 멀티코어에 비벼질 정도의 DSP를 달아놓으면 아주 오랜기간 사용이 가능하겠지만, 그러면 가격부터가 문제일테고, 아무리 DSP라 해도 전력,발열 등도 문제가 되겠죠. 예전 에이지아가 내논 PhysX 카드를 생각해 보세요. 초기에 잠깐 효과를 봤지, 금방 물리 처리를 더욱 리얼하게 하려니 PhycX가 오히려 발목잡아서 프레임이 떨어지는 일이 발생했고, 망했고 엔비디아가 인수후 그냥 쉐이더 프로세서로 PhycX를 돌리죠 (당시 회사에서 에이지아 피직스 카드에 대해서 토론할 때 전 망할거라고 봤습니다). 왜 PhycX 프로세서 자체를 더 키워서 GPU에 통합하지 않았는가를 생각해 보면 됩니다. 또 PhycX 도 그냥 CPU로 돌리는 경우가 많죠. 라데온인데 피지엑스 깔고 돌리면 CPU로 처리.

 

다만 엔비디아의 피지엑스는 자사의 VGA를 더 팔기위해(?) CPU가 돌리는 부분은 개적화 되어 있습니다 . 그래서 생각보다 많이 쓰지 않죠. CPU로 처리할 경우도 최적화가 되어 있으면 요즘의 고성능 CPU로 충분히 표현될 것이, 개적화로 인해서 버벅일 수 있습니다.(CPU 멀티코어와 SIMD 명령 최적화가 안되어 있습니다. 말 그대로 그냥 돌려만 드릴께 정도로 구현. 이런건 엔비디아가 GPGPU 말 할때도 마찬가지로 광고를 하구요. CPU의 몇십배 몇백배 빠르다 라고 광고를 하는데, CPU는 1코어만 게다가 SIMD명령이 아닌 x87로 처리하는 능력과 VGA를 비교하는 식이죠. 제대로라면 CPU도 멀티코어+SIMD명령 상태의 능력과 비교를 해야하죠.))


거치형 게임기를 연루시킨 웅대한 계획이 보이는 TrueAudio

 이상 TrueAudio와 Thief의 콘볼루션 리버브 구현을 세세하게 봤다.

 

 사운드 처리가 가져오는 CPU나 메모리 부하는, 게임 개발에서 "여기 제일"의 장면에서 매우 신경질적에 이르러서는 안된다. 그때에 TrueAudio가 있으면, "무거운" 효과가 있는 처리를 외부 DSP에 오프로드 하는 것으로, 그 부하를 무시하고 확실하게 일정한 자원을 이용할 수 있다는 장점이있다.

 

엔드 유저로 하면, 지금까지 매우 하이파이 방면을 향해 달리고 있던 게임 업계가 TrueAudio와 콘볼루션 리버브를 계기로 "실존하는 잔향과 노이즈를 추가해 무뎌지고 리얼리티를 추구하는" 이라는, 영화 산업과 같은 방향으로 방향타를 꺾어 오면, 리얼리티가 커지고, 게임의 몰입감을 한 단계 끌어 올려 줄 것을 기대할 수 있게된다.

 

 게다가 Thief가 콘볼루션 리버브를 채용했다고 해서 TrueAudio가 콘볼루션 리버브 전용 기능에 머무는 것은 아니다.

 AMD 왈 "콘볼루션 리버브는 어디 까지나 제 1 단계 다음은 2ch 스테레오 헤드셋에서도 충분한 서라운드 사운드 경험을 가능하게 하는 "Spatialized Audio"를 통합 할 예정이다. 또한 장기적으로 더 많은 오디오 스트림을 게임에서 사용할 수 있도록 하는 것도 검토하고있다 "라는 것이다.

 

 덧붙여, Spatialized Audio는 예전부터 스테레오 강조 기술이다. 스테레오 음원의 좌우 분리 감이 더 명확하게 될 수 있도록 하는 기술이다.  ......로 많은 가능성을 느낄 TrueAudio 이지만 "해당 제품이 매우 적다"는 것이 현재의 큰 과제가 된다. 물론, "Radeon과 A-Series APU에서도 비대응의 제품이 많다"라고 하는 것은 시간이 해결 하겠지만 경쟁인 NVIDIA가 TrueAudio를 타고 올 가능성은 거의 틀림 없다. Radeon와 APU 밖에 TrueAudio를 지원하지 않는 경우, AMD가 아무리 노력해도, 게임 개발자, 그리고 사용자에게 널리 받아 들여지는 것은 어려울 것이다.

 

 또한, 전단에서도 언급한대로 적어도 싱글 콘볼루션 리버브 경우 현재 세대의 PC (또는 CPU와 메인 메모리)에서 하면, 일부러 DSP에 오프로드 할 필요가 없다. 그런 일을하지 않아도 소프트웨어 처리로 (즉 CPU 처리로) 감당된다. 그렇게 되면 TrueAudio 대응의 Radeon과 A-Series APU를 일부러 선택하는 이유는 없다는 것도 될 것이다.

(이런것과 관계없이, 이런 프로세서에 관한 것이 아닌, 애드온 사운드 카드의 경우라면, 결국 DAC부터의 회로의 차이로 인해서 더 좋은 아날로그 신호를 출력해 줄 수 있기 때문에 사운드 카드의 경우라면 이런거 자체로도 장점은 존재 합니다. 이외에 돌비,DTS 인코딩 기능 같은 부가적인 기능등의 장점은 외장 사운드카드에서 계속 되죠. 문제는 적당한 가격에 괜찮은 사운드 카드가 점점 나오지 않아서 (특히 PCI-E 방식) 사고 싶어도 살수가 없다는 점.)

 

 

PS4의 커스텀 APU가 TrueAudio 기반의 DSP를 통합된다 밝혔다, Dominic Mallinson 씨 (Vice President of Research and Development, Sony Computer Entertainment America)

 


 그럼, 그런 TrueAudio, 왜 AMD는 진심인가. 이 것을 생각하는데서 중요한 존재로 부상하는 것이 거치형 게임기의 존재이다.
 다시 설명 할 필요도 없다고 생각하지만, PlayStation 4 (이하 PS4)와 Xbox one의 메인 프로세서는 모두 AMD의 커스텀 APU이다. 그리고 적어도 PS4의 APU는 Sony Computer Entertainment America가 " TrueAudio 기반의 DSP를 통합하고 있다 "고 인정하고있다.

 

 물론, API (Application Program Interface, 소프트웨어를 개발할 때 사용 가능한 명령이나 함수를 모아 놓은 것)가 PC 용 과는 다를 수 있으므로 TrueAudio 자체라고는 말하지 못하고 그래서 "TrueAudio 기반 "이라는 표현되었을 지도 모른다. 하지만 원래 API에 대해 말하면, Wwise와 FMOD 같은 미들웨어가 있으면 흡수해 주는 것이므로 거의 TrueAudio라고 생각해도 문제 없을 것이다.

 

 또한 공개 정보가 거의 없는 Xbox one 측도 Tensilica 제의 DSP를 통합하고 있다고 전해지고 있다. 그 정보가 정확한지 어떤지 필자는 판단 할 방법을 가지지 못하지만, 만일 옳다고 한다면 그 DSP가 TrueAudio과 연도 연고도 없는 것은 생각하기 어렵다.

 

 그리고 여기까지 오면 사정이 달라진다. Radeon과 A-Series APU를 탑재한 PC와 PS4, Xbox one 사이에서 TrueAudio (또는 TrueAudio적인 기능)를 크로스 플랫폼 대응할 수 있게되기 때문이다.

 

게다가 현세대의 거치형 게임기의 경우, 게임 PC와 비교해 CPU 성능이 어쨌든 무력한 것으로, 오디오 처리의 일부를 TrueAudio로 대신 처리할 수 있게 되면, 채택하는 게임 개발자도 늘어날 가능성은 크게 있다. 아마 AMD는 그것이 돌고 돌아 PC 게임 시장에서 자사의 우위성에 이어진다고 생각하고 있는 것은 아닐까.

 

 약간 내려다 보면, TrueAudio와 Broadwell에서 오디오 DSP의 채용이 거의 같은시기에 생겨 DSP 오프로드 트렌드로 가고 있다는 것이 재미있다. TrueAudio과 Broadwell에서 동일한 DSP 오프로드에서도 "CPU 부하를 내리면서 기능 추가 "또는"단순한 부하 저감 "에서 목적이 다소 다르지만, PC는 한때"무엇이든 CPU에서 처리"였던 것이, 역시 별도 DSP를 이용하게 되고 있다는 것은 꽤 맛이 깊다.

 

어쨌든, TrueAudio에서 "지금 보이고 있는 것"이상의 가능성을 느낀다. AMD의 계산대로  추진되나 말하면, 그렇지 간단하지는 않을지도 모르지만, 장기적으로 주목해 두는 것이 좋을 것 같은 기술로 말할 수 있겠다.

 

(엑 박 부분을 한번 찾아봤는데.. 다른 기사에서는 확신은 안하는데 다른걸로 보인다고 하네요. 구조 자체가 다릅니다. 텐실리카는 VLIW 구조. 엑박은 SIMD 구조.엑박원 쪽은 조금 찾아보니까. 독자 설계라고 하네요. 그리고 이상한 EAX면 소리가 달랐을텐데 이런거 아닙니다. 하드웨어냐 소프트웨어냐(CPU)의 차이는 누가에게 처리를 시키느냐만 다른 겁니다. 어떤 효과라는건 어떤 알고리즘을 계산해서 결국 나오는건데, 같은 알고리즘으로 처리하는데 결과가 다를 수가 없죠. 결국 CPU의 부하를 경감시켜주느냐의 차이밖에 없습니다. 물론 이 경우도 CPU성능대비 부하가 큰 경우라면 하드웨어 처리방식이 좋을테고, CPU 성능대비 부하가 작은 경우라면 굳이 하드웨어 방식으로 할 필요가 없어지겠죠. (그렇기 때문에 과거의 펜2,3,4 시절이라면 하드웨어 방식이 더욱 필요한 시기가 되겠죠.) 이 외에 전용 하드웨어를 달면 전력상에는 조금 이점이 있을 수 있다가 있겠고, 반대로 그런 전용회로를 추가로 마련해야 한다는 단점도 있겠죠. (전력과 비용의 관계). (그래픽 같은 경우도 마찬가지.. CPU만으로도 3D처리 게임이 가능합니다. 다만 그래픽에 특화된 GPU만큼 성능이 안나오니 GPU로 처리할 뿐이죠. 모든 컴퓨터에서의 처리는 소프트웨어로 돌리냐 하드웨어로 돌리냐의 결과의 차이는 없습니다.)

 

 EAX 시절 독점적인 특허권을 가진걸 소프트웨어로 정확히 따라 만들어서 하드웨어와 소리가 다른거지.. (또는 할수 있다고 해도 당시의 CPU로는 무거워서 가볍게 만드느라 완벽하게 동일한 처리를 못하는 경우. 또는 소프트웨어를 만들고 쓸 수 있도록 해주면서 하드웨어를 더 팔기 위해 차이를 내면서 만든경우) EAX라서 소리가 다르고, 트루오디는 소리가 같더라가 아닙니다. 하드웨어로든 소프트웨어든 동일한 처리방식이면 결과도 당연히 똑같습니다. 어느 한쪽에 별도의 작위적인 후처리를 하지 않는 이상 동영상을 하드웨어로 보나, 소프트웨어(CPU)로 보나 동일한 품질로 재생되는 것과 똑같은 겁니다. 전용 하드웨어의 이점은(또는 이런 DSP같은) 지금은 성능당 전력의 이점 입니다 (과거에는 CPU의 성능 문제로 전용 하드웨어를 썼지만. 예전 동영상 MPEG 카드가 왜 나왔고 사라졌는지를 보면 됩니다. 물론 이런것도 결국 VGA로 들어갔지만요.영상이 더욱 복잡해지고, 전력문제로). GPU로 처리하는 경우라면 전력이 당연히 뛰게 되구요. 동영상으로 말해도 순수 하드웨어 방식으로 동영상을 가속하면 전력당 성능이 가장 좋습니다. 대신 전용하드웨어이기 때문에 새로운 방식의 동영상이 나오면 그건 가속을 못합니다. 유연성이 없죠. 대신 GPU의 연산 유닛을 통해서 하면 CPU와 마찬가지로 유연성이 좋습니다. 새로운 영상이 규격이 나와도 대응이 가능합니다(절대 성능이 모자르지 않는 한). 대신 전력 사용이 큰 GPU로 돌리기 때문에 전력이 매우 뛰게 되는 단점이 있죠. 그러니까 어떤 장치든 하드웨어 방식이냐, 프로그램에 따라 달라지는 방식이냐는, 서로간에 일장일단이 있습니다. 그 안에서 적절하게 취하는 것이구요. 이 중간에 하이브리드 방식도 있을 수 있겠구요. 절대적으로 어느것이든 처리해야 하는 부분은 전용 하드웨어로하고, 바뀔 수 있는 부분은 CPU나 GPU유닛을 활용해서 처리한다던가 하는 식으로요. 이러면 유연성을 확보하면서 적당히 전성비도 약간 얻을 수 있겠죠. GPU 자체만 말해도 모든 그래픽 처리에 SP를 이용해 처리하는 것이 아니라, 고정하드웨어 또한 존재해서 고정하드웨어로 처리하는건 계속 고정 하드웨어로 처리를 합니다. 그 이외를 SP로 처리하는 것이죠. CPU에서 암호화 가속 같은 경우도 일반적인 범용인, 보통말하는 CPU성능에(IPC) 직결되는 부분으로 처리하는 것이 아닌, 암호화 전용 하드웨어로 처리를 합니다. 최신의 CPU들은 다 내장되어 있죠. 이렇게 하면 원래의 CPU로 처리하는 것보다 더 작은 전력으로 더 빠른 처리를 할 수 있게 되죠. CPU의 또 다른 작업에 부담을 주지도 않게 되구요. 그러면 이건걸 순수 본래 CPU유닛이나 SP로 처리하면 결과가(동영상이나 사운드로 치면 품질,효과가) 다르냐? 당연히 똑같습니다. 물론 사운드 쪽에 한하면, 사운드 카드를 추가로 장착하는 경우, 입출력 단자의 품질 성능이 높기 때문에(디지털 단자는 동일), 실제 들리는 소리는 더 원음에 가까운 소리를 들을 수 있는 장점은 존재하죠. 이것 하나로도 사운드를 아주 중요시 하는 분들한테는 살만한 이유가 될테구요. (단순하게 말해도 메인보드 온보드 코덱의 출력과 사운드 카드의 출력(볼륨) 크기 부터가 다르죠.). 그 외에 해당 사운드 카드에서 지원하는 소프트웨어를 통해서 여러 효과들을 적용할 수 있다 이런게 장점이겠죠. 예를들면 마이크 목소리를 바꿔준다던가, 게임이 아니더라도 나오는 소리들을 후처리로 들려준다던가 .. 이런게 내장에 비해서는 장점이라면 장점이겠죠. 이 외에 라이센스에 따라서 돌비나 DTS 관련 기능이 있다면 그게 장점이 될테구요. 다채널 원음을(게임,영화 등) 2스피커(헤드폰)으로 들어도 다채널 스피커로 듣는 것 처럼 들려주는 돌비 버츄얼 스피커/돌비 헤드폰 (DTS도 비슷한 기능) 기능이라던가... 게임등의 다채널 사운드를 다채널 돌비디지털이나 DTS로 실시간 인코딩 해서 광/동 출력단자로 보내는 기술이라던가(스피커 전에 디코더(리시버) 필요),  2채널 원음을 다채널 스피커에서 서라운드로 들려주는 돌비 프로로직류(DTS도 비슷한 기능) 라던가 이런게 장점이 되겠죠. 내장도 라이센스를 받기도 하는데.. 이쪽은 기능도 일부만 있고 사운드 설정에 한계가 있습니다.

 

각 제품별 FP 성능을 정리하면 아래와 같습니다.)

 

부동소수점 피크 성능
PC 게임기
i5-4690 i3-4160 FX-8350 FX-6350 A10 7850 Xbox one PS4
코어 4코어 2코어 8코어 6코어 4코어 8코어 8코어
CPU 클럭 3.5Ghz 3.6Ghz 4Ghz 3.9Ghz 3.7Ghz 1.75Ghz 1.6Ghz
Gflops 448 230.4 256 187.2 118.4 112 102.4
1코어당
Gflops
 112  115.2 32 31.2 29.6 14 12.8

 

엑박의 오디오 프로세서가 15.4 Gflops. 현세대 게임기와 비교하면 1코어 이상의 연산력을 가지고 있죠. 아마 게임기들은 이런 이유로 오디오 프로세서를 넣을 수 밖에 없겠죠. AMD의 CPU 쪽도 비슷한 이유로 넣을 수 밖에 없는 형태가 될테구요.(특히나 4코어가 최대인 APU쪽) 이런게 없을때 AMD CPU쪽은 상대적으로 훨씬 큰 부하를 처리해야 하기 때문에 게임에서 더 나쁜 결과가 나올수 있는데, VGA쪽에서도 넣음으로 인해서 자사의 VGA와 CPU (APU이든 아니든 VGA에 있으니)를 조합하면 조금은 커버할 수 있는 형태가 되겠죠. (게임기도 AMD CPU인데, 게임기용 CPU 라서 가볍게 만들려고 그렇다고 해도, 애초 AMD CPU 자체가 코어당 Flops가 매우 낮습니다.)

 

이미 다른 기사에 추가 설명을 붙여서 flops 계산을 적어뒀지만, 이곳에도 간단히 추가를 하면 현세대 게임기들이 채택한 제규어 CPU의 경우 1코어당 (128bit + 128bit) /32bit = 8 Flop x 클럭 1.75 Ghz x 코어 8 = 112 Gflops. 현세대 AMD CPU들은 1모듈당 (2코어 + 1 FPU) (128 + 128) /32 bit = 8 Flop x 2 (FMA) x 클럭 4Ghz x 4모듈 (8코어 / 2) = 256 Gflops. 인텔은 1코어당 (256 + 256) /32bit = 16 Flop x 2 (FMA) x 클럭 3.5Ghz x 4코어 = 448 Gflops 가 됩니다. 내년에 나올 스카이레이크의 경우 나와야 알겠지만, 512 AVX를 지원한다고 하니까.. 512 x 2 /32bit = 32 Flop x 2 (FMA) x 클럭 YY Ghz x 코어수 =  가 되겠죠. (이런 이유로 인해서 슈퍼컴퓨터 쪽은 더욱 AMD CPU가 쓰이지 않을 겁니다. 여기에 전성비도 좋지가 않죠. 슈퍼컴퓨터나 서버가 있는 전산실의 온도제어에 막대한 전력이 추가로 소비되니까요. 미 정부에서도 전력을 줄인 시스템을 원하구요. 2014년 6월 슈퍼컴퓨터 순위에서 신규컴이  인텔 97% 인 이유 (인텔 AMD의 x86뿐 아닌 전 CPU 중). 미디어 서버가 아닌 일반적으로 생각하는 서버에서는 조금 더 사정이 나을 수는 있겠지만요. 이런 서버는 부동소수점 성능이 필요가 없으니까요. 이런 점을 노리고 불도저가 나온 것이기도 하구요. 정수연산만 높으면 장땡인 곳은 그나마 성능상 경쟁력이 존재.)

 

(인텔쪽은 Soc 버전들만 절전관련해서 넣은걸로 아는데

 

[정보분석] Atom Z2760을 철저 분석 ~ 모바일 Windows 사용자의 새로운 선 

 

이런것 처럼 말이죠.)

 

 

https://www.youtube.com/watch?v=ochr3SCfIgk&t=2353s&list=PLrM38DyM-7HcXSKE3uHyg7YquvC6v9ObR

워크래프트2 WAV,FM, MIDI 사운드 비교. 다른 영상은 우측 상단의 ≡ 를 클릭.

 

 

[에뮬레이터] 윈도용 도스 에뮬레이터 도스박스(DOSBox) 0.74

 

[분석정보] 인텔 팬리스 PC를 위한 Core M 프로세서