Feedback

Intel Speed Shift Tested - Significant User Experience Improvements

Author:
Subject: Processors, Mobile
Manufacturer: Intel

Skylake Architecture Comes Through

When Intel finally revealed the details surrounding it's latest Skylake architecture design back in August at IDF, we learned for the first time about a new technology called Intel Speed Shift. A feature that moves some of the control of CPU clock speed and ramp up away from the operating system and into hardware gives more control to the processor itself, making it less dependent on Windows (and presumably in the future, other operating systems). This allows the clock speed of a Skylake processor to get higher, faster, allowing for better user responsiveness.

View Full Size

It's pretty clear that Intel is targeting this feature addition for tablets and 2-in-1s where the finger/pen to screen interaction is highly reliant on immediate performance to enable improved user experiences. It has long been known that one of the biggest performance deltas between iOS from Apple and Android from Google centers on the ability for the machine to FEEL faster when doing direct interaction, regardless of how fast the background rendering of an application or web browser actually is. Intel has been on a quest to fix this problem for Android for some time, where it has the ability to influence software development, and now they are bringing that emphasis to Windows 10.

With the most recent Windows 10 update, to build v10586, Intel Speed Shift has finally been enabled for Skylake users. And since you cannot disable the feature once it's installed, this is the one and only time we'll be able to measure performance in our test systems. So let's see if Intel's claims of improved user experiences stand up to our scrutiny.

Continue reading our performance evaluation of Intel Speed Shift on the Skylake Architecture!!

What is Speed Shift?

I wrote about the technical details on Speed Shift back in August, but for those of you that might have missed it, here is a summary:

Easily the most interesting new feature in terms of power is called Intel Speed Shift Technology. This feature actually moves much of the control of P-states (performance states) from the operating system to the architecture itself. P-states are what tells the CPU to move between frequencies in order to balance performance and power consumption. In previous designs, Windows and other operating systems would perform the actual state changes. With Speed Shift, Intel is able to directly change the P-states on the processor and this results in a 30x improvement in the speed of that transition.

View Full Size

Image Credit: AnandTech

Why is this useful? First, the speed improvement in that transition should result in added “snappiness” in areas where the frequency needs to increase quickly as a result of user interaction or application need, lowering the apparent latency of some actions. Also, this gives the Skylake processors the ability to manage things like low residency workloads better. Take video recording as a good example of this type workload. Traditionally, a CPU would increase frequency to get through a set of work as quickly as possible to get to idle as fast as possible. For applications that run consistent and repeated, but non-demanding, workloads it might be more efficient to keep the CPU at a slightly higher frequency the entire time rather than spiking up and down repeatedly. Intel Speed Shift gives Skylake that capability.

There are some caveats of course – this only works with Windows 10 today as it requires some unique communication between the processor and OS. For older operating systems like Windows 8 or even other OS paths like Linux, Speed Shift won’t work out of the box. Intel says they have started engaging with the open source community to integrate support for it, which is great, but until then you’ll essentially be reverting to legacy P-state controls on Skylake hardware. Also, Intel's engineers told us that Speed Shift works within a "window" of OS-based performance states so it seems that Skylake does not have complete autonomy when it comes to selecting core frequencies.

View Full Size

Our Testing Methodology

Testing a feature like this is pretty complicated, and requires some new methods. In total we have three different measurements to show to you: one custom application built by Intel that creates a workload spike, a pair of standard benchmarks (SunSpider and WebXPRT) and then a high speed camera capture of us touch scrolling on Chrome and Edge web browsers. You really do need all three to see how the technology works and how it affects the total performance of Skylake-powered notebooks and tablets.

Custom Application Results

The custom application was built by Intel and used internally to evaluate the gains seen with Speed Shift technology. The work load is incredibly simple - the code puts a value in a register, then shifts it, and loops this way for a set number of instances. The code includes the "__asm" declaration to prevent compiler optimizations, thus making sure all the work is actually run as intended rather than being simplified out. Essentially this is an artificial way to keep the front end of the CPU busy and emulates a spike in action that you might see from a touch screen interaction.

The program then calculates the clock speed of the processor by using knowledge of how fast that work gets done - Intel knows how fast it should get done at a certain clock speed and thus it can determine what clock the CPU is running at in that instant by measuring the process time. So, to be clear, the clock speed measurements we are showing you below are being calculated, not reported by the CPU, etc. Still, the idea is to show us how a system with and without Speed Shift behaves when the same workload is being applied.

Let's see the results.

View Full Size

This is a full run of the application on a Microsoft Surface Pro 4 with a Core i5 processor. We ran the benchmark on the system before the most recent Windows 10 update (10420) and then after installing it (10586) to see how much difference we would get in clock speed scaling. The results are obvious at first glance - clearly the blue line that represents the system with Speed Shift enabled spikes to its peak of 3.0 GHz much more quickly than the green line from the previous version of Windows. 

Keep in mind that the total run time of the benchmark doesn't really matter here - we are just looking to see how quickly the CPUs can spike up to their peak clock speed.

View Full Size

Let's zoom in a little bit on the early part of that result. You can see that with Speed Shift on v10586 of Windows 10, the blue line starts at around 800 MHz and within 6ms is able to hit its peak of 3.0 GHz. In contrast, the green line of v10420 of Windows 10, without Speed Shift, takes over 60ms to reach the same clock speed, hitting and staying at an intermediate speed of ~2.1 GHz at just past 30ms. 

These are small time scales to be sure, but when you need immediate CPU performance for a scrolling browser window, for example, the gap between 6ms and 60ms for the animation to begin is going to be very noticeable. 

View Full Size

Here's another example, using a Lenovo Yoga 900 Skylake machine with a Core i7 processor. In this instance, the Speed Shift enabled OS is able to jump from ~500 MHz to 2.8 GHz is about 4ms and then hits 3.1 GHz by 12ms. In contrast, the non-Speed Shift enabled version of Windows 10 jumps to ~1200 MHz at the 32ms mark and is able to get to 3.1 GHz at about the 47ms mark. 

It's abundantly clear from this data that Speed Shift can do exactly what Intel said it would - decrease the amount of time it takes for CPU clock speeds to scale when performance is needed most. But how does that affect modern benchmarks?

Benchmark Results

To find out, I ran both the Surface Pro 4 and the Lenovo Yoga 900 through two standard Web-based tests: SunSpider and WebXPRT. Both are used by reviewers and hardware vendors to measure certain aspects of platform performance. 

View Full Size

View Full Size

In SunSpider, in both Chrome and Edge browsers, we see from 5-8% improvements in total scores. 

View Full Size

View Full Size

WebXPRT is a benchmark that runs through some common tasks like photo enhancement, stock pricing and sales graphs in order to measure platform performance in browsers. In both the Lenovo Yoga 900 and the Surface Pro 4 we see significant improvements in performance with the Speed Shift enabled version of Windows 10. Ranging from 22% up to 34%, these results indicate that the real-world benefits of Speed Shift apply to multiple workloads. 

Real-World Results

All of the graphs and data above are important, but easily the most conclusive evidence that I was able to find that Intel Speed Shift can improve the user experience came about by using a high speed camera to record interactions with these machines. By using a 240 FPS camera, a mirror and common web sites we can measure the time it takes for a system to respond to touch motion.

For those of you interested in the exact methodology here:

  • Place mirror at ~90 degree angle to the touch screen being tested - this allows you to see both the motion of animation and the exact moment contact is made with the screen or the exact moment movement begins.
     
  • Setup the 240 FPS camera (iPhone 6s in this case) to point at the screen/mirror 
     
  • Record several motions that are easily repeatable (in our case, simple swipes up)
     
  • Run 4 times for each test, closing browser each time, averaging results
     
  • Calculate latency of response by counting frames between finger motion and first movement on display. Each frame of the video takes 4.16ms. 30 frames x 4.16ms = 124.8ms total latency +/- 4.16ms. (Also note that v-sync delay takes part here but with multiple runs and averaging results we can more-or-less remove its variance.)

I tested scrolling on our own pcper.com in both Google Chrome and Microsoft Edge, then added in a scroll test of Google Maps in Chrome for good measure.

View Full Size

The results are better than I could have expected. In the Edge browser we saw our average latency from finger motion to actual pixel movement decrease from 158.1ms to 91.5ms, a 72% improvement! And in Chrome, with the same content, that time dropped from 170.5ms to 120.6ms, a 41% speedup. 

The Google Maps test, by far the most strenuous workload (we had it loaded with satellite data) saw a ~20% speed up in Google Chrome. 

When I set out with this testing I didn't know what to expect and I didn't really think I would be able to tell the difference just using the Surface devices. At one point in my testing I had the Surface Pro 4 updated to v10586 of Windows 10 while the Surface Book was still on v10420. I set them up side by side and loaded up pcper.com and the response difference was immediately evident. That 158ms to 91ms change is not an exaggeration of data.

Closing Thoughts

Without a doubt, Intel Speed Shift technology has improved the ability for the Intel + Windows platform to respond to user interaction dramatically. Though it will be most easily discernable with touch screen configurations, the same technology will apply to mouse based control. Intel has been oddly quiet about the inclusion of this feature with the new Windows 10 v10586 update and I can't quite understand why - the only reason might be questions about proper platform support for Speed Shift in the EFI of currently shipping systems. I did confirm with Intel that both of the MS Surface devices and the Yoga 900 had it properly enabled but I haven't found a way to detect the capability in other machines as of this writing. 

For desktop users I am still trying to figure out how the benefits of Speed Shift might apply - clearly the advantages for standard Windows 10 usage would still be there. But whether or not the motherboards and platforms are enabled for it is up in the air; I'm working on getting feedback both from Intel as well as the motherboard vendors currently. UPDATE: It looks like nearly all currently shipping motherboards already have support for Speed Shift enabled as well. All it takes is the upgrade to the latest Windows 10 v10586 to enable!

As it stands now, this is just another reason to see Skylake notebooks and tablets as improved over previous generations. If you were waiting for a reason to go ahead and let Windows 10 upgrade to last week's major release, I think you have your answer.


November 16, 2015 | 03:28 PM - Posted by erica647

What about battery life or power consumption... any changes there?

November 16, 2015 | 08:23 PM - Posted by Anonymous (not verified)

Anandtech saw no difference in battery life:

http://images.anandtech.com/graphs/graph9751/78225.png

November 16, 2015 | 03:32 PM - Posted by Costa Apostolou (not verified)

Cool, I can't wait for my Surface Pro 4 i7/16GB/256GB to show up Friday. Seems to be a bit g I,pro meant, especially for touch.

November 16, 2015 | 03:35 PM - Posted by Costa Apostolou (not verified)

Wow my auto correct on my iPad 3 is completely broken, what I meant to say it looks to be a big improvement for touch.. Anyways how about the pen? Anyways wouldn't this speed up pen writing speed also?

November 18, 2015 | 01:37 PM - Posted by Anonymous (not verified)

We get IT!You're rich.

November 16, 2015 | 03:46 PM - Posted by madhav90

But for someone running at 4.7Ghz, i don't think there will be any difference. Not even a minor one, or maybe I'm wrong. Can someone tell me how this feature is going to help desktop users. I think I'm missing something.

November 16, 2015 | 05:03 PM - Posted by VeritronX (not verified)

This will benefit anyone who doesn't run their cpu at full speed all the time, it's reducing the delay in going from idle clocks to full clocks whenever you want the computer to do anything.

If you are overclocked but still letting the cpu idle at low speed then this will probably be more noticable then for people with normal speed cpu's because the difference between idle and full speed is bigger.

November 16, 2015 | 06:02 PM - Posted by madhav90

In windows the only way i know that reduces the clock speed is by choosing either power saver or balanced power options but thats bad as they reduce the overall system performance not just the CPU's frequency but they also reduce GPU voltages. So its clearly not a viable options for those who use GPUs to use a power mode that lets them take advantage of this. So I'm still confused by what they meant when they said it also benefits desktop users...! Or if there is another way please can someone tell me how to ?

November 16, 2015 | 07:12 PM - Posted by VeritronX (not verified)

What desktop gpu are you using that pays any attention at all to windows power settings? I've never had any gpu that wasn't in a laptop have any effect from changing that. I haven't used an amd gpu since the 5870 so it could be an amd thing I guess.

November 18, 2015 | 10:42 AM - Posted by Spunjji

That's not correct. All modern Intel and AMD CPUs will adjust their clock frequency based on load, and throttle down when nothing is happening. You can disable this by disabling the relevant technology in your BIOS, but there's no good reason to do so unless you are very specifically trying to break benchmarking records with an extreme overclock.

November 18, 2015 | 07:07 PM - Posted by madhav90

No I actually like that but the problem is not their idle speeds but its their load clock speeds I'm talking about when using power saving on windows.

November 16, 2015 | 03:51 PM - Posted by Anonymous (not verified)

It's good they are moving this into the CPU and Firmware to make it less OS platform dependent. So this feature can be used without the need for as much OS vendor specific support, as it is cross platform and in the CPU/SOC Hardware/driver/firmware from now on. Intel should have this support cross platform quicker also.

Hopefully AMD will do the same with their CPU/APU cores, we can already see the advantages of having full Hardware Asynchronous Compute in AMD's GPU core ACE units for faster response and better GPU hardware compute resource utilization.

November 16, 2015 | 04:11 PM - Posted by Anonymous (not verified)

Is this any improvement over haswell or just a fix related to how low skylake clock can go?

November 17, 2015 | 08:56 AM - Posted by Ryan Shrout

Haswell doesn't have Speed Shift technology integrated so there are not likely to be differences in the 10420 -> 10586 upgrade.

November 16, 2015 | 07:27 PM - Posted by Dan dubya (not verified)

Trying to update the yoga 900 16gb to 1511 10586.... Not working. Keeps re-downloading and preparing to install... :/

November 17, 2015 | 08:55 AM - Posted by Ryan Shrout

It took me a couple of attempts as well. It should work!!

November 16, 2015 | 10:45 PM - Posted by Anonymous (not verified)

I was under the impression that a lot of the features in question would be accelerated by the GPU on desktop systems. Does the integrated GPU also have speed shift type technology? Does the GPU clock make that much of a difference in mobile systems, or is scrolling and such handled completely by the CPU?

November 17, 2015 | 08:55 AM - Posted by Ryan Shrout

The discrete GPU has nothing to do with this technology, no.

November 17, 2015 | 04:30 PM - Posted by drbaltazar (not verified)

Awsome. Movie and game must be silk Smooth with this

November 17, 2015 | 04:56 PM - Posted by Brian Hoyt (not verified)

Do a search and replace on 10420 for 10240, transposed the build number.

November 18, 2015 | 09:51 AM - Posted by Kyle (not verified)

I wonder if Speedshift affects minimum game frame rates.

November 18, 2015 | 10:43 AM - Posted by Spunjji

Not likely, most games will cause your CPU to ramp up to full speed anyway.

November 19, 2015 | 10:15 PM - Posted by Madpacket (not verified)

So can you measure this against an actual iPad and modern Android tablet? I'm wondering if this is something ARM SoC's have had for a while and this is just Wintel catching up?

November 20, 2015 | 09:30 AM - Posted by Anonymous (not verified)

Will this make desktop cpu fan more sensitive?

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Lines and paragraphs break automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote><p><br>
  • Web page addresses and e-mail addresses turn into links automatically.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.