GPU-Accelerated Beat Detection for Dancing Monkeys Philip Peng, Yanjie Feng UPenn CIS 565 Spring 2012 Final Project – Final Presentation img src:

Slides:



Advertisements
Similar presentations
©2012 CBS Interactive Inc. All rights reserved. Enhance Existing Product SKUs with Rich Content.
Advertisements

El Nino, La Nina: The return of the hot and cold!!! Mikaela Cline Science Mr. Shepard.
Friends Path to Fame Thomas Jefferson Thomas Jefferson
Hey Art You So Fine, You So Fine You Blow My Mind! A look at the fine arts.
UV (Ultraviolet) Rays By Rachel Bass, Ian Lund, and Jackson Wells.
Argentina. Argentina Largest Spanish speaking country in the world.
©2012 CBS Interactive Inc. All rights reserved. Proactively Create New Product SKUs.
Civic virtues By: TJ Beaumier. Frugality Frugality is the practice of acquiring goods and services in a restrained manner. I chose frugality because most.
Insertion Sort David Borden CS 32. How Insertion Sort Works Author: Swfung8 Somewhat.
Telephone Call Interception System Kevin Colkitt Personal and Public Communications.
Introducing…. What is it? How does it work? Where did it come from? Where is it going? Introducing…
Real-time Monitoring and Diagnostic Solution for an HVAC System ECE Team 169 Anthony Bellantoni (EE) Greg Carmichael (EngrPhys) Joe Grassi (EE) Sponsored.
Did you know? Lack of access to safe drinking-water and adequate sanitation costs countries between 1% and 7% of their annual gross domestic product (GDP)
By Marissa Verallis. What Affect Does Technology Have on the Fashion Industry? Technology enhances the Fashion Industry through communication and visual.
GPU-ACCELERATED VIDEO ENCODING/DECODING CIS 565 Spring 2012 Philip Peng, 2012/03/19.
An Analysis on the Development of Wushu International Review for the Sociology of Sport, Sept 1997 By Marc Theeboom and Paul De Knop Joseph DiLuzio.
Social Media – love it or hate it, we need it LAI/CILIP Ireland Conference 2012 Phil Bradley.
By Zheng Sun, Aveek Purohit, Shijia Pan, Frank Mokaya, Raja Bose, and Pei Zhang final38.pdf.
AP Calculus Free Response Question
South Beach Diet Charleigh Barnes Gabby Wilson. How it Works: Phase One Phase one helps eliminate cravings for sugar and refined starches. The purpose.
Happy Man 24th May,2012. What is happiness What is happiness?Such simple yet complicated word no exact words can match it. Is it the feeling of warmth.
Day of German Unification
RTI International RTI International is a trade name of Research Triangle Institute. New Dimensions of Mobile Data Quality Michael Keating,
Gold Touqa El Husseiny 7D
Rohit Kugaonkar CMSC 601 Spring 2011 May 9 th 2011
Rhythm PT 2. Common Notation The way in which music is transcribed is known as common notation. –Common notation divides music into segments known as.
H.1 Hormonal Control H.1.1, H.1.2, H.1.3, H.1.4 Nicole Chin.
Prof. David J. Bryde Claus Nesensohn Teaching with an innovative hands-on simulation in the built environment Teaching with an innovative hands-on simulation.
Rihan na By Carla Papanastasiou. Contents Slide 1: about Rihanna Slide 2: Rihanna’s music albums Slide 3: photos of Rihanna Slide 4: Rihanna’s top 50.
Symbols- what do they mean? Signs, signs, everywhere there’s signs…
Greetings & Welcome Kernersville Middle School 6 th Grade Science, Teacher: Mrs. Edna Thompson, ESSENTIAL QUESTION (E.Q. – Classwork) Can you create.
By: Barbara Pretty Patterns Striped patterns are any pattern made with similar stripes. Striped Patterns
By: Hannah Angela G. Dy Guaso Kristen Zakaya C. Zarate Life of Stars.
Ryan hitch.  Location  Topography  Climate  species.
SLEEP AND DREAMS Made by Raminta Mockutė PSbns1-03.
The Hunger Games By: Margaret Toll Book Written By: Suzanne Collins 2http:// 0cover.jpg.
Mobile Apps Workshop. Overview 1. The App Marketplace 2. What Makes a great App, design tips 3. Build and Deploy - Development Costs / Timescales.
Is there an APP for that? Being a resource for teachers at your school By Joy Castle and Paula Clemmons.
GPU-Accelerated Beat Detection for Dancing Monkeys Philip Peng, Yanjie Feng UPenn CIS 565 Spring 2012 Final Project – Midpoint Presentation img src:
German Culture Project Q4 German Economy German Banks: Role of Banks in German Economy Dirk Hamel-Wood.
German Culture Project Q4 German Economy German Banks: Role of Banks in German Economy Dirk Hamel-Wood.
Volkan
PHYS16 – Lecture 29 Ch. 13 Gravitation.
The Great Gatsby Leah Moutogiannis Period 3 April 11, 2010.
Visita:
Chapter 4: Central Tendency How do we quantify the ‘middle’ of a distribution of numbers? Three ways: The mode, median and the mean Mode (Mo): The score.
Bonjour !! Lætitia. 14 pr.caltech.edu/.../Volume%203/ /track.jpg.
Motion & Derivatives David Darr Alex Grady Andrew Helmlinger.
The Peanut Man. Dr. Charles Peanut Loyal Trustworthy Honest Stern Brave Intelligent Handsome Positive Encouraging Loving Inspirational Fun Selfless Dependable.
Simran Dhillon Computers 8.  Major source of energy  Two major types ◦ simple and complex  Simple: ◦ sugars, white flour, veggies, fruits, etc…  Complex:
Term 3 Writing Assessment Years 1-6
Family Anglický jazyk 2. ročník.
© 2014 Aerospike. All rights reserved. Confidential 1 The Impatience Economy.
Project Progress Report Members:Philip H. Peng Advisor: Dr. Stephen H. Lane CIS 401, Fall 2011, University of Pennsylvania Designing Rhythm Games for Touchscreen.
Including images with the img tag Skills: using the img tag IT concepts: none This work is licensed under a Creative Commons Attribution-Noncommercial-
Sample for “Promiscuous”
APS105 Sorting. Sorting is a commonly needed function –itunes can sort your song library different ways –excel spreadsheet can sort a column of numbers.
1-1-8 Silver Burdett Making Music
GPU-Accelerated Beat Detection for Dancing Monkeys Philip Peng, Yanjie Feng UPenn CIS 565 Spring 2012 Final Project – Final Presentation img src:
Spring Song Of Eden Come, O ye friends, to the Garden of Eden, Where the spring blossoms are best; Joyfully singing together our song, Friends in our Eden.
Dance Dance Revolution: (DDR). DDR: DDR has brought video games into dance culture. That's the revolutionary part of Dance Dance Revolution.
IPod Dancing Francis Beaumier Dr. Pankratz Senior Capstone Experience in Computer Science 30 April 2009.
亚洲的位置和范围 吉林省白城市洮北区教师进修学校 郑春艳. Q 宠宝贝神奇之旅 —— 亚洲 Q 宠快递 你在网上拍的一套物理实验器材到了。 Q 宠宝贝打电话给你: 你好,我是快递员,有你的邮件,你的收货地址上面 写的是学校地址,现在学校放假了,能把你家的具体 位置告诉我吗? 请向快递员描述自己家的详细位置!
Creating Interactive Polls With Photos July 2009.
Dance Studies Boys’ and Girls’ P.E. Classes Payson Middle School Mrs. Harmer.
Test slide upload.
office product key|
30-8 Half-Life and Rate of Decay
GPU Accelerated Image Super-Resolution
Presentation transcript:

GPU-Accelerated Beat Detection for Dancing Monkeys Philip Peng, Yanjie Feng UPenn CIS 565 Spring 2012 Final Project – Final Presentation img src:

 Dancing Monkeys ◦ Create DDR step patterns from arbitrary songs ◦ Highly precise beat detection algorithm (accurate within < BPM) ◦ Nov 1, 2003 by Karl O’Keeffe ◦ MATLAB program, CC license ◦  GPU Acceleration ◦ Algorithm used = brute force BPM comparisons ◦ GPUs are good with parallel number crunching

 MATLAB’s Parallel Computing Toolbox  Replace for loops with MATLAB’s parfor ◦ Run loop in parallel, one per CPU core ◦ p/parfor.html p/parfor.html  Require code modification ◦ matlabpool ◦ Temporary arrays ◦ Index recalculations

 Much faster!

 Part of Parallel Computing Toolbox  MATLAB’s gpuArray() and gather() function  Parallel GPU kernel by using arrayfun()

 arrayfun() only allows for per-element manipulation of arrays  Algorithm operates on shared data  MATLAB’s Parallel Computing Toolbox does NOT support global variables img src:

 MATLAB plug-in developed by Accelereyes  Far greater function support for GPUs  Allows for shared data on GPU!!!  Minimal code modification ◦ Replace for loops with Jacket’s gfor ◦ Cast data to copy to GPU shared memory  $350 Licensing fee (but free 15-day trial)

 Worse!

 Operations in Dancing Monkey’s code: ◦ Array initialization  ones(size, 1), zeros(size, 1)  One-time only ◦ Element access/assignment  data = A(x), A(x) = data  LOTS of access, some assignments ◦ Element arithmetic operations  +, -, *, /  Lots of operations but with element of different indices ◦ Array operations  mod, max, sort  A few at beginning and at end

 Element operations generally good but access break-even point very high…

 Array operations generally good

 Data size too small to recognize benefits ◦ Fixed 1682 loops (given 44100Hz and checking from BPM[89,205]) much smaller than break even points  Algorithm uses a LOT of array accesses ◦ Benefits gained from arithmetic operations and mod/sort operations lost against Jacket’s overhead

 Rewrite code to reduce branching/conditionals

 Immense speedup…

 Algorithm operates on too small a data array and has a high % of access calls ◦ Not good for GPU parallelization as originally though  Jacket offers significant speedups but not realized in this project  Original code poorly optimized ◦ Rewritten version extremely fast, no space for GPU optimization

 Blog:  Code: img src: content/uploads/2010/04/6a00d83451f25369e200e54f94996e wi.jpg