210 likes | 403 Views
Instruction-Level Power Modeling for the Blackfin DSP. Steve VanderSanden NUCAR Meeting 5 December 2003. Until Next Time…Today. Become an expert on the compiler provided for the Blackfin Discover what is currently possible with the Blackfin concerning power
E N D
Instruction-Level Power Modeling for the Blackfin DSP Steve VanderSanden NUCAR Meeting 5 December 2003
Until Next Time…Today • Become an expert on the compiler provided for the Blackfin • Discover what is currently possible with the Blackfin concerning power • Investigate current power analysis tools • Determine the best way to measure the power on the Blackfin hardware Instruction-Level Power Modeling for the Blackfin DSP
Today’s Talk • Instruction Level Power Modeling • Tiwari, Malik, Wolfe papers • JouleTrack • Non-Instruction level power modeling • Our Approach • Automatic loop generator • Take measurements on modified board • Compile power tables and build power estimator • What the future holds Instruction-Level Power Modeling for the Blackfin DSP
Today’s Talk • Instruction Level Power Modeling • Tiwari, Malik, Wolfe papers • JouleTrack • Non-Instruction level power modeling • Our Approach • Automatic loop generator • Take measurements on modified board • Compile power tables and build power estimator • What the future holds Instruction-Level Power Modeling for the Blackfin DSP
Tiwari, Malik, Wolfe papers • “Power Analysis of Embedded Software: A First Step Towards Software Power Minimization” • “Power Analysis & Minimization Techniques for Embedded DSP Software” • Our current approach is based off this work Instruction-Level Power Modeling for the Blackfin DSP
Tiwari, Malik, Wolfe papers Total Energy = Base Energy Cost + Inter-Instruction Effects • Total Energy – total energy consumed by a given program • Base Energy Cost – a fixed energy cost of each instruction • Inter-Instruction Effects – energy contributions that are not considered in the base energy cost Instruction-Level Power Modeling for the Blackfin DSP
Estimate Base Energy Cost • Construct loops with several copies of the same instruction • Measure the average current being drawn while this loop is executing • The base energy cost is proportional to this current multiplied by the number of cycles taken by each instance of the instruction Instruction-Level Power Modeling for the Blackfin DSP
Estimate Inter-Instruction Effects • Effect of circuit state • Added cost when executing two different instructions in succession • Calculated to be about 15 mA • Effect of resource constraints • Pipeline stalls, write buffer stalls, etc. • Cause an increase in the number of cycles required to execute an instruction • Effect of cache misses • Again, adds cycle to the execution of an instruction • Possibly adds to the base costs of instructions that contain memory operands
Total Cost Estimation and Results • Estimate Total Energy • Sum the base energy costs for each instruction in the program • Add the inter-instruction effects • Results • 3% error between estimated and measured cost when there were no stalls • 26% to 73% energy reduction using their energy minimization strategies
JouleTrack • Web-based software energy profiling tool • Currently provides profiling for StrongARM SA-1100 • User simply uploads their C code and selects the appropriate options • Tool outputs a cycle accurate report of the program execution along with energy statistics Instruction-Level Power Modeling for the Blackfin DSP
Non-Instruction Level Power Modeling • Architectural Power Modeling • Function-Level Power Modeling • Statistical Power Modeling • Spectral Power Analysis • List of references available for more specifics Instruction-Level Power Modeling for the Blackfin DSP
Today’s Talk • Instruction Level Power Modeling • Tiwari, Malik, Wolfe papers • JouleTrack • Non-Instruction level power modeling • Our Approach • Automatic loop generator • Take measurements on modified board • Compile power tables and build power estimator • What the future holds Instruction-Level Power Modeling for the Blackfin DSP
Automatic Loop Generator • Used to create the loops for computing the base energy costs • Automatically generates an infinite loop of 200 copies of a specified instruction • Menu based program that allows the user to choose different operands and options for a given instruction Instruction-Level Power Modeling for the Blackfin DSP
Measurements on Modified Board • Received a board from ADI with special connections to allow me to take current measurements • Plan to measure the core current in addition to the system current • Use a standard “off-the-shelf” ammeter to measure the current Instruction-Level Power Modeling for the Blackfin DSP
Power Tables and Estimator • Tables will include • Constants (Vcc, operating frequency) • Number of required cycles • Measured current • Using an Excel spreadsheet to compute the power and energy • The estimator will use these lookup tables to approximate a program’s energy usage Instruction-Level Power Modeling for the Blackfin DSP
Today’s Talk • Instruction Level Power Modeling • Tiwari, Malik, Wolfe papers • JouleTrack • Non-Instruction level power modeling • Our Approach • Automatic loop generator • Take measurements on modified board • Compile power tables and build power estimator • What the future holds Instruction-Level Power Modeling for the Blackfin DSP
What does the future hold? • Take the current measurements to build the power tables • Analyze the results to find patterns within the current readings • Build the power estimator • Delve back into the compiler Instruction-Level Power Modeling for the Blackfin DSP
References • V. Tiwari, S. Malik, A. Wolfe. “Power Analysis of Embedded Software: A First Step Toward Software Power Minimization,” IEEE Trans. VLSI Systems, vol. 2, no. 4, Dec. 1994, pp 437-445. • M. Lee, V. Tiwari, S. Malik, M. Fujita. “Power Analysis and Minimization Techniques for Embedded DSP Software,” IEEE Trans. on VLSI Systems, vol. 5, no. 1, Mar. 1997, pp 123-135. • A. Sinha, A. Chandrakasan. “JouleTrack – A Web Based Tool for Software Energy Profiling,” DAC 2001, Las Vegas, NV. • N. Julien, J. Laurent, E. Senn, E. Martin. “Power Consumption Modeling and Characterization of the TI C6201,” IEEE Micro Magazine, Sept/Oct 2003, pp 40-49. • L. Eeckhout, S. Nussbaum, J. Smith, K. De Bosschere. “Statistical Simulation: Adding Efficiency to the Computer Designer’s Toolbox,” IEEE Micro Magazine, Sept/Oct 2003, pp 26-38. Instruction-Level Power Modeling for the Blackfin DSP