100 likes | 224 Views
PC クラスタ上での AAC エンコーダの並列化. 高性能計算研究室 亀井 雄介 2008 年 2 月 27 日. 研究背景と目的. 背景 - PC クラスタの低価格化、高性能化に伴う普及 - OpenMP の普及 - 音声は短時間での処理が望ましい - 音声圧縮方式AACの普及 目的 - AAC の圧縮時間の高速化 - 音声符号化の理解と並列化効果の測定. AACとは. MPEG-2/AAC(Advanced Audio Coding ) 1997 年に MPEG 標準化団体によって開発された音声の圧縮方式
E N D
PCクラスタ上でのAACエンコーダの並列化 高性能計算研究室 亀井 雄介 2008年 2月27日
研究背景と目的 • 背景 - PCクラスタの低価格化、高性能化に伴う普及 - OpenMPの普及 - 音声は短時間での処理が望ましい - 音声圧縮方式AACの普及 • 目的 - AACの圧縮時間の高速化 - 音声符号化の理解と並列化効果の測定
AACとは • MPEG-2/AAC(Advanced Audio Coding) • 1997年に MPEG標準化団体によって開発された音声の圧縮方式 • 従来の音声圧縮方式を超える、高音質・高圧縮率を両立している • 主に、地上・BSデジタルテレビ放送、携帯音楽プレイヤー、メディアプレイヤーなど、多くの機器・ソフトウェアで利用されている
AACの圧縮アルゴリズム 音声信号入力 時間域から周波数域へ変換、 周波数スペクトルを求める 圧縮効率を上げる 振幅方向を離散化して 周波数スペクトルを整数値化 量子化された値を二進数値化 デコーダに必要なデータなどを 組み込み、出力 MDCT 符号化ツール群 量子化 ハフマン符号化 ビットストリーム形成部 AACファイル出力
各モジュールの処理の割合 • 使用したエンコーダはオープンソース(FAAC) • Dual Xeon 3GHz × 2, 4GB SDRAM の環境
ブロック分割による並列化手法 • 4スレッド、実行プロセッサ数4の場合 入力音声信号 フレーム化 ブロック化 分割 各処理 結合, ファイル出力 出力ファイル
PCクラスタ diploの構成 • Dual Xeon 3GHz × 2 • 4GB RAM • Intel C/C++ Compiler diplo00 diplo01 diplo02 diplo03 Gigabit Ethernet Switch Tarbo (Host Machine)
実行結果 入力ファイル : 39369 KB,3分48秒のCD音源 サンプリング周波数44.1kHz • ほぼ理想的な速度向上
まとめと今後の課題 • まとめ - AACエンコーダの圧縮アルゴリズム - ブロック分割による並列化手法 - OpenMPによるAACエンコーダの並列化 - 理想的な速度向上 • 今後の課題 - タスク分割の検討 - ハイブリッド並列プログラミング環境での実験