Sep 13, 2012

iPhone 5 Processor

There has been some speculation on the net about what sort of processor is in the A6 SoC found in the iPhone 5. The two dominant choices are either a quad core version of the Cortex A9 found in previous versions of the Apple SoCs or a new dual core version of the Cortex A15, which until now has not been found in any shipping product. Without access to actual devices, it would seem the odds are stacked against us in determining what the actual CPU is.

Except that with the latest Xcode now has support for building for a new architecture — armv7s. There is little to go on about what the differences are between armv7s and armv7, so I decided to look in the opposite direction. I went with the assumption that if Apple is using an Cortex A15, they would want to support any new instructions provided. And therefore, I went and found out what was added in the A15 vs the A9.

It turns out there are a handful of new instructions. Most of the features seem to be oriented around virtualization support, which wouldn’t be of any use to an iOS developer. But there were two instructions added that could be very useful — a “fused” multiply and add instruction (MAC) and more importantly, an integer divide instruction. This later one is interesting because currently if division is required on the armv7 platform, the compiler inserts a call to a helper function to carry out the division in software.

My plan was then as follows. I would build a test application for both armv7 and armv7s. In this application, I made a test function that was as follows:

int my_divide(int a, int b) {
  return a / b;
}

I built the project and then when diving into ~/Library/Developer/Xcode looking for the .o files for both the arm7 and arm7s version. Since I didn’t have an arm7s disassembler handy, I chose to use nm instead. nm will list all of the unresolved external symbols used in the .o file. Since the software division routine would need to be linked in, my expectation was that on the armv7 version, I would see an unresolved symbol for that routine and on the armv7s version, there would be no unresolved symbol.

Here’s what I got when I ran it on the armv7 version:

$ nm File.o 
         U ___divsi3
00000000 T _my_divide

Here is what I got when I rant it on the armv7s version:

$ nm File.o 
00000000 T _my_divide

As expected, the armv7s version did not call into the software division routine. Therefore, I am reasonably confident that the armv7s architecture variant (and most likely the A6 SoC) is for the Cortex A15 processor.

Comments
Jun 5, 2011

WWDC iOS Predictions

It’s the eve of WWDC and what would it be without a few predictions? Here are the things that I expect to see for iOS at WWDC this year:

  • Syncing and OS updates with iTunes. This one really seems like a no brainer to me. I figure I’ll at least have one thing right on this list with this one.
  • OpenCL support. Apple didn’t increase the GPU power as much as they did with the iPad 2 simply for gaming. I would be surprised if iOS 5 doesn’t have OpenCL support for at least the A5, possibly the A4 as well.
  • Even better multimedia APIs. This is one area where iOS has a huge lead over Android, IMO. And I don’t think that Apple will sit still to allow them to catch up. Looking particularly for more encoding APIs, even better access to the iPod library (ability to add content, more content types, etc) and hopefully better integration with the audio controls — I would like it if 3rd party apps could show metadata as well, like title, artist and album artwork.
  • iCloud APIs With the introduction of iCloud, I would expect Apple to provide APIs for apps to use for synchronizing across devices and to access the user’s iDisk (or whatever it gets renamed to) storage.
  • Participation in Back To My Mac. If the rumors are correct about the new TIme Capsules playing a major role in wireless sync, they are almost certainly using Wide Area Bonjour to allow the devices to find those Time Capsules. Which means that the iOS clients should also be able to see the Macs as well. In fact, I’ll go for a bit of a stretch here and say that iTunes Home Sharing will also be extended to use Wide Area Bonjour and that the iOS clients will also be able to see those machines from anywhere on the Internet as well. But I doubt that Apple will talk much about that since for the average user, uploading the music to a server that is always up is a better solution than having a Mac running 24/7 in their home or office.
  • More privacy settings. If Apple has learned anything from the recent location-gate, it’s that giving users more control over their privacy is a good thing. Right now iOS notifies you when your location data is being requested. I would like to see this extended to Address Book data as well. I don’t want to find out that an app accessed my contacts and used them to build a database of email addresses for spam. Give me the option to deny an app access to my contacts, just as we already can for location.
  • Just over 24 hours away and we’ll find out if I got anything right on this list. I’m certainly hoping for a few off this list.

    [EDIT: I realized that I forgot my “one-more-thing” prediction — App development for the Apple TV. This is clearly a device intended for much more than Apple currently allows it to do. An Apple TV app store is almost a given at some point. Perhaps this year’s WWDC is that point.]

    Comments
    Nov 11, 2010

    iOS Audio Queue Tip of the Day™

    I just spent a few hours tracking this one down and I figured I would share for anyone who might come across this on Google.

    If you are using Audio Queues under iOS to stream audio and you want the queues to continue playing when the screen is locked, your buffer size must be at least 4096 samples. Apple has documented this in QA1606 for Audio Units, but it wasn’t immediately clear that this also applies to Audio Queues.

    In retrospect, it should’ve been obvious because Audio Queues are built on top of Audio Units, but Apple never explicitly says anything about Audio Queues and the screen being locked in their documentation.

    Hope this helps at least one other person out there. I certainly could’ve used this info a few hours ago.

    Comments
    Oct 22, 2010

    Apple, Adobe and Flash

    marco:

    “Like the Ministry of Truth, it appears that Apple is deliberately attempting to usurp the meaning of the word Flash in the computing industry and redefine it.”

    Jeff Rock makes a great point

    Didn’t Macromedia/Adobe usurp the meaning of the word Flash first? Flash the software has been around since 1996. Flash memory has been around since the early 1980s. Why is Apple suddenly the one “usurping the meaning of a term” for using flash memory to describe the technology that they are using in their products? This isn’t even a case where the term has fallen out of common usage.

    (via marco)

    Comments
    Jun 30, 2010

    iPhone 4

    I haven’t said much on here lately, but I figured that I would add to the stream of reviews, criticism and praise for the iPhone 4. I picked mine up last Thursday at one of the local Apple stores, and despite a few problems with iTunes (error 13019) and that my new 32GB iPhone 4 can’t hold as much content as my old 32GB iPhone 3GS, it’s been an overall pleasant experience. Apple really does have the migrating between iOS devices down at this point — I have content that I created on my 16GB 1st gen iPod touch back in 2007 on my iPhone 4 still. I have text messages that I sent when I first got an iPhone in 2008. Apple has made it so easy to upgrade the devices that at times it doesn’t feel like you got a new phone — everything is exactly where you left it.

    My experience with picking up the phone was interesting. Like probably thousands of others, I naively thought that with Apple allowing pre-orders this year that picking it up at the store would be cake. In addition to that mistaken thought, I had actually never bought an iPhone on launch day — I bought my original iPhone almost 6 months after launch, skipped the 3G and picked up the 3GS a few days after launch. Which means that I had very little idea of just how many people would be showing up for the 4th iteration of the iPhone.

    Making the experience even more interesting, I had a tight time schedule — I had to be back at my house by 10 AM for a prior appointment. After not moving for about 2 hours and still not being able to even see the Apple store, I was able to get to the front of the line and complete my iPhone purchase just over 5 minutes later.

    Complicating my upgrade was the fact that I used one of other lines on our family talk plan to get the discounted (i.e, subsidized) price. That meant that I had to play games with my SIM cards at home. Trimming down a SIM card to micro SIM size sounds tricky when you first hear about it, but since AT&T will give you a new SIM card anytime you request it for free, it’s not really that risky. On top of it, SIM cards are mostly plastic. All of the critical parts are located underneath the pads.

    After all of that, though, I finally had a working iPhone 4 in my hands. I knew that coming from a 3GS that the speed increases wouldn’t be as dramatic as my upgrade from an original iPhone to the 3GS last year. And sure enough, it wasn’t. But that doesn’t tell the full story — while the iPhone 4 doesn’t seem that much faster, it’s the little changes that make it feel like a more refined machine. Animations are smoother, transitioning between apps is faster, web browsing feels a lot more responsive. This is the iPhone tightened up all around the edges.

    Of course, it would be irresponsible for me not to mention the display. The best way that I can describe the display is that it’s basically like looking at a high end glossy print magazine and then realizing that you can interact with it. I still find myself looking at it in disbelief after I’ve been using lower PPI displays like my desktop machine and laptop. But even more amazing to me isn’t the display itself but the way Apple made existing apps and websites work with it. On normal PCs and Macs, adding a higher PPI display means smaller text. The OS doesn’t have resolution independence support. This means that it would be silly for us to go out an buy a 300+ PPI display for our desktops because we would be squinting at the text and tiny photos on the screen.

    But Apple built resolution independence into iOS (presumably building on the work they’ve put into MacOS X dating back to 10.4 days), which means that we can benefit from the higher PPI immediately in all of our apps. Obviously apps that have been updated for the new display look the best, but even apps dating all the way back to when 2.0 came out can take advantage of the new support. Text, controls, images (if they are higher res) all benefit from the new display on old and new apps.

    Going forward, I would be shocked if this functionality doesn’t turn up on the iPad when it gets updated to iOS 4.x. And Apple is almost surely going to finish up the implementation under MacOS X and use that to allow the iMac, MacBook and MacBook Pro to have 300+ PPI displays as well at some point. This is an area where Apple excels — by controlling both the OS and the hardware, they can introduce a technology like this without having to try to convince their OEMs why this would be great.

    As for the iPhone 4, I am so far very happy with this update. And I didn’t even talk about the other major additions and changes — camera improvements, FaceTime support and faster networking support. Despite some of the problems so far (3G touch of death and proximity sensor issues), this device will be the one people will talk about years down the road as being one of the best iPhones ever.

    Comments
    Apr 29, 2010

    MacRumors: Adobe CEO Responds to Steve Jobs' 'Thoughts on Flash'

    Narayen again returned to his claim that Flash is an open standard, calling Jobs’ claim of it being closed “amusing”. Adobe’s view of the world is multi-platform, allowing it to provide developers with tools to easily deploy their content across many devices and platforms, a concept that may not to Apple’s benefit in trying to lock customers in to its ecosystem.

    So what he’s saying is that Apple is pushing for open standards like HTML5 and that’s just another way to lock customers in to its ecosystem? Riiiiiiight… moving on:

    In conclusion, Narayen noted that customers have the ultimate voice in the dispute, and he believes that multi-platform solutions like Adobe’s will win out.

    According to Adobe’s CEO, Flash is a multi-platform solution while HTML5 is not. Uh, say what?

    Adobe is framing this as an Apple vs Flash battle — i.e, one proprietary solution vs another. Apple is framing this as an HTML5 vs Flash battle — i.e, a proprietary solution vs an open solution. Given their respective positions, it makes sense that they would each frame it in the ways they have.

    But consider this - who has more at stake in this battle? If Apple wins, Adobe loses their lock on interactive media on the web. If Adobe wins, Apple starts supporting Flash in iPhoneOS 6.5 or whatever and things continue as they were on the desktop. Adobe appears to be battling against someone with very little to lose. On the other hand, Adobe has a lot at stake. By spending all of their time focusing on Apple, they risk losing everything.

    And that doesn’t strike me as being a particularly good move.

    Comments
    Apr 20, 2010

    Screw You, Gizmodo

    I wasn’t planning on saying anything here about the recent iPhone leak and Gizmodo’s handling of it. In my opinion, Gizmodo reporting on the iPhone was something that was well within their rights.

    But last night, Gizmodo (I’m not linking to it as I don’t want to reward their behavior) posted an article on the Apple engineer who allegedly left the phone at a bar. In the article, they revealed his name, his photo and even parts of a conversation that they had with him. And then earlier today, they posted another article with portions of his Twitter stream and more details, including that it was his birthday when the phone was lost. At this point, it appears that Gizmodo just doesn’t care that we are talking about an actual human being here and has instead decided to go for pageviews at all costs.

    I’m am very disappointed to see Gizmodo stoop to this level — I would expect this from a supermarket tabloid when talking about a celebrity or a politician. But this is very different — we are talking about a man who made a serious mistake in his career, but also hasn’t stepped onto the public stage. I don’t think anybody wants to have Gizmodo following them around paparazzi style, reporting on everything they do to the world. Politicians and celebrities also don’t want this constant attention, but they willingly stepped into the public eye.

    Ask anyone who’s ever worked in an industry where you are creating something new — software, hardware, designer, entertainment, it goes on and on — if they’ve ever made a mistake and accidentally screwed up somewhere along the line and inadvertently released some detail about what they were working on. I’m betting that most people have. And those that say no are either lying or haven’t been doing it long enough. Mistakes happen. Most won’t be at the level this man made, but that doesn’t excuse Gizmodo for publicly attacking him via their website.

    That’s just wrong and Gizmodo needs to come out and apologize for this behavior.

    Comments
    Apr 16, 2010
    wellplacedpixels:

Cocoa Box Design’s Penultimate

This little app on the iPad might be able to replace the piles of composition books and moleskins that I buy.  The only thing that I would suggest would be an iPhone version as well.  But for $3, I can certainly be happy with this.

    wellplacedpixels:

    Cocoa Box Design’s Penultimate

    This little app on the iPad might be able to replace the piles of composition books and moleskins that I buy. The only thing that I would suggest would be an iPhone version as well. But for $3, I can certainly be happy with this.
    Comments
    Apr 15, 2010

    Adobe

    I’m fairly agnostic about the whole Adobe-Apple scuffle. But I can certainly see why Apple wants to keep Adobe from controlling the user experience for their product. Adobe sees their user’s machines as something that belongs to Adobe, not the user. The user is just a way for Adobe to make money and you can just about see the contempt Adobe has for them.

    Case in point - I just got a notification under Windows that Adobe Reader had an update. As part of the installation, it placed a shortcut for Reader on my desktop. I noticed this while the installation was going, so I removed it right away. As the installer was exiting, it noticed this and placed another shortcut on my desktop.

    Someone had to code it this way - this wasn’t an innocent oversight. They actively put in a check for that desktop shortcut and went against the wishes of the user in this case.

    And you wonder why Apple might not want Adobe exerting their influence over the iPhone and iPad?

    Comments
    Apr 15, 2010
    I picked up a new iPad case last night — Incase’s Neoprene Slip Case.  It doesn’t have a built in stand like the Apple case, but it did come with a cheep little piece of plastic that can apparently be flexed into place to serve as a stand.  Oh well.
Compared to the Apple case, this one is a vast improvement.  I will miss the ability to prop up the back of the iPad in the landscape orientation for typing, but not having dirt collect on the display and the case will more than make up for it.  As an additional bonus, the inside of this case is soft material that Incase describes as a “faux-fur lined interior”.  This means that any fingerprints that the iPad has picked up while in use get wiped away when you slip it back in the case.  Very nice.  I have been able to put away the microfiber cloth that I was carrying with the iPad because of this feature.
My only complaint with this case would be getting the iPad into it — it slips in easily enough, but there is a lip that you have to flip up over the iPad to completely cover it.  Because of how snug the case is, it is not very easy to flip over that lip.  Apparently Incase also offers cases that zip at the top instead of flipping over the device.  If given a choice, I would probably opt for that model instead.

    I picked up a new iPad case last night — Incase’s Neoprene Slip Case.  It doesn’t have a built in stand like the Apple case, but it did come with a cheep little piece of plastic that can apparently be flexed into place to serve as a stand.  Oh well.

    Compared to the Apple case, this one is a vast improvement.  I will miss the ability to prop up the back of the iPad in the landscape orientation for typing, but not having dirt collect on the display and the case will more than make up for it.  As an additional bonus, the inside of this case is soft material that Incase describes as a “faux-fur lined interior”.  This means that any fingerprints that the iPad has picked up while in use get wiped away when you slip it back in the case.  Very nice.  I have been able to put away the microfiber cloth that I was carrying with the iPad because of this feature.

    My only complaint with this case would be getting the iPad into it — it slips in easily enough, but there is a lip that you have to flip up over the iPad to completely cover it.  Because of how snug the case is, it is not very easy to flip over that lip.  Apparently Incase also offers cases that zip at the top instead of flipping over the device.  If given a choice, I would probably opt for that model instead.

    Comments
    Apr 15, 2010

    Neven Mrgan's tumbl: Malicious intent

    Neven Mrgan has an interesting anecdote about the headphone jack on the original iPhone.  Dunno if it’s true or not, but given how complex it is to get a consumer product out intto the market and the fact that they fixed it in the next iteration of the design (iPod touch just a few months later) gives it a lot of credibility in my mind.

    Comments
    Apr 9, 2010

    Marco.org: iPad case woes

    I’ve been using my Apple case for the entire week now, and I have to say I’m rather disappointed with it myself. It’s only redeeming value is having the ability to prop up the iPad quickly for typing.

    Besides the dust, I also managed to get a couple of small hairline scratches on my display as well while in the case. These appeared after only a days worth of usage.

    At this point, I’m probably going to return this case and get something else instead - I like Marco’s suggestion of a sleeve for transportation, but having something that can double as a stand would really be nice too.

    Comments
    Apr 9, 2010

    iPhone OS 4.0

    Good set of announcements yesterday from Apple. Nothing earth shattering, but overall it’s good progress for the iPhone OS. I was a bit disappointed that the iPad isn’t getting 4.0 at the same time as the iPhone, but given the circumstances, it’s not really surprising.

    As for my predictions, I really only got the multitasking right - though some of the implementation details are off as well. I will be very interested in seeing how the new OS alongside any new hardware that comes out this year will perform with multitasking. On paper, it looks really good. But just like all new technologies that Apple has introduced into the iPhone OS, I expect there to be a couple of iterations before they get the right balance of battery life and performance.

    As for printing, since that is more of an iPad feature, I would bet on seeing that when Apple puts 4.0 on the iPad in the fall - perhaps a 4.1 release.

    Overall, there is a lot of stuff in the 4.0 SDK that can’t be talked about at this time that is going to make a positive impact on the platform for years to come. This version is very much like Snow Leopard in that it lays a lot of groundwork that won’t be immediately obvious to the end user. Expect to see some really cool things on the various iPhone devices over the next few years.

    Comments
    Apr 8, 2010
    The big event starts in a little over half an hour from now.  Oh wait, that’s not the big event everyone is waiting for?

    The big event starts in a little over half an hour from now.  Oh wait, that’s not the big event everyone is waiting for?

    Comments
    Apr 6, 2010

    Marco.org: iBooks and private APIs

    iBooks’ use of tons of private APIs is frustrating on a few levels, the biggest that it makes all third-party reading-related apps second-class citizens.

    I won’t be able to offer many features that iBooks has (such as a true brightness control or integration with the system dictionary), but my…

    Marco makes some good points here, but I think the APIs that iBooks is using might only be private until 4.0 comes out.  A lot of people have been asking for a system dictionary and access to the brightness controls.  I think Apple will do the right thing and make these available to everyone.

    Comments
    Navigate
    « To the past Page 1 of 6
    About