It’s been quite a year of surprises from Google. Before the company’s
annual developer conference in May, we anticipated at least an
incremental version of Android to hit the scene. Instead, we
encountered a different game plan—Google
not only started offering stock features like its keyboard as separate,
downloadable apps for other Android handset users, but it’s also
offering stock Android versions of non-Nexus-branded hardware like Samsung's Galaxy S4 and the HTC One
in the Google Play store. So if you’d rather not deal with OEM overlays
and carrier restrictions, you can plop down some cash and purchase
unlocked, untainted Android hardware.
But the OEM-tied handsets aren't all bad. Sometimes the
manufacturer’s Android offerings tack on a little extra something to the
device that stock or Nexus Android hardware might not. These perks
include things like software improvements and hardware
enhancements—sometimes even thoughtful little extra touches. We’ll take a
look at four of the major manufacturer overlays available right now to
compare how they stack up to stock Android. Sometimes the differences
are obvious, especially when it comes to the interface and user
experience. You may be wondering what the overall benefit is to sticking
with a manufacturer’s skin. The reasons for doing so can be very
compelling.
A brief history of OEM interfaces
Why do OEM overlays happen in the first place? iOS and Windows Phone 8
don’t have to deal with this nonsense, so what's the deal with Android?
Well, Android was unveiled in 2007 alongside the Open Handset Alliance
(a consortium of hardware, software, and carriers to help further
advance open standards for mobile devices). The mission was to keep the
operating system open and accessible to all so users could mostly do
whatever they wanted to do with it. As Samsung VP of Product Planning
and Marketing Nick DiCarlo told Gizmodo,
“Google has induced a system where some of the world's largest
companies—the biggest handset manufacturer and a bunch of other really
big ones—are also investing huge money behind their ecosystem. It's a
really powerful and honestly pretty brilliant business model.”
The main issue with all of these different companies using the same
software for their hardware is one of differentiation—how does Samsung
or HTC or LG or Sony make an Android phone that doesn't have the same
look, feel, and features as the competition's similarly specced phones?
Putting their own skins, software, and services on top of Android gives
them access to the good parts of Google's ecosystem (in most cases, the
Google Play store and the surrounding software ecosystem) while
theoretically helping them stand out from other phones on the shelf.
These skins haven't exactly been received with open arms. For many
enthusiasts, skinned Android sometimes means that outstanding hardware
is bogged down by all these extra offerings that manufacturers think
will make their handset more appealing. But the overlays—or skins, as
they’re often referred to—usually change the way the interface looks and
acts. Sometimes it introduces new features that don't already exist on
Android.
Samsung's TouchWiz overlay in its beginning stages.
For Samsung, its Android interface domination began with the Samsung
Behold II, which ran the first incarnation of the Samsung's TouchWiz
Android UI. The name previously referred to Samsung's own proprietary
operating system for its phones. Reviewers weren't too excited about
Samsung's iteration of the Android interface, with sites like CNET writing
that the “TouchWiz interface doesn't really add much to the user
experience and in fact, at times, hinders it." Sometimes it still feels
that way.
Samsung is notorious for packing in a breadth of features, but its
aesthetics are often lacking. But again, that’s subjective, and it all
comes down to the user. I’ve been using the last version of TouchWiz on a
Galaxy S III. While I’ve had some instances where it was frustrating,
I’ve come to appreciate some of the extra perks that shine through.
HTC's Sense UI back in the day
HTC's Android skin is called the Sense UI, and it was introduced in
2009. I’ve had some experience with it in my earlier Android days when I
had an HTC Incredible, but it’s come a long way since then. According
to Gizmodo,
the interface's roots go back to 2007, when HTC had to alter its
software for Windows Mobile to make it touch-sensitive so that it
wouldn't just be limited to stylus input. It was eventually ported over
to the HTC Hero, which was also the first Android device to feature a
manufacturer’s interface overlay.
As for LG and Sony, their interfaces have less storied histories (and
less prominent branding). Each borrows moves from what the two major
players do and then implements the ideas a little better or a little
worse. It’s an interesting dynamic, but the big theme here is choice:
there is so much to choose from when you’re an Android user that it can
be overwhelming if you’re not entirely sure of where to go next. Brand
loyalty and past experiences can only go so far as the constant stream
of updates and releases means manufacturers seek new directions nonstop.
Each manufacturer puts some flair on its version of Android.
Samsung's TouchWiz Nature UX 2.0, for instance, features a bubble blue
interface with bright, vibrant colors and drop shadows to accompany
every icon. LG’s Optimus UI uses... a similar aesthetic. But both
interfaces allow you to customize the font style and size from within
the Settings menu, even if the end product could ultimately end up as a
garish looking interface.
Among the selection of manufacturers, Sony and HTC have been the most
successful in designing an Android interface that complements the
chassis on their respective flagship devices. HTC's Sense UI has always
been one of my favorites for its overall sleekness and simplicity.
Though it's not as barebones as the stock Android interface, Sense 5.0
now sports a thin, narrow font with modern-looking iconography that
pairs well with its latest handset, the HTC One.
Sony's interface doesn't have an official name, but it can be referred to as the Xperia interface.
Sony's interface is not only pleasing to use, it also matches the
general design philosophy that the company continues to maintain
throughout its lifespan. Though it has no official alias, the Xperia
interface showcases clean lines and extra offerings that don’t
completely sour the overall user experience.
In this comparison, we're taking a look at recent phones from all of
the manufacturers: a Nexus 4 and a Samsung Galaxy S 4 equipped with
Android 4.2.2. The HTC One, LG Optimus G Pro, and Sony Xperia Z are all
still on Android 4.1.2. We were unable to actually get any hands-on time
with the latest Android 4.2 update to the HTC One.
We didn't include Motorola in the gang because the company is
undergoing a massive makeover right now. Plus, its last flagship handset
was the Droid Razr Maxx HD, which debuted back in October and has
relatively dated specifications. We have some high hopes for what might
be in store for Motorola’s future, especially with Google’s immediate
backing, but we’re waiting to see what’s to come of that acquisition
later this year.
Lock screens, home screens, and settings, too
Home screens and lock screens are perhaps the most important element
of a user interface because that's what the user will deal with the
most. Think about it: every time you turn on your phone, you see the
lock screen. We need to consider how many swipes it takes to get to the
thing you want to do from the time you unlock your phone to the next
executable action. (And hopefully there are some shortcuts that we can
implement along the way to save time.)
The lock screen on the stock version of Android 4.2.2 Jelly Bean.
On stock Android 4.2.2 Jelly Bean, Google included a
plethora of options for users to interact with their phone right from
the lock screen. The Jelly Bean update that hit late last year added
lock screen widgets and quick, swipe-over access to the camera
application. The lock screen can also be disengaged entirely if you
would rather have instant access to your applications by hitting the
power button.
The home screen on the Galaxy S 4.
The lock screen on Samsung's TouchWiz.
In TouchWiz, Samsung kept the ability to add multiple widgets to the
lock screen, including one that provides one-touch access to favorite
applications and the ability to swipe over to the camera app. You can
also add a clock or a personal message to the lock screen. TouchWiz even
takes it a step further through the use of wake-up commands, which let
you check for missed calls and messages by simply uttering a phrase at
the lock screen. To actually unlock the device, you can choose to swipe
you finger across the lock screen or take advantage of common Android
features like Face unlock.
TouchWiz Easy mode is easy to set up...
..and still offers access to all apps.
As for the home screen, Samsung continues to offer the standard Android
experience here, except that it tacks on a few extra perks. Hitting the
Menu button on the home screen will bring up extra options, like the
ability to create a folder or easily edit and remove apps from a
particular page. There's also an "Easy" home screen mode, which dials
down the interface to a scant few options for those users with limited
smartphone experience—like your technophobic parents, for instance. Easy
mode will display bigger buttons and limit the interface to three home
screens, though basic app functionality remains.
Sense 5's home screen.
Sense 5's lock screen.
The HTC One just recently received an update for Android 4.2.2,
though we didn't receive it in time to update our unit for this article.
Regardless, HTC's Sense 5 is a far cry from its interface of yore—but
that’s not a bad thing. It features a flatter, more condensed design
with a new font that makes it appear more futuristic than other
interfaces.
And don't forget to choose your lock screen.
Choose your home screen—any home screen.
Rather than implement a lock screen widget feature, HTC lets users
choose between five different lock screen modes, including a Photo album
mode, music mode, and productivity mode, which lets you glance at your
notifications.
HTC Sense's BlinkFeed aggregates information for at-a-glance viewing.
Sense’s home screen can be a bit of a wreck if you’re looking for
something simplistic. Its BlinkFeed feature takes up an entire page.
Though it’s meant for aggregating news sites and social networks that
you set up yourself, you can’t link up your favorite RSS feeds. By
default, it’s your home page when you unlock the phone. You can change
the home page in Sense 5 so that you don’t have to actually use the
feature, but it can’t be entirely removed.
The home screen.
The lock screen for the Optimus UI.
LG's lock screen is just as busy and impacted as Samsung's, with a
Settings menu that's almost as disjointed. Like Samsung's, it offers
different unlock screen effects, varying clocks and shortcuts, and the
ability to display owner information in case you lose your phone. As for
the home screen, Optimus UI offers a home backup and restore option, as
well as the ability to display the home screen in constant Portrait
view.
Sony's home screen.
Sony's Xperia Z handset is currently limited to Android 4.1.2. Its
settings are laid out like stock Android, but there is no ability to add
widgets or different clocks to the lock screen. We'd expect this sort
of thing to become available when the phone is updated to Android 4.2.
Notifications
Samsung's TouchWiz notifications panel.
In the latest version of Jelly Bean, Google introduced Quick
Settings, meant to provide quick access to frequently used settings.
This is one area where the OEMs were ahead of Google—many of the
interfaces have integrated at least a few different quick settings
options for a while now.
LG's crowded notifications panel.
Samsung's TouchWiz has been the most successful in implementing these
features. You can scroll through a carousel of options or display them
as a grid by pressing a button. LG’s Optimus UI borrows this same idea
but overcrowds the Notifications panel with extra features like Qslide
(more on this later). Even on the Optimus G Pro’s 5.5-inch display, the
Quick Settings panel feels too congested to quickly find what you want
without glancing over everything else first.
Sense UI's Notifications panel.
Xperia Z's Notification panel.
Sony and HTC kept it simple with their Notifications shade for the
most part. Our HTC One and Xperia Z are running Android 4.1.2, so
there's no built-in Quick Settings panel to take advantage of. Neither
OEM implements its own version of the feature. The One's Android 4.2.2
update reportedly adds quick settings, and we assume that the same will
be true of the Xperia Z when it gets its update.
App drawers
Android 4.2.2 stock app drawer.
Sony's Xperia Z app drawer.
The only OEM overlay that keeps it as simplistic and straightforward
as stock Android is Sony. You can categorize how you want to display
apps and in what order, but beyond that there's not much else between
you and your applications. You can uninstall applications by
long-pressing them and dragging them to the "remove" icon that appears
rather than dragging them to one of the home screens.
LG's app drawer.
Samsung's app drawer.
That's not to say what Samsung and LG provide isn't user friendly.
Both manufacturers offer additional options once you head into the
applications drawer. LG enables you to sort alphabetically or by
download date, and you can increase icon size and change the wallpaper
just for the application menu. You can also choose which applications to
hide in case you would rather not be reminded of all the bloatware that
sometimes comes with handsets.
As for the Galaxy S 4, Samsung offers a quick hit button for the Play
Store. You can view your apps by category or by type, and you can share
applications, which essentially advertises the Play Store link to
various social networks.
Sense 5's app drawer.
HTC's interface falls short when it comes to the application launcher. As Phil Nickinson from Android Central put it,
the HTC Sense 5 application drawer makes simple look complicated. The
grid size, for instance, appears narrower and takes up precious space.
Rather than make good use of the screen resolution, HTC displays the
apps in a 3-by-4 icon grid by default, with the weather and clock widget
taking up a huge chunk at the top. You also can't long-press on an
application to place it on a home screen. Instead, you have to drag it
up to the top left corner and then select the shortcut button to finally
place it on the home screen—apparently, this feature is fixed in
the HTC One’s Android 4.2.2 update (but we've yet to try it ourselves).
It’s a bit of an ordeal to make the app drawer feel "normal" as defined
by the rest of the Android OEMs. In general, we feel like Sense takes
the most work to achieve some level of comfort.
Dialers
LG's Optimus UI includes a setting that lets you switch the side the
dialer is on so that it's easier to use with just one thumb.
The Optimus UI offers an information-dense Dialer app. You can sift
through logs, mark certain contacts as favorites, and peruse through
your contacts right from within the app. LG offers an option to make the
dialer easy to use one-handed.
HTC's dialer application.
Although the Sense UI’s dialer layout feels a bit cramped, you can
still bring up a contact from your address book by simply typing in a
few letters of their name. You can cycle through your favorites, your
contacts, and different groups. However, it would be more convenient if
the Contacts screen worked like a carousel rather than a back-and-forth
type of menu screen. Extra dialer settings also take up quite a bit of
space at the top of the screen rather than being nested in menus as they
are in other phones. Each screen in the Dialer has a different set of
settings, which can be a bit confusing. Sense UI’s dialer app—and its
overall interface—has a bit of a learning curve to it, but at least the
aesthetic is nice.
The TouchWiz dialer on a Galaxy S 4 running Android 4.2.2.
The TouchWiz dialer on a Galaxy S III running Android 4.1.2.
Samsung’s Dialer interface also has a favorites list and a separate
tab for the keypad, but otherwise It’s much more simplistic looking than
the rest of TouchWiz. Sony kept the Dialer relatively untouched too,
adding just an extra tab for favorites.
The stock Android dialer app.
In the end, Jelly Bean has the best, cleanest-looking dialer
application. While the extra categories are a good idea for users with a
hefty number of contacts and groups of people to compartmentalize,
sometimes minimizing the number of options is better—especially in the
case of an operating system that is wholly barebones to begin with.
Apps, apps, apps
Google apps as far as the eye can see.
Google packs up a suite of applications with the stock version of
Android to perfectly complement the company's offerings. On the Nexus 4
and the Google Play editions of the Samsung Galaxy S 4 and HTC One,
you'll encounter applications like Google Calendar, Mail, Currents,
Chrome, and Earth. Not all of the manufacturer’s handsets come with this
whole set of apps out of the box. The regular edition of the Galaxy S
4, for instance, doesn't include Google Earth or Currents, but it does
have the Gmail and Maps application. Some carriers will package up
handsets with their own suite of apps, and carriers might also include
things like a backup application or an app that lets you check on your
minutes and data usage.
For the most part, however, these handsets do include their own
versions of calendar and mail apps (though the Google Calendar app is
available in the Play store, the non-Gmail email client isn't). They
have camera apps with software tweaks that are compatible with the
hardware contained on the device. Some handsets also have a bunch of
extra features just because; Samsung is especially fond of this.
Camera applications
The stock camera app interface on the Google Play edition of the HTC One.
Andrew Cunningham
Perhaps the biggest differentiator between interfaces is the camera
features and controls. We'll start with the HTC One, with its Ultrapixel
camera and myriad features. You can use things like Zoe to stitch
together several still images and create a Thrasher-like action
photo or just combine two slightly mediocre photos to make one worthy of
sharing on social networks. The Ultrapixel camera also automatically
adjusts exposure and the like to produce a fine looking photo, as we
found out when we tested it out in our comparative review of the Google Play edition of the HTC One and the standard version.
The stock camera interface for the Nexus 4.
Andrew Cunningham
The stock Android camera application isn't totally devoid of
features, however. Android 4.2.2's new camera UI has scroll-up controls
that make it easy to quickly switch between things like Exposure and
Scene settings. And while it could certainly use a little oomph
like HTC introduced with its camera application, there is such a thing
as too much good stuff—especially when you look at what LG and Samsung
have crammed into their camera interfaces.
So many different camera modes to choose from on the Galaxy S 4.
Samsung's TouchWiz-provided camera application is a bit of a mess. On
the Galaxy S 4, you'll have to deal with buttons and features
splattered all over the place. There's a Mode button that lets you cycle
between the 12 different camera modes—things like Panorama, HDR, Beauty
face (which enhances the facial features of your subject), Sound &
shot (which shoots a photo and then some audio to accompany it), and
Drama (which works a little like HTC's Zoe feature). Those camera
options are all fun to use from time to time, and you can change the
menu screen from carousel to grid view so that you're not too
overwhelmed by the breadth of options. But there are still so many
buttons lining the sides of the viewfinder on the display.
There's also a general Settings button in the bottom corner that will
expand out with more icons, taking up even more room on the screen.
Below that are two buttons for switching between the front- and
rear-facing cameras, as well as the ability to use the dual-camera
functionality while snapping a photo. TouchWiz is great at offering a
bunch of choices, but it can get a bit exhausting. If there were a more
concise way of making these available, it would make the Camera
application less intimidating to use.
I'm not entirely sure what all of the symbols in LG's camera application stand for.
LG's Optimus UI camera application isn't any better. Rather than
allowing the entire screen to be used as a viewfinder with icons that
lay on top of it like with TouchWiz, the menu options take up the top
and bottom third of the screen. It’s nice that LG offers a little symbol
in the preview window to let you know how your battery life is doing
and which mode you’re shooting in, but figuring out what symbol does
what takes a bit of time. At least with Samsung’s large catalog of
offerings, there’s an explicit description about what each camera
function does.
Sony's camera interface is easier to use, but the preview window is still surrounded by buttons and things.
Sony’s camera app is a bit easier to navigate. It has found the right
medium between simplicity and feature-filled functionality.
Unfortunately for its hardware, that doesn't translate over to how well
the camera actually performs. But the interface is something that other
OEMs should strive for: a straightforward, easy-to-use preview window
that’s just what Goldilocks was looking for.
Where the camera application really matters is with handsets like the
HTC One. That extra bit of software that HTC packs up with its One is
essential for its camera functionality to operate at its prime. As our
own Andrew Cunningham put it in his review of the Google Play edition of the HTC One:
...there are the HTC-specific features that the
"ultrapixel" camera on the [GPe] One lacks, namely Zoe (which can stitch
together several still images to convey action), the ability to stitch
together "highlight movies" from short videos on your phone, and pretty
much any feature that lets you combine two unsatisfactory photos to get
one satisfactory one (like Always Smile or Object Removal). These have
been replaced by a slightly tweaked version of the stock Android camera,
which we assume will make it to the Nexus phones and tablets in the
next release of Android.
Additionally, the Google Play edition One had some image quality
issues when it shot in automatic shooting mode. The standard One—which
is fueled by HTC's Sense 5—can adjust its exposure based on its
surroundings. The Google Play edition—the stock Android 4.2.2
version—doesn't have those same software tweaks in its camera
application.
In some ways, this is actually the best argument for why you would
consider an OEM-tied Android handset over an unlocked, stock one: the
software has been tweaked to work best with that specific handset's
internals.
Calendars
In May, Google Calendar got a makeover in addition to color-coded
functionality in order to vary days and events for each calendar. The
new interface was particularly focused on streamlining the design
aesthetic across all Google applications, and while the update didn't
introduce too many new features, it did make Google's Calendar app a
little more palatable.
Samsung's TouchWiz calendar application.
Samsung's calendar application is not the prettiest thing to look at,
but it's certainly feature-filled. Users can switch between six
different calendar view modes and four different view styles, including
the ability to view the calendar in a list or pop-up form. There are
also a number of minor settings that you can individually adjust,
including the ability to select what day your week should start on.
Sense 5's calendar app.
HTC's Sense uses its own proprietary calendar application, too. You
can sync your accounts, choose the first day of the week, set the
default time zone (and another if you travel frequently), and even
display the weather within the calendar app. At the bottom of the
screen, Sense will show upcoming events at a glance, and you can tap to
add more throughout the day. You can also sort your calendar by meeting
invitations.
LG's calendar app.
Sony's calendar app.
LG's Optimus UI employs a similar interface to Sense UI’s with the
calendar view at the top and tasks for meeting invitations available at
the bottom. Still, it doesn't feel as informative as what stock Android
and Samsung are putting forward. Sony provides a Calendar app that uses a
similar icon to Google's stock app, and while the interface looks the
same, it doesn't have the color-coding abilities of Google Cal.
Mail
The Nexus 4 and Google Play edition handsets come with their own
suite of Google-branded applications, including two e-mail apps: Gmail
and a nondescript Email app. While Gmail is a little more
feature-filled, with the option to use things like Priority inbox, the
Email app's interface appears a little barren. You can add Exchange,
Yahoo!, Hotmail, and other POP3/IMAP accounts to it or add your Gmail
account to keep them synced up in one app. However, with the app's
straightforward nature, there's not much else to it. Mail applications
offered by other manufacturers don't veer too far from what's here,
though. They essentially offer the same basic functionality and settings
across the board.
...the server settings are annoyingly featured at the end.
From one interface to the other...
Annoyingly, most of the Mail apps, like Samsung's and LG's, bury
server settings at the very end of the settings panel. But all of them
take a page out of stock Android's book by providing a combined inbox
view, which is especially helpful if you're juggling between a myriad of
different accounts.
Samsung features a combined inbox view, just like stock Android's.
Stock Android's combined inbox view.
HTC's e-mail application has the same design as its other OEM-offered
proprietary applications, but it's much easier to navigate than other
apps. The Settings button resides at the top of the page with a bunch of
options, including the ability to add an account or set an "out of
office" message. From there, you can even access additional settings.
HTC also provides a couple of different sync settings, for instance, to
help preserve battery life.
Sony's Mail app is so simple.
Sony's Mail application is nice and easy as well. You can hit the
settings button in the bottom right corner to mark a piece as unread,
star it, move it to another folder, or access the general settings
panel.
Other apps
With each OEM overlay comes a whole set of applications that could
prove to be useful in the end. Except Samsung's, that is—the
manufacturer has bundled a huge set of features and capabilities that
feel redundant and might even suck the life out of your battery if
you're not careful.
Samsung includes its own app store with TouchWiz.
The Galaxy S 4 comes preloaded with a bunch of applications,
including Samsung's own app store, entertainment hub, and app that
enables you to access content on your phone from a desktop computer. The
only perk of signing up for a Samsung account and going that route is
being able to track where your phone is in case you lose or misplace it.
Samsung can back up phone data too.
But there's more where this came from. Samsung includes a remote
control application for your television called Samsung WatchON, but it's
only compatible if you have an active cable or satellite television
subscription. There's also S Health, which helps you manage your
lifestyle and well-being. And if you're a hands-free type of user, you
can take advantage of gesture-based functionality like Air gestures or
enable the screen to keep track of your eye movement.
It will pop up in a desktop-like window on your screen.
Select the "small app" you want to use from the running apps screen.
Samsung isn't the only offender when it comes to stuffing
applications and features onto its flagship handsets, however. Sony
oversaturated its own music and movie store, and it has a Walkman
music-playing application alongside Google Music. When you hold down the
Menu button, there's a row of "small apps" that gives you quick access
to things like the browser, a calculator, and a timer. We covered these
briefly in the Xperia Tablet Z review, but they work the same on the
Xperia Z handset: once you launch the "small" app, the app will appear
in a pop out screen on top of the interface. It's kind of like
multitasking.
The Qslide multitasking app lets you do things like take notes while you're doing other stuff.
LG, on the other hand, lets the carrier pack it with apps. LG then
includes a multitasking feature called Qslide. You can choose from
several Qslide-compatible applications that pop up over an open
application in order to do things like leave a note and use the
calculator. It also has a setting that turns off the screen when you're
not looking.
Among all phones, there are a great number of features and apps to
adapt to using. While I don't find things like Samsung's Air gestures
and Smart scroll gimmicky, it can get frustrating to venture into the
apps drawer only to find it crowded with icons of applications that you
will never use. Some of these features and apps are things you'd never
find packed up with the stock version of Android—because they're not
always necessary.
The future
We're still waiting to hear about Android 4.3 and what it will bring
to the mobile platform. Every time Google launches an update, you can
bet that the manufacturers will follow suit with their interfaces (you
know, eventually). That's what causes the biggest conundrum for
Android users. I had things like Quick Settings already available on my
Galaxy S III before Google natively implemented them into Android 4.2
Jelly Bean, but for the OEMs that didn't build their own version of this
feature, I'm constantly at the mercy of my carrier and the
manufacturer. They dictate when I'll receive my update for the latest
version of Jelly Bean.
The biggest gripe about OEM overlays is that each company is selling its own brand of Android rather than Google's. Remember the
Android update alliance? That didn't work out too well in the end.
Carriers and hardware makers aren't keeping their promises, and as that
trickles down to the consumer, it eventually confuses the public. As
Google attempts to implement interface and performance standards,
manufacturers will go ahead and hire a team to make Android look
virtually unrecognizable. Samsung's app and media store sort of feels
like an insult at times, but it knows that it doesn't have all the clout
to make strides with its own mobile operating system.
There is a silver lining to all this, at least for purists: why
should you even bother with OEM interfaces when you can now purchase two
of the most popular handsets with stock Android on them? Google has
already said that it will be working with the providers of Google Play
edition phones to provide timely updates, so you certainly don't have to
worry about fragmentation or waiting around to get the latest version
of Android.
The OEMs have provided several different experiences for both
hardcore and novice Android users alike, which has only contributed to
the proliferation of the platform. Here at Ars, we prefer the stock
version of Android on a Google-backed handset like the Nexus 4 and
Google Play editions. Even if they're not chock full of perks and
applications, they'll receive the most timely updates from Android
headquarters, and their interfaces are mostly free of the cruft you get
from the OEMs. For many consumers, it might not matter when Google
chooses to update the phone, but for us, we like to know that Google is
pushing through the software updates without any setbacks.
In the end, choosing an OEM-branded version of Android means that
you're a prisoner of that manufacturer's timeline—an especially
unfortunate situation when that manufacturer decides to stop supporting
software updates altogether. We've said it time and time again—in the
end, it's really your experience that will determine which interface
suits you best. So as far as the future of Android goes, it's not just
in Google's hands.
In the latest of 3D-printed hardware, NASA
has completed a series of test firings of the agency’s first rocket
engine part made entirely from 3D printing. The component in question is
the rocket engine’s injector, and it went through several hot-fire
tests using a mix of liquid-oxygen and gaseous hydrogen.
However, NASA didn’t use ABS plastic that most 3D-printers use.
Instead, the agency used custom 3D printers to spray layers of metallic
powder using lasers. The lasers spray the powder in a specific pattern
in order to come up with the desired shape for an object. In this case: a
rocket engine injector.
The testing was done at NASA’s Glenn Research Center in Cleveland and
the project is in partnership with Aerojet Rocketdyne. The company
designed the injector and used 3D printing to make the component a
reality. If they were to make the injector using traditional
manufacturing processes, it would take over a year to make.
With 3D printing now an option, NASA and Aerojet Rocketdyne are able
to make the same component in just a matter of four months or less.
Costs are a huge factor too, and the 3D-printed reduces costsby up to
70% compared to traditional methods and materials. This could lead to
more efficient and cost-effective manufacturing of rocket engines.
NASA didn’t say what was next for the 3D-printed injector as far as
testing goes, nor do they have a timeline for when they expect to
officially implement the new technology in future rocket engines. We can
only expect them to implement it sooner rather than later, but it could
take several more years until it can be fully operational and on its
way into space.
3D printing is awesome, yet it still has a lot of untapped potential -- you can use it to create terrifying spiderbots and even tiny drones,
but you can't make electronic components out of pools of plastic.
Thankfully, a team of North Carolina State University researchers have
discovered a mixture of liquid metal that can retain shapes, which could
eventually be used for 3D printing. Liquid metals naturally have the
tendency to merge, but alloys composed of gallium and indium combined
form a skin around the material. This allows researchers to create
structures by piling drops on top of each other using a syringe, as well
as to create specific shapes by using templates. The team is looking
for a way to use the mixture with existing 3D printing technologies, but
it might take some before it's widely used as it currently costs 100
times more than plastic. We hope they address both issues in the near
future, so we can conjure up futuristic tech like bendy electronics, or
maybe even build a body to go with that artificial skin.
Samsung and HTC
are flirting with advanced home automation control in future Galaxy and
One smartphones, it’s reported, turning new smartphones into universal
remotes for lighting, entertainment, and more. The two companies are
each separately working on plans for what Pocket-lint‘s source describes as “home smartphones” that blur the line between mobile products and gadgets found around the home.
For Samsung, the proposed solution is to embed ZigBee into its new phones, it’s suggested. The low-power networking system – already found in products like Philips’ Hue
remote-controlled LED lightbulbs, along with Samsung’s own ZigBee bulbs
– creates mesh networks for whole-house coverage, and can be embedded
into power switches, thermostats, and more.
Samsung is already a member of the ZigBee Alliance, and has been
flirting with remote control functionality – albeit using the somewhat
more mundane infrared standard – in its more recent Galaxy phones. The
Galaxy S 4, for instance, has an IR blaster that, with the accompanying
app, can be used to control TVs and other home entertainment kit.
HTC, meanwhile, is also bundling infrared with its recent devices;
the HTC One’s power button is actually also a hidden IR blaster, for
instance, and like Samsung the smartphone comes with a TV remote app
that can pull in real-time listings and control cable boxes and more.
It’s said to be looking to ZigBee RF4CE, a newer iteration which is specifically focused on home entertainment and home automation hardware.
Samsung is apparently considering a standalone ZigBee-compliant
accessory dongle, though exactly what they add-on would do is unclear.
HTC already has a limited range of accessories for wireless home use,
though focused currently on streaming media, such as the Media Link HD.
When we could expect to see the new devices with ZigBee support is
unclear, and course it will take more than just a handset update to get a
home equipped for automation. Instead, there’ll need to be greater
availability – and understanding – of automation accessories, though
there Samsung could have an edge given its other divisions make TVs,
fridges, air conditioners, and other home tech.
As a programmer who wants to write decent performing code, I am very
interested in understanding the architectures of CPUs and GPUs. However,
unlike desktop and server CPUs, mobile CPU and GPU vendors tend to do
very little architectural disclosure - a fact that we've been working
hard to change over the past few years. Often times all that's available
are marketing slides with fuzzy performance claims. This situation
frustrates me to no end personally. We've done quite a bit of low-level
mobile CPU analysis at AnandTech in pursuit of understanding
architectures where there is no publicly available documentation. In
this spirit, I wrote a few synthetic tests to better understand the
performance of current-gen ARM CPU cores without having to rely upon
vendor supplied information. For this article I'm focusing exclusively
on floating point performance.
We will look at 5 CPU cores today: the ARM Cortex A9, ARM Cortex A15,
Qualcomm Scorpion, Qualcomm Krait 200 and Qualcomm Krait 300. The test
devices are listed below.
Devices tested
Device
OS
SoC
CPU
Frequency
Number of cores
Samsung Galaxy SIIX (T989D)
Android 4.0
Qualcomm APQ8060
Scorpion
1.5GHz
2
Boundary devices BD-SL-i.mx6
Ubuntu Oneiric
Freescale i.mx6
Cortex-A9
1.0GHz
4
Blackberry Z10
Blackberry 10 (10.1)
Qualcomm MSM8960
Krait 200
1.5GHz
2
Google Nexus 10
Android 4.2.2
Samsung Exynos 5250
Cortex-A15
1.7GHz
2
HTC One
Android 4.1.2
Qualcomm Snapdragon 600
Krait 300
1.7GHz
4
I wanted to test the instruction throughput of various floating point
instructions. I wrote a simple benchmark consisting of a loop with a
large number of iterations. The loop body consisted of many (say 20)
floating point instructions with no data dependence between them. The
tests were written in C++ with gcc NEON intrisincs where required, and I
always checked the assembler to verify that the generated assembly was
as expected. There were no memory instructions inside the loop and thus
memory performance was not an issue. There were minimal dependencies in
the loop body. I tested the performance of scalar addition,
multiplication and multiply-accumulate for 32-bit and 64-bit floating
point datatypes. All the tested ARM processors also support the NEON
instruction set, which is a SIMD (single instruction multiple data)
instruction set for ARM for integer and floating point operations. I
tested the performance of 128-bit floating point NEON instructions for
addition, multiplication and multiply-accumulate.
Apart from testing throughput of individual instructions, I also wrote a
test for testing throughput of a program consisting of two types of
instructions: scalar addition and scalar multiplication instructions.
The instructions were interleaved, i.e. the program consisted of an
addition followed by a multiply, followed by another add, then another
multiply and so on. There were no dependencies between the additions and
following multiplies. You may be wondering the reasoning behind this
mixed test. Some CPU cores (such as AMD's K10 core) have two floating
point units but the two floating point units may not be identical. For
example, one floating point unit may only support addition while another
may only support multiplication. Thus, if we only test the additions
and multiplications separately, we will not see the peak throughput on
such a machine. We perform the mixed test to identify such cases.
All the tests mentioned above measure the amount of time taken for a
particular number of instructions and thus we get the instructions
executed per-second. We also need to know the frequency to get the
instructions executed per-cycle. Knowing the peak frequency of the
device is not enough because CPUs have multiple frequency states and the
tests may not be running at the advertised peak speeds. Thus, I also
wrote code to monitor the percentage of time spent in each frequency
state as reported by the kernel. The frequency was calculated as the
average of the frequency states weighted by percentage of time spent in
each state. The observed frequency on Scorpion (APQ8060) , Cortex A9
(i.mx6) and Cortex A15 (Exynos 5250) were 1.242 GHz, 992MHz and 1.7GHz
respectively on all tests except where noted in the results below.
However, as it turns out, the method I used for measuring the time
spent in each frequency state does not work on aSMP designs like the
Krait 200 based Snapdragon S4 and Krait 300 based Snapdragon 600. For
Krait 200, the results reported here are for MSM8960 which shouldn't
really have thermal throttling issues. My results on the MSM8960 also
line up quite neatly with the assumption that the CPU spent most or all
of its time in the test in the peak frequency state. Brian also ran the
test on a Nexus 4 and the results were essentially identical as both
have the same peak, which is additional confirmation that our results
are likely correct. Thus I will assume a frequency of 1.5 GHz while
discussing Krait 200 results. Results on Krait 300 (Snapdragon 600)
however are more mixed. I am not sure if it is reaching peak frequency
on all the tests and thus I am less sure of the per-cycle estimates on
this chip. Brian also ran the tests on another handset (LG Optimus G
Pro) with the same Snapdragon 600, and the results were qualitatively
very similar.
Now the results. First up, the raw data collected from the tests in gigaflops:
Performance of each CPU in GFlops on different tests
Scorpion
(APQ8060)
Cortex-A9
(i.mx6)
Krait 200
(MSM8960)
Cortex-A15
(Exynos 5250)
Krait 300
(Snapdragon 600)
Add (fp64)
1.23
0.99
1.33
1.55 @ 1.55 GHz
1.6
Add (fp32)
1.19
0.99
1.46
1.69
1.72
Mul (fp64)
0.61
0.50
1.48
1.69
1.72
Mul (fp32)
1.22
0.99
1.49
1.69
1.72
Mixed (fp64)
0.82
0.99
1.48
1.63
1.72
Mixed (fp32)
1.23
0.99
1.47
1.69
1.72
MAC (fp64)
1.23
0.99
1.48
3.35
2.65
MAC (fp32)
2.47
1.98
1.47
3.39
3.13
Add (fp32 NEON)
4.94
1.99
5.86
6.77
6.89
Mul (fp32 NEON)
4.89
1.99
5.76
6.77
6.89
MAC (fp32 NEON)
9.88
3.98
5.91
13.55
12.5
Before we discuss the results, it is important to keep in mind that the
results and per-cycle timing estimates reported are what I observed
from the tests. I did my best to ensure that the design of the tests was
very conducive to achieving high throughput. However, it is possible
there may be some cases where an architecture can achieve higher
performance than what what I was able to get out of my tests. With that
out of the way, lets look at the results.
In the data, we need to distinguish between number of instructions and
number of flops. I count scalar addition and multiply as one flop and
scalar MACs as two flops. I count NEON addition and multiply as four
flops and NEON MACs are counted as eight flops. Thus, we get the
following per-cycle instruction throughput estimates:
Estimated floating point instruction throughput per cycle
Scorpion
Cortex A9
Krait 200
Cortex A15
Krait 300
Add (fp64)
1
1
1
1
1
Add (fp32)
1
1
1
1
1
Mul (fp64)
1/2
1/2
1
1
1
Mul (fp32)
1
1
1
1
1
Mixed (fp64)
2/3
1
1
1
1
Mixed (fp32)
1
1
1
1
1
MAC (fp64)
1/2
1/2
1/2
1
7/9
MAC (fp32)
1
1
1/2
1
10/11
Add (fp32 NEON)
1
1/2
1
1
1
Mul (fp32 NEON)
1
1/2
1
1
1
MAC (fp32 NEON)
1
1/2
1/2
1
10/11
We start with the Cortex A9. Cortex A9 achieves throughput of 1
operation/cycle for most scalar instructions, except for fp64 MUL and
fp64 MAC, which can only be issued once every two cycles. The mixed test
reveals that though fp64 muls can only be issued every two cycles,
Cortex A9 can issue a fp64 add in the otherwise empty pipeline slot.
Thus, in the mixed test it was able to achieve throughput of 1
instruction/cycle. NEON implementation in Cortex A9 has a 64-bit
datapath and all NEON instructions take 2 cycles. Qualcomm's Scorpion
implementation of scalar implementations is similar to Cortex A9 except
that it seems unable to issue fp64 adds immediately after fp64 muls in
the mixed test. Scorpion uses a full 128-bit datapath for NEON and has
twice the throughput of Cortex A9.
Krait 200 features an improved multiplier, and offers 1
instruction/cycle throughput for most scalar and NEON instructions.
Interestingly, Krait 200 has half the per-cycle throughput for MAC
instructions, which is a regression compared to Scorpion. Krait 300
improves the MAC throughput compared to Krait 200, but still appears to
be unable to reach throughput of 1 instruction/cycle possibly revealing
some issues in the pipeline. An alternate explanation is that Snapdragon
600 reduced the frequency in the MAC tests for some unknown reason.
Without accurate frequency information, currently it is difficult to
make that judgment. Cortex A15 is the clear leader here, and offers
throughput of 1 FP instruction/cycle in all our tests.
In the big picture, readers may want to know how the the floating point
capabilities of these cores compares to x86 cores. I consider Intel's
Ivy Bridge and Haswell as datapoints for big x86 cores, and AMD Jaguar
as a datapoint for a small x86 core. For double-precision (fp64),
current ARM cores appear to be limited to 2 flops/cycle for FMAC-heavy
workloads and 1 flops/cycle for non-FMAC workloads. Ivy Bridge can have a
throughput of up to 8 flops/cycle and Haswell can do 16 flops/cycle
with AVX2 instructions. Jaguar can execute up to 3 flops/cycle. Thus,
current ARM cores are noticeably behind in this case. Apart from the
usual reasons (power and area constraints, very client focused designs),
current ARM cores also particularly lag behind in this case because
currently NEON does not have vector instructions for fp64. ARMv8 ISA
adds fp64 vector instructions and high performance implementations of
the ISA such as Cortex A57 should begin to reduce the gap.
For fp32, Ivy Bridge can execute up to 16 fp32 flops/cycle, Haswell can
do up to 32 fp32 flops/cycle and AMD's Jaguar can perform 8 fp32
flops/cycle. Current ARM cores can do up to 8 flops/cycle using NEON
instructions. However, ARM NEON instructions are not IEEE 754 compliant,
whereas SSE and AVX floating point instructions are IEEE 754 compliant.
Thus, comparing flops obtained in NEON instructions to SSE instructions
is not apples-to-apples comparison. Applications that require IEEE 754
compliant arithmetic cannot use NEON but more consumer oriented
applications such as multimedia applications should be able to use NEON.
Again, ARMv8 will fix this issue and will bring fully IEEE
754-compliant fp32 vector instructions.
To conclude, Cortex A15 clearly leads amongst the CPUs tested today
with Krait 300 very close behind. It is also somewhat disappointing that
none of the CPU cores tested displayed a throughput of more than 1 FP
instruction/cycle in these tests. I end at a cautionary note that the
tests here are synthetic tests that only stress the FP units. Floating
point ALU peaks are only a part of a microarchitecture. Performance of
real-world applications will depend upon rest of the microarchitecture
such as cache hierarchy, out of order execution capabilities and so on.
We will continue to make further investigations into these CPUs to
understand them better.
Ever since the introduction of the Apple TV there has been a
lot of discussion and speculation about apps for the device. I think
those discussions have missed some important technical aspects.
My Basic Assertion
Apple has sold over 13 million Apple TV boxes. This is a good market
size for attracting developers to the platform. It avoids the chicken
and egg problem where nobody wants to buy new hardware until there are
apps for it, and developers don’t want to invest in a new platform until
there are enough potential customers.
Apple TV customers are purchasing over 800,000 TV episodes and
350,000 movies per day. And Apple is continuously adding new services to
the current generation Apple TV, also indicating that this is not a
product that is about to be replaced.
Therefore, my basic assertion which the rest of this article builds upon is that an Apple TV SDK and subsequently apps for the Apple TV need to work on the current generation Apple TV hardware.
An Actual TV from Apple
For years there have been speculation that Apple is just about to
launch a flat screen TV with the Apple logo on it; to revolutionize our
living rooms. For the purposes of this article I will just posit that
any app capable hardware built into an Apple TV set will have to be
compatible with the current Apple TV box, per my basic assertion above.
The Apple TV SDK
The 3rd generation Apple already runs iOS, so “all” that’s missing is
an App Store, some people say. Oh, and a way to control apps other than
with the anemic Apple TV remote.
The solution to the latter problem is the new game controller API
introduced with iOS 7. I’m speculating that compatible game controllers
can come from third party accessory manufacturers as snap-ons to your
existing iDevices, and as low cost freestanding devices similar in form
factor to Wii remotes and other game console controllers. A minor
complication is that the existing Apple TV owners don’t have game
controllers, so if an App Store is introduced, I will not “just work”
for them.
More problematic is where purchased apps will be saved on the Apple
TV. The “black puck” generation Apple TV officially does not have any
internal storage. However iFixit’s tear down
showed that the device does have a 8 GB flash memory chip. Allegedly
this memory is used for caching streaming movies to improve the watching
experience.
8 GB seems a bit excessive for just a cache, so say that we allocate
half to storing apps. Remember back in the day when we only had 4 GB
storage on the original iPhone? How many high quality iOS games would
fit into 4 GB today?
So why not stream the apps too? Movies and music are great candidates
for streaming since you typically consume them linearly. Compiled code
is unfortunately not so predictable. There are other systems out there
that stream software, so it’s not an impossible problem. But it doesn’t
seem like a trivial thing to add on top of iOS when it was not initially
designed for this.
For this reason I think it’s unlikely that there will be an Apple TV SDK anytime soon.
Future Apple TV Hardware
Apple is no stranger to releasing new hardware that replaces and
obsoletes their current models. Releasing a new Apple TV that has
built-in storage would be easy for them. But wait, they already did
that. The first generation Apple TV had a built-in 40 or 160 GB hard
drive. Flip-flopping back to the hard drive design after they finally
found success with the current model, would be a strange product
evolution path.
What about flash memory? Even though Apple is the world’s largest
buyer of flash memory, it’s not cheap. The main technical differences
between the various iPhone/iPad/iPod models is the amount of flash
memory included. Take a look at the price differences to get a feel for
how expensive flash memory is. At the current $99 price the Apple TV
would be a stand-out in the game console market. At $199 it would be in a
crowd of low powered game machines.
AirPlay
The Apple TV can act as an AirPlay receiver for both audio and video.
iOS apps have been able to send streams over AirPlay since iOS 4.3 and
AirPlay mirroring is available in iDevices starting with iPhone 4S. I’ve
written
about the AirPlay potentials for app developers before. And there are
several games on the App Store that make use of AirPlay. What is new
this time around is the game controller API. This enhances game play in
several ways, including: Significant screen areas no longer need to be
dedicated to touch areas for your fingers to control the game. This
makes even less sense when you’re viewing the action on your TV and
(hopefully) not touching your TV to control the game. Also, with
physical buttons on a game controller you can keep your eyes on the big
TV screen instead of having to look down on your iDevice screen to see
where your fingers are.
I this regard agree with Kyle Richter
that the “Apple TV SDK” has already been launched. You will use the
iDevice you already own to purchase and play games on, and then use the
current Apple TV to display the action on your big TV screen so that
your friends and family can be part of the fun.
The game controller API will certainly enhance game play and raise
the awareness of gaming with your Apple TV. But it’s not a requirement,
as all games that support the game controller API presumably have to
work without a game controller connected.
New game console generations are launched about every 5-6 years.
People just don’t upgrade components in their entertainment system as
often as they upgrade their mobile phones. With this upgrade cycle Apple
can take advantage of newer gaming hardware much quicker than the
competitors if the games actually run on iDevices instead of on the
Apple TV.
AirPlay has a drawback in that there is a lag between the bits being
drawn on the screen on the iDevice and the image shows up on the Apple
TV. This could be irritating for some fast paced games. But this could
be countered in the app with some clever delay handling and by designing
your game mechanics with this in mind. When this is not possible, the
active player can use the iDevice screen and friends watching would look
at the TV not caring that there is a slight delay.
Multiplayer
iDevices can already communicate with each other, so a multiplayer
game can be done by having one device be the master that renders the
screen for all players, and the other devices just send the movements of
their players to the master.
With stand-alone game controllers (i.e. those that don’t snap on to
the device) you could connect multiple controllers to one iDevice for
multiplayer capability. This is even easier to handle from a programming
perspective.
What Does This Mean for Your App Business?
If you don’t already own an Apple TV go buy one. Also get that new
fancier flat screen TV you’ve been wanting. Write them off as business
expenses since you of course need these new toys to properly test your
apps.
If you are developing games, you should definitely add support for
the game controller API when you update your apps for iOS 7. Remember
that Apple loves to feature apps that make good use of new technologies
and APIs.
You should also consider supporting AirPlay. This is very easy to do.
The next level is to consider the Apple TV environment when you
design a new game. I’m sure there are many new and exciting game ideas
that will be invented over the next several months.