LightBlog

lundi 1 août 2016

Best unlocked Android phones (August 2016)

Now that an increasing amount of smartphone manufacturers are selling their phones at cheaper price points, it's much easier for consumers to afford an off-contract device rather than purchasing one with a two-year contract. At least in the United States, the way smartphones are priced has changed dramatically, and that's a good thing.

So, what are the best smartphones out there for those who'd like to forgo the standard contract and buy unlocked? We're here to take you through the best unlocked Android smartphones for under $250, under $500 and over $500. As always, if you have anything you'd like to suggest, be sure to speak up in the comment section at the bottom of the post.

Editor's note: We'll be updating this list regularly as new devices launch. It's also worth noting that this article is written for a U.S.-centric point of view, though (since they are unlocked) pretty much all of these devices are available outside of the U.S., at least in some capacity.
Update, August 2016: This month we added the Moto G4 Plus, OnePlus 3 and HTC 10 to our list. We also removed the 2015 Moto G, Nexus 5X and LG V10 from our list.

Best phones under $250

Motorola Moto G4 Plus

Instead of announcing just one Moto G variant this year, Lenovo brought us three different devices – the Moto G4 Plus, Moto G4 and Moto G4 Play.

The highest-end of the bunch is the Moto G4 Plus, and it brings a handful of notable improvements to the Moto G range. It has a big 1080p display, capable processor, expandable storage, and even a fingerprint sensor this time around. While we had a slight problem with the volume/power buttons and the camera in low light, we can honestly say this is one of the best budget offerings in 2016.

Right now you can buy it in the U.S. for $249.99 through Amazon or Motorola.com.

Specs

  • 5.5-inch IPS LCD display with 1920 x 1080 resolution, 401ppi
  • Quad-core Qualcomm Snapdragon 617 processor
  • 2/3/4GB of RAM
  • 16/32/64GB of on-board storage, microSD expansion up to 256GB
  • 16MP rear camera, 5MP front camera
  • Non-removable 3000mAh battery
  • Android 6.0 Marshmallow
  • 153 x 76.6 x 9.8mm, 155g

Read more

Buy now from Motorola

OnePlus X

The OnePlus X is one of the best budget devices you can purchase right now. It's compact, extremely fast, and boasts many of the same software features that come with its older brother, the OnePlus 2. It has an impressive 5.0-inch AMOLED display, a perfectly capable Snapdragon 801 processor, 3 gigabytes of RAM, microSD card expansion up to 128GB and two SIM card slots.

There are a few things to watch out for, though. If you want to activate the device on AT&T or T-Mobile's networks, you may not have great 4G LTE coverage, as the device is missing the appropriate bands. It also comes with no NFC on board, so you won't be able to use mobile payment methods like Android Pay. Oh, and OnePlus has just axed the invite system for the OnePlus X, so you can now buy it from the company whenever you'd like, without waiting in line for an invite!

If you're looking for a budget-friendly smartphone and don't mind spending a few extra bucks, get the OnePlus X. You can purchase it from OnePlus' website for $249.99.

  • Nexus 5x vs OnePlus X
  • Battle of the minis: OnePlus...
  • OnePlus X Review
  • OnePlus X - The First 48 Hou...

Specs

  • 5.0-inch AMOLED display with 1920 x 1080 resolution, 441 ppi
  • 2.3 GHz quad-core Qualcomm Snapdragon 801 processor
  • 3 GB of RAM
  • 16 GB of on-board storage, microSD expansion up to 128 GB
  • 13 MP rear camera, 8 MP front camera
  • Non-removable 2525 mAh battery
  • Android 5.1.1 Lollipop
  • 140 x 69 x 6.9 mm, 138 g

Read more

Buy now from OnePlus

honor 5X

Huawei has finally announced its plans to break into the US market with the honor 5X. The honor 5X was announced a number of months ago, but it was just recently revealed that the dual-SIM budget handset would be coming to the United States for only $200.

Featuring an all-metal build and a rear-mounted fingerprint sensor, the 5X absolutely comes to market with a few features that we don't normally see on sub-$200 smartphones. It comes with a big 5.5-inch Full HD display, Snapdragon 616 processor, 16 GB of storage and microSD expansion up to 128 GB. It also comes with a 13 MP rear camera, a pretty sizable 3000 mAh battery, and runs Huawei's EMUI atop Android 5.1 Lollipop out of the box. Huawei says the device will receive its update to Android 6.0 Marshmallow sometime soon, as well.

You can pre-order the honor 5X from Amazon in Dark Grey, Daybreak Silver or Sunset Gold color options for only $199.99.

Specs

  • 5.5-inch IPS LCD display with 1920 x 1080 resolution, 401 ppi
  • 1.5 GHz octa-core Qualcomm Snapdragon 616 processor
  • 2 GB of RAM
  • 16 GB of on-board storage, microSD expansion up to 128 GB
  • 13 MP rear camera, 5 MP front camera
  • Non-removable 3000 mAh battery
  • Android 5.1 Lollipop
  • 151.3 x 76.3 x 8.2 mm, 158 g

Read more

Buy now from Amazon

Best phones under $500

Nexus 6P

As the successor to last year's Motorola Nexus 6, Google recently unveiled the Huawei-made Nexus 6P. This device is the higher-end of the two Nexus phones announced at Google's event, and that's incredibly apparent when looking at the spec sheet.

It comes with a big 5.7-inch Quad HD AMOLED display, super fast Snapdragon 810 processor, a giant 3450 mAh battery and an impressive 12MP rear-facing camera. Want to get your hands on one? The Nexus 6P is pretty cheap, considering the specs and build quality. You can purchase it from the Google Store starting at just $499!

We've just published our full review of this handset, and come to the conclusion that it's up there with the best of the best.

  • Nexus 6P Second Opinion
  • Nexus 6P vs Samsung Galaxy N...
  • Nexus 6P vs iPhone 6S Plus
  • Nexus 6P Review!
  • Nexus 6P vs Nexus 5X

Specs

  • 5.7-inch AMOLED display with 1440 x 2560 resolution, 518 ppi
  • Qualcomm Snapdragon 810 processor
  • 3 GB of RAM
  • 32/64/128 GB of on-board storage, no microSD card slot
  • 12 MP rear-facing camera, 8 MP front-facing camera
  • Non-removable 3450 mAh battery
  • Android 6.0 Marshmallow
  • 159.3 x 77.8 x 7.3 mm, 178 g

Read more

Buy now from the Google Store
Buy now from Amazon

OnePlus 3

OnePlus did a great job at hyping up its 2015 flagship, the OnePlus 2. After missing the mark in a few key areas like camera and software performance, though, it was very clear the company still had a lot of work to do.

Fast forward to 2016 and we now have the OnePlus 3. Not only does it fix many of the issues we had with the 2, it also brings some new software and camera features to the table that are definitely worth checking out.

With the OnePlus 3 you get a thin, all-metal unibody design, a Snapdragon 820 processor, a massive 6GB of RAM and a perfectly capable 16MP rear camera. The battery is a little smaller this time around, but it does come with Dash Charging technology that will be able to get you a 60% charge in just 30 minutes. Oh, it has NFC too!

The best part? You can buy it right now for just $399 without and invite. That's right – OnePlus has finally done away with the dreaded invite system for good.

Specs

  • 5.5-inch Optic AMOLED display with 1920 x 1080 resolution, 401ppi
  • 2.2GHz quad-core Qualcomm Snapdragon 820 processor
  • 6GB of RAM
  • 64GB of on-board storage, no microSD expansion
  • 16MP rear camera, 8MP front camera
  • Non-removable 3,000mAh battery
  • Android 6.0.1 Marshmallow
  • 152.7 x 74.7 x 7.35mm, 158g

Read more

Buy now from OnePlus

Motorola Moto X Style (aka Pure Edition)

With the original Moto X, Motorola proved you don't need to have the latest specs to get a great user experience. With the second generation, the Lenovo-owned company took no chances and double-downed on the spec side as well, packing the new Moto X (2014) with a dense 5.2-inch AMOLED screen, a beefy processor, and a capable 13 MP camera. But with the Moto X Style, Motorola reaches the perfect balance between performance, simplicity, price and… well, style.

By Style we are mostly referring customization capabilities, a factor which has been an integral part of the Moto X experience since day one. Customers can use Moto Maker to manipulate their devices' aesthetics to their will. You can change the color of the metal areas, engrave the back and even choose from a plethora of back options, including materials leather, wood, rubber and other materials.

The device is not a bad contender in terms of hardware, either. The larger screen puts the phone up with contenders like the OnePlus 2, Nexus 6, LG G4 and the Galaxy Note series. It may not sport the "best" processor in the market, but the Snapdragon 808 is pretty close to the 810, and Motorola has proven time and again they can make a super fast phone without the greatest chipset. The best part? This phone's price will start at only $399!

It's worth noting that the phone will be sold in most markets under the Style branding, though in the United States it will be sold as the Moto X Pure Edition, an unlocked model that will play nice with all U.S. carriers.

  • Moto X Pure Edition VS Samsu...
  • Nexus 5X vs Moto X Style (Pu...
  • Moto X Style (Pure Edition) ...
  • Moto X Pure Edition VS iPhon...
  • Moto X Pure Edition vs Nexus...
  • Moto X Pure Edition (Moto X ...

Specs

  • 5.7-inch IPS LCD display with 2560 x 1440 resolution, 520 ppi
  • 1.8 GHz Qualcomm Snapdragon 808 processor
  • 3 GB of RAM
  • 16/32/64 GB of on-board storage, microSD expansion up to 128 GB
  • 21 MP rear camera, 5 MP front camera
  • Non-removable 3000 mAh battery
  • Android 6.0 Marshmallow
  • 153.9 x 76.2 x 11.06 mm, 179 g

Read more

Buy now from Motorola
Buy now from Amazon

Best phones above $500

Samsung Galaxy S7 and S7 Edge

Samsung did a killer job with their 2015 flagship smartphones, the Galaxy S6 and S6 Edge. Design-wise, many would say those two phones were close to perfect. The company forwent a plastic design and instead included glass front and back panels with an aluminum frame. They weren't without their flaws, though. The S6 and S6 Edge didn't offer expandable storage or removable batteries — two features Samsung has been known to include in all its smartphones for years.

Now the Galaxy S7 and S7 Edge have made their way to the masses, and they fix many of the problems the S6 line introduced last year. While they don't offer removable batteries, Samsung included expandable storage on both handsets in case the 32 GB of on-board storage isn't enough. Samsung mostly stuck to the same design this time around, though they did shrink down the camera bumps on the back and made the devices a little thicker to make room for larger batteries.

In terms of specs, these are top-of-the-line smartphones. They come with Quad HD Super AMOLED displays, Qualcomm Snapdragon 820 processors, 4 GB of RAM, great 12 MP rear-facing cameras and run the latest version of Android. Instead of featuring the same screen sizes this time around though, Samsung kept the S7 at a smaller 5.1 inches, while the S7 Edge has been bumped up to a larger 5.5-inch panel.

Seriously, these are some incredible smartphones. They are a little pricey, but all in all, we think the high asking price is worth it.

  • Samsung Galaxy S7 Edge Revie...
  • Samsung Galaxy S7 Review
  • Samsung Galaxy S7 Unboxing &...
  • Samsung Galaxy S7 Edge Unbox...

Specs

Samsung Galaxy S7

  • 5.1-inch Super AMOLED display with 2560 x 1440 resolution, 577 ppi
  • Quad-core Qualcomm Snapdragon 820 processor
  • 4 GB of RAM
  • 32GB of on-board storage, microSD expansion up to 200 GB
  • 12 MP rear camera, 5 MP front camera
  • Non-removable 3000 mAh battery
  • Android 6.0.1 Marshmallow
  • 142.4 x 69.6 x 7.9 mm, 152 g

Samsung Galaxy S7 Edge

  • 5.5-inch Super AMOLED display with 2560 x 1440 resolution, 534 ppi
  • Quad-core Qualcomm Snapdragon 820 processor
  • 4 GB of RAM
  • 32 GB of on-board storage, microSD expansion up to 200 GB
  • 12 MP rear camera, 5 MP front camera
  • Non-removable 3600 mAh battery
  • Android 6.0.1 Marshmallow
  • 150.9 x 72.6 x 7.7 mm, 157 g

Read more

Buy the Galaxy S7 from Amazon
Buy the Galaxy S7 Edge from Amazon

HTC 10

HTC needed a saving grace this year, and the 10 just may be it. The Taiwanese company finally designed a phone that's different enough from its predecessor yet still sports a familiar design language. With an all-metal chassis, front-mounted fingerprint sensor and a new-and-improved speaker setup, the HTC 10 easily made its way to our best Android phones list.

Under the hood, the 10 comes with some killer specs. A 5.2-inch Quad HD display, Snapdragon 820 processor and 4 GB of RAM are in line with most other flagships this year, and it also comes with expandable storage up to 200 GB and a 3000 mAh battery that will have no problems lasting an entire day on a single charge. HTC also improved the camera this time around, which was a big flaw in last year's One M9 flagship.

All in all, the HTC 10 is an awesome device. Great specs and a solid build quality are what you'll get here… what more could you ask for?

  • HTC 10 Camera Feature Focus
  • HTC 10 Accessories Review!
  • HTC 10 Review
  • HTC 10 vs Google Nexus 6P qu...

Specs

  • 5.2-inch Super LCD5 display with 2560 x 1440 resolution, 565 ppi
  • 2.15 GHz Qualcomm Snapdragon 820 processor
  • 4 GB of RAM
  • 32/64 GB of on-board storage, microSD expansion up to 200 GB
  • 12 MP rear camera, 5 MP front camera
  • Non-removable 3000 mAh battery
  • Android 6.0 Marshmallow
  • 145.9 x 71.9 x 9 mm, 161 g

Read more

Buy now from HTC

LG G5

While the Galaxy S7 series is a minor refresh in terms of design, the LG G5 sees a massive departure from the design language used in the G series, ditching the rear volume/power setup that first debuted with the LG G2. The G5 also adopts a unibody metallic design that has a removable cap for access to the removable battery and a port for modules that allow users to expand the phone's capabilities by adding a camera grip and other special accessories.

The distinctly different design of the LG G5 may not be for everyone, but there's little denying that LG has went out of its way to try and innovate in a market where big changes like this aren't all that common.

Spec wise, we're looking at a Qualcomm Snapdragon 820 with 4 GB RAM, a 5.3-inch display, and 32 GB storage with microSD for expansion. The specs here are certainly impressive all across the board. It's also worth mentioning that LG has revamped its software, making it faster and less bloated. One controversial move with the software, however, is the removal of the app drawer in favor of what LG says is a "simplified experience."

  • LG G5 Review!
  • LG G5 vs iPhone 6S
  • LG G5 vs Nexus 6P Quick Look...
  • LG G5 camera module demonstr...
  • LG G5 Vs LG V10 Quick Look
  • LG G5 vs LG G4 Quick Look

Specs

  • 5.3-inch IPS LCD display with 2560 x 1440 resolution, 554 ppi
  • Qualcomm Snapdragon 820 processor
  • 4 GB of RAM
  • 32 GB of on-board storage, microSD expansion up to 200 GB
  • 16 and 8 MP dual rear cameras, 8 MP front camera
  • Removable 2800 mAh battery
  • Android 6.0 Marshmallow
  • 149.4 x 73.9 x 7.7 mm, 159 g

Read more

Buy now from Amazon

Samsung Galaxy Note 5

It's hard denying that Samsung has always been the king of large-screened smartphones, and that still holds true today. With its crystal clear 5.7-inch display, powerful Exynos 7420 CPU and killer 16 MP rear-facing camera, the Galaxy Note 5 is one of the best Android phones available on the market right now.

It's an all-around solid device, boasting an all-glass chassis that's similar to that of the Galaxy S7. It comes with an improved S Pen and some great multitasking features that will make it easy to get work done. The software is much more clean and simple than we've seen from the company in the past, too.

With all of that said, though, this device doesn't come without its caveats. Samsung's decision to omit the microSD card slot and removable battery has been a controversial one over the past few weeks, especially among Samsung die-hards. Even with these notable omissions, the Note 5 can still be considered one of the best out there.

If you're looking for a big smartphone and money is no object, you should definitely consider picking up the Galaxy Note 5.

  • Galaxy Note 5 vs iPhone 6s P...
  • Nexus 6P vs Samsung Galaxy N...
  • TouchWiz tips and tricks for...
  • Samsung Galaxy Note 5 - 5 Ti...
  • Samsung Galaxy Note 5 review

Specs

  • 5.7-inch Super AMOLED display with 1440 x 2560 resolution, 518 ppi
  • Samsung Exynos 7420 processor
  • 4 GB of RAM
  • 32/64 GB of on-board storage, no microSD card expansion
  • 16 MP rear camera, 5 MP front camera
  • Non-removable 3000 mAh battery
  • Android 6.0 Marshmallow
  • 153.2 x 76.1 x 7.6 mm, 171 g

Read more

Buy now from Amazon

There you have it – our picks of the best unlocked Android phones you can buy right now. Missed anything? Tell us in the comments!

Check out our related best lists:



from Android Authority http://ift.tt/1OUq2uV
via IFTTT

Instructions Per Cycle – Gary explains

There was a time when the clock speed of a CPU was the only thing people were talking about. Back at the turn of the century, Intel and AMD locked horns in a race to release the first 1GHz desktop CPU. This was mainly a marketing thing, however it reinforced a false idea about the way a modern CPU core works, that the clock frequency is the most important thing. Well, it isn't. There are many factors that determine the overall performance of a CPU core including the number of instructions it executes per clock cycle. Instructions Per Cycle (IPC) is a key aspect of a CPU's design, but what is it? How does it affect the performance? Let me explain.

Gary also explains:

First a bit of history. Back in the day of 8-bit processors, and probably a bit after as well, all CPU instructions were executed sequentially. When one instruction was completed, the next instruction was executed and so on. The steps needed to execute an instruction can be broadly defined as: fetch, decode, execute, and write-back.

So first the instruction needs to be fetched from memory. Then it needs to be decoded to find out what type of instruction it is. When the CPU knows what it needs to do it goes forward and executes the instruction. The resulting changes to the registers and status flags etc. are then written back, ready for the next instruction to be executed.

instructions per cycyle seq processor-16x9-720p

Some processors of that era would start the fetch of the next instruction while the decode, execute and write-back stages were occurring, but essentially everything was sequential. So this means that it would take 4 clock cycles to execute an instruction, which is 0.25 instructions per clock. To get more performance you need to up the clock speed. That means that for these "simple" designs then the clock speed was the main factor influencing performance.

Henry Ford

model t ford production line

One of the things Henry Ford is famous for is the use of the assembly line for the mass production of cars. Rather than start one car and work on it through to completion, Ford introduced the idea of working on many cars simultaneously and passing the uncompleted car down the line to the next station, until it was completed. The same idea can be applied to executing CPU instructions.

I already mentioned that some 8-bit CPUs would start to fetch the next instruction while the current instruction was being decoded and executed. Now if the processing of instructions can be split into different stages, into a pipeline, then four instructions can be on the assembly line (in the pipeline) simultaneously. Once the pipeline is full there is an instruction in the fetch stage, one in the decode stage, one in the execute stage, and one in the write-back stage.

To execute some instructions the execute stage will need to know the results of the previous execute, which is now in the write-back stage. However since the result from that instruction are available the next instruction is able to use the results immediately, rather than waiting for the write-back to occur.

instructions per cycyle pipelined processor-16x9-720p

The result of the pipeline approach is that now one instruction can be completed per clock cycle, bumping the IPC from 0.25 to 1.

The pipeline idea can be extended further to break down the instruction handling into more than just four stages. These superpipelines have the advantage that complex stages can be broken down into smaller bits. With shorter pipelines the slowest stage dictates the speed of the whole pipeline, making it a bottleneck. Any bottlenecks can be alleviated by turning one complex stage into several simpler, but faster, ones. For example, the ARM Cortex-A72 uses a 15 stage pipeline, while the Cortex-A73 uses an 11 stage pipeline.

Not all instructions are the same

Any CPU instruction set has different classes of instructions. For example reading a value from memory is a different class of instruction than adding two integer numbers, which is in turn different to multiplying two floating point numbers, which is again different to testing if a condition is true, and so on.

Multiplying two floating point numbers is slower than adding two integers, or loading a value into a register. So the next step to improving performance is to split the execution engine into separate units which can run in parallel. This means that while a slow floating point multiply is occurring then a quick integer operation can also be dispatched and completed. Since there are now two instructions in the execute engine this is known as instruction-level parallelism (ILP).

instructions per cycyle superscalar microarchitecture-16x9-720p

When applied across the pipeline it means that these superscalar processors can have multiple decode units as well as multiple execution units. What is interesting is that the parallelism doesn't need to be confined to different classes of instructions, but there can also be two load/store units, or two floating point engines and so on. The more execution units the greater the ILP. The greater the ILP the higher the performance.

The length of the pipeline is sometimes referred to as the processors depth, while its ILP capabilities are known as its width. Deep and wide seems to offer a lot of performance benefits. A wide CPU can complete more than one instruction per cycle. So we started at an IPC of 0.25. That went up to 1 and now it can be anywhere from 2 to 8 depending on the CPU.

All that glitters is not gold

At first glance it would seem that creating the deepest and widest processor possible would yield the highest performance gains. However there are some limitations. Instruction level parallelism is only possible if one instruction doesn't depend on the result of the next. Here is a simplified example:

x = y * 3.14;

z = x + 2;

When compiled into machine code the instructions for the multiplication have to occur first and then the add. While the compiler could make some optimizations, if they are presented to the CPU in the order written by the programmer then the add instructions can't occur until after the multiply. That means that even with multiple execution units the integer unit can't be used until the floating point unit has done its job.

This creates what is called a bubble, a hiccup in the pipeline. This means that the IPC will drop, in fact it is very rare (if not impossible) that a CPU will run at its full theoretical IPC. This means that ILP also has practical limitations, often referred to as the ILP Wall.

cortex-a72-microarch-block-diagram-16x9

There is also another problem with ILP. Computer programs aren't linear. In fact they jump about all over the place. As you tap on the user interface in an app the program needs to jump to one place or another to execute the relevant code. Also things like loops cause the CPU to jump, backwards to repeat the same section of code, again and again, and then to jump out of the loop when it completes.

The problem with branching is that the pipeline is being filled preemptively with the next set of instructions. When the CPU branches then all the instructions in the pipeline could be the wrong ones! This means that the pipeline needs to be emptied and re-filled. To minimize this the CPU needs to predict what will happen at the next branch. This is called branch prediction. The better the branch prediction the better the performance.

Out-of-order

You got to love the English language, "out of order" can mean that something is broken, but it can also mean that something was done in a different sequence than originally specified. Since there can be bubbles in the pipeline then it would be good if the CPU could scan ahead and see if there are any instructions it could use to fill those gaps. Of course this means that the instructions aren't being executed in the order specified by the programmer (and the compiler).

This is OK, as long as the CPU can guarantee that executing the instructions in a different order won't alter the functionality of the program. To do this the CPU needs to run dependency analysis on potential instructions that will be executed out-of-order. If one of these instructions loads a new value into a register that is still being used by a previous group of instructions then the CPU needs to create a copy of the registers and work on both sets separately. This is known as register renaming.

The problem with out-of-order execution, dependency analysis and register renaming is that it is complex. It takes a lot of silicon space and because it is used for every instruction, all the time, then it can be a power hog. As a result not all CPUs have out-of-order capabilities. For example the ARM Cortex-A53 and the Cortex-A35 are "in order" processors. This means that they use less power than their bigger siblings, like the Cortex-A57 or Cortex-A73, but they also have lower performance levels. It is the old trade-off between power consumption and performance.

Instruction window

When looking for instructions to execute out of order, the CPU needs to scan ahead in the pipleline. How far ahead it scans is known as the instruction window. A larger instruction window gives a higher performance per clock cycle, a greater IPC. However it also means a greater silicon area and higher power consumption. It also presents problems for CPU designers as the larger the instruction window, the harder it is to get the internal timings right which means the peak clock frequency will be lower. CPUs with larger instruction windows need more internal resources. There needs to be more register renaming resources, the issue queues need to be longer and the various internal buffers need to be increased.

instructions per cycyle instruction windows-16x9

This means that CPU designers have a choice to work with a smaller instruction windows and aim for high clock frequencies, less silicon, and less power consumption; or work with a larger instruction window, with lower clock frequencies, more silicon and greater power consumption.

Since larger instruction windows means lower clock frequencies, more silicon (which means higher costs), and greater  power consumption then you might think that the choice would be easy. However it isn't because although the clock frequency is lower, the IPC is higher. And although the power consumption is higher the CPU has a greater chance of going to idle quicker, which saves power in the long run.

ARM, Apple, Qualcomm, Samsung etc

ARM licenses its CPU designs (i.e. Intellectual Property or IP) to its customers who then in turn build their own chips. So a processor like the Qualcomm Snapdragon 652 contains four ARM Cortex A72 cores and four ARM Cortex A53 cores, in a big.LITTLE arrangement. However ARM also grants some OEMs (via another license) the right to design their own ARM architecture cores, with the condition that the designs are fully compatible with the ARM instruction set. These are known as "architectural licenses". Such licenses are held by Qualcomm, Apple, Samsung, NVIDIA and Huawei.

whole-silicon-wafer-samsung-foundry-aaSee also: Custom cores versus ARM cores, what is it all about?19

In general when ARM designs an out-of-order CPU core it opts for a smaller instruction window and higher clock speeds. The Cortex-A72 is capable of running at 2.5GHz, while the Cortex-A73 is able to reach 2.8GHz. The same is probably true of the Samsung Mongoose core, it can peak at 2.6GHz. However it looks like Qualcomm and Apple are going with the larger instruction window approach.

Qualcomm and Apple aren't very forthcoming about the internal details of their CPUs, unlike ARM. But looking at the clock frequencies we see that the Kryo core in the Snapdragon 820 has a peak clock frequency of 2.15GHz. Now that isn't particularly low, however it is lower than the 2.5GHz-2.8GHz of the ARM and Samsung cores. However the performance of the Kryo core is at least equal, if not better, than the ARM and Samsung cores. This means that the Kryo has a higher IPC, greater ILP and probably a larger instruction window.

CPU Core Clock speed Pipeline Instruction window & width
ARM Cortex-A72 2.5GHz 15 Smaller instruction window, narrower dispatch, higher clock speed
ARM Cortex-A73 2.8GHz 11 Smaller instruction window, narrower dispatch, higher clock speed
Samsung Mongoose 2.6GHz ? Smaller instruction window, narrower dispatch, higher clock speed
Qualcomm Kryo 2.15GHz ? Larger instruction window, wider dispatch, lower clock speed
Apple A8 1.5GHz 16 Larger instruction window, wider dispatch, lower clock speed
Apple A9 1.85GHz 16 Larger instruction window, wider dispatch, lower clock speed

When it comes to Apple's core designs, it seems that Cupertino has heavily invested in the larger instruction window idea. The Apple A9 (as found in the iPhone 6S) is clocked at only 1.85 GHz. More than that it is a dual-core design, compared to the quad-core and octa-core designs from Qualcomm and Samsung. However the performance of the A9 is clearly on par or better than the current high end Snapdragon and Exynos processors. The same can be said for its predecessor, the Apple A8, which was clocked at just 1.5GHz.

The future and wrap-up

Clearly both the higher clock speed with lower IPC and the lower clock speed with higher IPC approaches have their merits. Some mobile SoC makers have opted to go with the first (i.e. ARM and Samsung) and it seems that others (like Apple and Qualcomm) have opted for the latter. Of course, the overall power and performance levels of a System-on-a-Chip is more than just a tale of IPC, ILP and the instruction window. Other factors include the cache memory system, the interconnects between the various components, the GPU, the speed of the external memory and so on.

Gary also explains:

  • What is Bluetooth 5? - Gary ...
  • Does bloatware drain your ba...
  • Does a 3000 mAh portable pow...
  • What is a VPN? - Gary explai...
  • What is a GPU and how does i...
  • Processes and threads - Gary...

It will be interesting to see over the next few years in which direction CPU design will head. Since there are limits to clock frequency and to ILP, which solution will be the best in the long run? Both? Neither? Also the process nodes that are used to make CPUs are getting harder and harder. We are already at 14/16nm, next comes 10nm and then 7nm, but after that it isn't clear if 5nm, will be viable. This means that CPU designers will need to find new and interesting ways to boost performance while keeping the power consumption low.

Gary also explains:

I would be interested to hear your thoughts on instructions per cycle. Do you think that one approach is better than the other? Please use the comment below to let me know what you think. If you want a more in-depth discussion then please head over to the Android Authority forums where I have created a special thread to talk about instructions per cycle and CPU design.



from Android Authority http://ift.tt/2aH8bix
via IFTTT