研究生: |
莊詠翔 Siang, Chuang-Yung |
---|---|
論文名稱: |
加速以多GPU為運算核心的二階段哼唱選歌系統 Acceleration of A Two-Stage Query by Singing/Humming System Using Multiple GPUs |
指導教授: |
張智星
張俊盛 |
口試委員: |
張智星
徐嘉連 呂仁園 張俊盛 |
學位類別: |
碩士 Master |
系所名稱: |
電機資訊學院 - 資訊工程學系 Computer Science |
論文出版年: | 2014 |
畢業學年度: | 102 |
語文別: | 中文 |
論文頁數: | 56 |
中文關鍵詞: | 音樂檢索 、哼唱選歌 、線性伸縮 、重複歌曲移除 、重複片段移除 |
外文關鍵詞: | Query-by-singing/humming, Linear scaling, Repeating songs removal, Repeating pattern removal |
相關次數: | 點閱:4 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
本論文針對GPU (Graphics Processing Unit)上之哼唱選歌 (Query by Singing/Humming, QBSH)系統做出效能上的改良。此系統可將使用者數秒鐘之哼唱片段,與資料庫近兩萬首之歌曲進行比對,並找出最相似之前十名歌曲。
線性伸縮為此系統其中一種比對方法。我們設計了不同於前人之實作方式,在存放資料庫歌曲之音高向量方面,以GPU上之shared memory來取代local memory,使得系統更加貼近GPU之硬體特性,並在資料庫歌曲中加入額外的音高點以減少bank conflict之問題,此改進可將搜尋時間減少32%。
另一方面,為減少多餘的比對,我們也從資料庫中刪除了1265首之重複歌曲以及佔總長約22%之歌曲最長重複片段。
最後,我們也將此系統改良成可支援多張GPU,將比對工作平均分配給各GPU來運算,以最直觀的方式改善效能。當配備N張GPU時,系統可幾乎獲得N倍的加速。
This research proposes a modification to speed up a QBSH (query by singing/humming) system running on a GPU. The system can compare the user's singing or humming with about 20000 songs in the database and retrieve the top-10 most likely candidates.
Linear scaling is one of the comparison methods in our QBSH system. We design a new implementation that uses shared memory instead of local memory for storing pitch vectors of songs in the database so that it is more closely conform to the design of GPU. Furthermore, we add extra pitch points to songs in the database to eliminate bank conflict. After these improvements, we can achieve a 32% reduction in retrieve time.
Besides, in order to reduce redundant comparisons, we remove 1265 repeating songs from the database and the longest repeating pattern of each song, comprising around 22% of the total length of all songs in the database.
Finally, we enhance the system to support multi-GPU so that the work load can be distributed among all GPUs to increase overall efficiency. A speedup factor close to N is achieved when the task is distributed among N GPUs.
[1] J. Ghias, D. C. Logan, and B. C. Smith, “Query by humming-musical information retrieval in an audio database,” in Proc. ACM Multimedia’95, San Francisco, pp. 216–221, 1995.
[2] R. J. McNab, L. A. Smith, I. H. Witten, C. L. Henderson, and S. J. Cunningham, “Toward the digital music library: Tune retrieval from acoustic input,” in Proc. ACM Digital Libraries, pp. 11–18, 1996.
[3] J.-S. R. Jang, H.-R. Lee, and M.-Y. Kao, “Content-based Music Retrieval Using Linear Scaling and Branch-and-Bound Tree search,” in Proc. of IEEE International Conference on Multimedia and Expo, August 2001.
[4] J.-S. R. Jang, J.-C. Chen, and M.-Y. Kao. “MIRACLE: A Music Information Retrieval System with Clustered Computing Engines,” in Proceedings of the 2nd International Conference on Music Information Retrieval, ISMIR 2001, 2001.
[5] G. Poli, A. L. M. Levada, J. F. Mari, J. H. Satio, “Voice Command Recognition with Dynamic Time Warping (DTW) using Graphics Processing Units (GPU) with Compute Unified Device Architecture (CUDA),” in Proceedings of the 19th International Symposium on Computer Architecture and High Performance Computing , SBAC-PAD 2007, Brazil, pp. 19–25, 2007.
[6] Jun Li, Shuangping Chen, Yanhui Li, “The Fast Evaluation of Hidden Markov Models on GPU,” in IEEE International Conference on Intelligent Computing and Intelligent Systems, Shanghai, vol. 4:426-430, Nov., 2009.
[7] D. Sart, A. Mueen, W. Najjar, E. Keogh, and V. Niennattrakul, “Accelerating Dynamic Time Warping Subsequence Search with GPUs and FPGAs,” in ICDM '10 Proceedings of the 2010 IEEE International Conference on Data Mining, pp. 1001-1006, 2010.
[8] P. Ferraro, P. Hanna, L. Imbert, and T. Izart, “Accelerating Query-by-Humming on GPU,” in Proceedings of the 10th International Conference on Music Information Retrieval, ISMIR 2009, pp. 279–284, 2009.
[9] Chung-Che Wang, Chieh-Hsing Chen, Chin-Yang Kuo, Li-Ting Chiu, and Jyh-Shing Roger Jang, “Accelerating Query by Singing/Humming on GPU: Optimization for Web Deployment,” The 36th International Conference on Acoustics, Speech, and Signal Processing (ICASSP), Kyoto, Japan, March 2012.
[10] Kuo, “Accelerating Query By Singing/Humming on GPU”, National Tsing Hua Univ. 2013
[11] Kao, “A Two-Stage Query by Singing/Humming System on GPU“, National Tsing Hua Univ. 2013
[12] Jang, J.-S Roger, Ming-Yang Kao, “A Query-by-Singing System based on Dynamic Programming,” International Workshop on Intelligent Systems Resolutions (the 8th Bellman Continuum), PP. 85-89, Hsinchu, Taiwan, Dec 2000.
[13] Chieh-Hsing Chen,“Speedup Mechanism for Comparison of Query by Singing/Humming over GPUs,”National Tsing Hua Univ.2012.
[14] 張舒, 褚豔利, 趙開勇, 張鈺勃, “GPU高效能運算之CUDA,”碁峰資訊, 2011
[15] 林俊淵, 周嘉益, 林郁翔, 李昇達, 陳昱蓉, 黃宣穎, 李天齡, “CUDA輕鬆上手 新世代GPU應用技術,” 松崗資訊, 2011
[16] CVG @ ETHZ - GP-GPU: General Purpose Programming on the Graphics Processing Unit, http://www.cvg.ethz.ch/teaching/2011spring/gpgpu/, 2012
[17] NVIDIA, “NVIDIA CUDA C Programming Guide Version 4.2.”
[18] CUDA -维基百科,自由的百科全书, http://zh.wikipedia.org/wiki/CUDA, 2014
[19] Rob Farber, “CUDA APPLICATION DESIGN AND DEVELOPMENT, ”Elsevier Inc., 2011
[20] Borda Count – http://en.wikipedia.org/wiki/Borda_count
[21] Jia-Lien Hsu, Chih-Chin Liu, and Arbee L. P. Chen, “Efficient Repeating Pattern Finding in Music Databases,” International Conference on Information and Knowledge Management (ACM CIKM),ACM ,pp. 281-288, November 03. 1998.