What you should know

Keyboard Shortcuts

You should have basic knowledge of software development and adept at Windows OS. All of the tools discussed are available on Windows 7+ but the newest features are on Windows 10. It helps to know concepts such as memory management, CPU usage, single vs. multi-threaded application but it is not neccessary as we cover why these metrics are important to your application's overall power consumption.

- [Voiceover] For this course, you should be familiarwith your own application source code.I'm going to dive into the source codefor two video game applications.So in order to reproduce what you see herefor your own application, you’ll want to be asfamiliar with your source code as possible.Also three out of the four tools we discusseddeal with the Windows command prompt.So you’ll want to know how torun the command prompt as admin.And it really helps if you have usedcommand line tools with command line options before.Since we will be focusing on two videogame applications, you’ll want to know somesimple gaming concepts, such as framerendering/updating a scene, VSync, and FPS,the frames per second.

The last important concepts you should knoware the C- and P-States of a CPU.Now, C-States are CPU sleep states, meaningwhen the CPUs not being used, it will gointo a lower powered state where featuresare turned off, such as turning down thecore clock and flushing caches.The higher the numbered C-State, the morefeatures are turned off and the CPU is consuming less power.C0 is the active state, where the CPU is workingand when you get to C6 and higher,the CPU clock is essentially off.

P-States, on the other hand, are CPU frequency states.P0 is when the CPU is active and working atits highest frequency, meaning it's really working.The higher the number of the P-State though,the lower the processor frequency becomes.For example, say P0 is the processor workingat 2,600 Megahertz, but at P8 the processorfrequency is only 1,000 Megahertz.In short, the higher the C- and P-States are,the less power the CPU is consuming.

I'm going to touch on several topics in thiscourse that have a much larger scopethan what will be discussed.While it's not necessary to complete this course,I recommend that you Google some of these termsto gain a better understanding of the topicsand how they fit together.I’ve already discussed CPU C- and P-States ata very high-level, but a whole course could bededicated to these two concepts.Doing some additional research on what C- and P-Statesare will give you a better understandingof the broader topics.The other terms to Google are context switches,interrupts, and a Windows operating systemtimer tick resolution rate.

I discussed the Windows OS timer tick rate in chapter two.But Googling these terms ahead of time will reallyhelp give you a jump start on the courseand make the learning curve easier.Now for the system requirements.You will need a Windows operating system sevenor higher preferably Windows 10, since the latestfeatures of these tools are only available on Windows 10.You will also need to have a machinewith an Intel core processor.This is because two out of the four toolswill simply not work if you do nothave an Intel core processor.

Lastly, you’ll need an Internet connectionso you can grab Visual Studio 2015 Community Edition.This is the IDE we used to dive intothe source code and make changesto the two video game applications.Also because one of those video game applicationsis an XNA- based application, you’ll needto grab the XNA Game Studio Refresh for Visual Studio 2015.You will also need a program that can run .CSV,comma separated values files, likeMicrosoft Excel or LibreOffice.

And of course when we go over the tool installations,you will want to grab those as well.

Resume Transcript Auto-Scroll

Author

Released

6/1/2016

With the widespread adoption of mobile devices and laptops, managing your application's power consumption is more important than ever. Battery-hogging applications produce poor user experiences and get bad ratings. Luckily, there are Windows power tools to help you track the energy consumption of the applications you develop.

With these diagnostic tools and some efficient programming, you can reduce your app's power consumption while improving its response times. In this course, Thomas Pantels introduces a handful of tools used to measure and optimize power consumption. You will see demos on how to use the Intel Power Gadget, Windows Performance Toolkit, TypePerf, and SoC Watch, along with some simple coding tips for making any Windows app more energy efficient.