VelociPeek

Eric’s weblog on tech

Tuesday, October 30th, 2007

OS X Leopard Test Drive - Part 2 - 64-bit

Song of The Day: What’d I Say - Artist: Ray Charles



Over the weekend I started a post about OS X Leopard. Thought I’d post a follow-up or two about the features. Most have probably read or heard about the Dock and Finder improvements, which include reflections, Cover Flow and Stacks.

Those alone could be enough for one to justify a purchase, but I thought I’d write a few thoughts about one of the less emphasized features (i.e., at least lately) of OS X Leopard: full 64-bit support in the OS and Xcode 3.0. BTW Xcode 3.0 is offered as an optional install from the OS X Leopard installation disc. From the Apple website Xcode 3.0, Cocoa, and 64-bit blow the ceiling off of memory and data restrictions:

  • 64-bit addressing of up to 16 exabytes of virtual memory and 4 terabytes of physical memory
  • Full 64-bit arithmetic
  • 64-bit development tools
  • 64-bit performance monitoring tools
  • Seamless deployment
  • LP64 data model
  • Common source base support

Granted, most probably won’t see much need for it immediately, but its introduction paves a great evolutionary step forward. For example, Leopard applications running on Intel-based Core 2 Duo processors may take advantage of the x86-64 instruction set. One area where this may make a difference is in software rendering for games, etc.

There was an announcement by Apple a while back regarding the use of LLVM with OpenGL for software rendering. When particular hardware features are unavailable LLVM helps fill the gap. Using the 64-bit version could improvement performance substantially.

Furthermore, as mentioned, if an app or OS needs over 4GB of memory, then 64-bit removes that boundary, allowing up to 16 exabytes of VM or 4 TB of physical! Don’t see many reasons a typical consumer laptop or desktop would need such capability; however, intense graphics and video applications (i.e., data intensive in general) could substantially benefit from increased memory and larger file pointer sizes.

As a little test drive for Cocoa and 64-bit, I recompiled my simple Cocoa-based dentp program (i.e., a pinger). It was pretty easy, but I ran into a few initial gotchas due to the way I loaded my Xcode 2.x project with Xcode 3.0.



Initially, I just adjusted the Project Settings within Xcode 3.0 to use Architectures 64-bit and changed the Base SDK Path to point to “/Developer/SDKs/MacOSX10.5.sdk” because it was pointing to the “MacOSX10.4u.sdk” from my previous installation. It built and ran, but after using the file command on the dentp binary, I noticed that it still read:

> file dentp
dentp: Mach-O executable i386

Once I switched my “Cross-Develop Using Target SDK” under the General tab under Project Settings to use Mac OS 10.5 (or Current Mac OS) and the Active Target to x86_64, I eventually saw the desired file type:

> file dentp
dentp: Mach-O 64-bit executable x86_64



However, I still wasn’t able to compile for multiple architectures together (i.e., i386 and x86_64) as I wanted. For example, if you do the following on the Xcode binary it will display four architectures:


[newton]:/Developer/Applications/Xcode.app/Contents/MacOS]
> file Xcode
Xcode: Mach-O universal binary with 4 architectures
Xcode (for architecture ppc7400): Mach-O executable ppc
Xcode (for architecture ppc64): Mach-O 64-bit executable ppc64
Xcode (for architecture i386): Mach-O executable i386
Xcode (for architecture x86_64): Mach-O 64-bit executable x86_64

To build a universal binary for all four I had to Edit active target “dentp.” I added the the additional 64-bit targets to the default i386 and ppc target Architectures and I was golden:


[newton]:~/code/dentp2/build/Release/dentp.app/Contents/MacOS]
> file dentp
dentp: Mach-O universal binary with 4 architectures
dentp (for architecture i386): Mach-O executable i386
dentp (for architecture ppc7400): Mach-O executable ppc
dentp (for architecture ppc64): Mach-O 64-bit executable ppc64
dentp (for architecture x86_64): Mach-O 64-bit executable x86_64

Overall, it didn’t make my program any noticeably faster or better; however, it was, now, an official 64-bit binary running on OS X Leopard, which is pretty cool. Also, no additional CD requests needed to get 64-bit support with Leopard (umm…like with Vista? :) and no reason to release multiple binaries on the Mac platform! That’s the beauty of universal.

And to think that I would have needed a super computer a few years back!

Perhaps, a few notes on other features in the next few posts…

Tags: , ,

Monday, October 29th, 2007

Marine Corps Marathon 2007 Finisher

Song Of The Day: Breathe - Artist: The Prodigy

Yesterday was truly a great day for running. The sun was shining and the temperature a cool 50-60 degrees. Couldn’t really have asked for much better.

I’m mostly happy with participating, finishing, and running in honor and memory of the Warner family, but I am also happy with a 4:31:00 time. My wife’s time was an impressive 4:50:08, considering she broke her elbow and had surgery in September!

Congratulations to the marines, to all runners, and to supporters. When the photos are available, I’ll be sure to post a few of them.

Also, thanks to everyone that sponsored my run, donated to Team T*A*P*S, and helped me exceed my goal of $1K:

Alan and Sharon Peterson

Becki Elzey

Chris Glaves

Corporate Technology Partners

Julia O’Laughlen and family

Scott Warner and Family

Vic and Mary O’Laughlen, and family

Victor O’Laughlen, Jr.

It is appreciated!

Tags: , , ,

Sunday, October 28th, 2007

Marine Corps Marathon 2007

Song Of The Day: Keep Hope Alive - Artist: The Crystal Method

I’m off to Arlington for the MCM 2007!

If you want to track me, or us (i.e., my wife and I) during the race, you may either check in
“real-time” once it starts (8:00am) at:

Update: As of early this morning the site link for “remote” tracking changed, so please try the main site to track runners or maybe it will be back later this morning :)!

Real-Time

Or, you can register for “remote tracking” and e-mails can be sent to
you, or a pager, etc. (i.e., there is a slight delay):

Remote Tracking

Thanks for the all the donations and sponsorship!

Semper Fi!

Tags: , , ,

Saturday, October 27th, 2007

OS X Leopard Test Drive - Part 1 - Installation

Song Of The Day: Whole Lotta Love Artist: Led Zeppelin

I couldn’t resist the urge to visit the local Apple Store last night to buy an official copy of OS X Leopard during Apple’s Leopard World Premiere. The first 500 people would get t-shirts. I arrived rather late, so no t-shirt, but I had no line wait as well, so I was happy!

As I was walking through the mall, Tysons Corner, I saw multiple people in the mall corridors carrying computer boxes. If that’s any indication of future weeks then I suspect a good holiday season for Apple. :)

Once in the Apple Store, the place was buzzing with people. People checking out iPods, iMacs, and accessories.



Someone greeted me, I bought a family pack (~$200) of OS X Leopard, had an e-mail receipt sent to me, and I was done. No hoopla really! I decided to play with the new 20″ iMac for a while and asked a few questions, but that was it. I headed home with the intent of loading the OS by midnight :). Okay. So I was a little disappointed that I didn’t get a Leopard t-shirt. I knew there were only 500 available and I was late, but hey! Oh, well. I guess it’s my AOL t-shirt expecting nature (i.e., seems like t-shirts were currency at AOL). But I have some from last summer’s WWDC, so I shrugged off the feeling and got back to business–operation Leopard Install.

As a note for Photoshop Elements users and Mactel owners, I was told that a native build of Elements 6 would hit the street in Feb and that native Adobe Premiere was on its way as well. Not sure if the source was referring to a future release of Premiere Elements or not, but we’ll see if that comes out. Here’s a link on Adobe’s recent compatibility announcement: Adobe Leopard Compatibility

After getting home, and most being asleep, I plucked the install DVD in my iMac G5 first. It was not running the best previously because of an early beta version of Leopard on it (i.e., something to do with a bluetooth keyboard I think). However, I plugged in a USB Apple keyboard, chose to archive the old and to install (i.e., Archive and Install option) the new official copy, and my iMac was revived within an hour and a half. Installed and ran perfectly. All data in tact.

The refreshed Dock and Desktop look beautiful; I went to sleep with visions of sugar plums.

Today, I decided to be rather risky–not good practice–and I upgraded my main MacBook Pro without performing an initial backup. Maybe this isn’t entirely true because I already have my critical information and applications stored elsewhere for various reasons, so I know I could recover if needed. However, not to worry, Leopard installed and worked flawlessly within an hour. All data in tact.

Wow! I haven’t had an easier installation of a major OS in recent memory, except maybe with previous versions of OS X. Vista was a disaster. Linux is still touch and go sometimes. My experience with Leopard seems to compare only to installations using virtual appliances (e.g., VMWare and pre-configured OSes). And those are installed, pre-configured, and then packaged.

Truly impressive, and appreciated!

I know…controlled hardware environment coupled with a controlled software environment, etc. I just don’t think that line of skepticism resonates with most consumers. People want computers and software that work. They may allow some deviation with “flexibility,” but not at the expense of a 7 hour installation, for sure!

It’s the weekend and I have some things to do, like run a marathon tomorrow (!!), but I’ll write about the Leopard features I like, and any dislikes, when I get a chance.

Update:

Tags: ,

Sunday, October 21st, 2007

Marine Corps Marathon 2007 and T*A*P*S

Song Of The Day (iTunes Only):
Everything’s Magic

Artist: AVA

Hello Everyone!

As some of you may know, I have been training for my 3rd Marine Corps Marathon, which will be held on October 28, 2007. It’s amazing to think that the marathon is less than a week away!

After finishing last year’s race, I wanted to run for a charity if given the opportunity this year. I am pleased to announce that I will be running this year’s race with “Team T*A*P*S” to benefit the Tragedy Assistance Program for Survivors (T*A*P*S).

T*A*P*S is America’s only national non-profit Veterans Service Organization, which provides support services for all those coping with the death of a military loved one.

In addition to running with Team T*A*P*S I am also running in honor and memory of Pvt. Heath D. Warner (pictured below). The T*A*P*S organization connected me with the Warner family and I am very pleased to be running on their behalf.



Pvt. Heath D. Warner

You may read more about Heath and his wonderful family at: http://www.pvtheathwarner.com

As a little background on the organization and event, T*A*P*S is certificated by Independent Charities of America (ICA). Furthermore, T*A*P*S receives no government funding; however, through the Departments of Defense and Veterans Affairs, all families faced with a death of one serving in the Armed Forces receive information about T*A*P*S and its military survivor programs. One may read more about the T*A*P*S mission here.

Team T*A*P*S is working toward two important goals: to complete the 26.2-mile endurance event, and to raise contributions and awareness in support of the T*A*P*S’ vital mission.

Again, I feel honored to be running on behalf of those that have died for our country and in support of those families that have endured the loss of loved ones in the military.

If you would like to help by sponsoring my Marine Corps Marathon 2007 run please visit this link:


Contribution Page

Update: Because of the generous donations to date ($895), I’ve almost reached my ultimate goal of $1K!

All contributions to T*A*P*S are greatly and truly appreciated.

Tags: , , ,

|