PowerBook Performance for Java Development? 255
brasten wants to get to the core of this issue: "I'm in the market for a new development notebook. I would like to jump into the Apple world and pick up a PowerBook. However, compiling very large Java applications of course takes some time, and so raw processing speed is a factor. I have been unable to find solid data on how fast a 1.33GHz PowerBook runs against the modern x86-based notebooks. Does anybody have any information that could help me compare?"
tests (Score:5, Informative)
However that was 2 years ago and these days a x86 machine is probably faster (and cheaper if this is a concern.)
go for it.. (Score:2, Informative)
My Impressions.. (Score:5, Informative)
In saying this, I *much* prefer developing on Mac OS X compared to Windows. The document centric layout and general usability of OS X makes the whole process a lot more enjoyable.
At the end of the day I'd go into an Apple store and ask to test one out. Try it with some big project and judge for yourself.
New chips on the horizon (Score:3, Informative)
Then there are rumours of new PPC chips from IBM
(a) G5 PPC 970
(b) G3+altivec PPC 750VX - just a rumour none of these chips seen in the wild.
The bottom line, Powerbooks based on motorola G4s are soon to be phased out.
PowerBook vs Intel box (Score:4, Informative)
Go for it (Score:5, Informative)
Between semesters, I returned to work and since my employer was unwilling to buy a new machine for just 2 months (my laptop was reassigned, they offered me a P3 desktop for a roaming job), I brought in my personal PB17, which I bought for my studies. I already knew, that it's a fine Java development platform, but I was unsure about a large J2EE project in a Windows company.
Integration went very smoothly (Of course it runs Exchange, yes Ms Office no prob) and even Bea WebLogic (assign the right jdk) and Together/J was a no-brainer.
Eclipse is a tad slower, but after getting used to it (key assignments and such), I'm just as productive as on my old Windows Laptop.
Summary: If you like Unix and need a laptop, there is no way around a PowerBook. Integration into the Windows world is easy. All the Java tools are available and run w/o problems at acceptable speed. Just make sure you have enough RAM, 1G is minimum for a Java-Pro.
Enjoy, I don't think you ever want to go back. Powerbooks are addictive.
My impressions... (Score:5, Informative)
Speed vs. usability (Score:5, Informative)
I've tested a lot of different platforms with that program, and it seems to follow SpecInt/Float benchmarks pretty well, if you look on how it compares to different systems, eg. a Sun SparcStation 5 scores around 4.9, making it 20 times slower than a Pentium III 800MHz PC, which also SpecInt/Float benches show.
So the PB at 1.33GHz will run like a PIII 1.33GHz, and you'll have to make up with yourself if thats sufficient for you. A P4 2.6GHz with HT scores around 216.
Also, if you decide to buy an iBook, be aware that it CAN'T run with an external monitor in any higher resolution than it's internal LCD, something my old Dell latitude from 1997 does with no problems at all
I don't know if that is true for the PB, but it sucks bigtime. I'm very disapointed with my iBook on that fact, along with some other assembly issues that other people with iBook G4 also seems to have.
If you're going to spend most of your time in Eclipse, I'd save the extra bucks and go for a PC.
-H
Re: My Impressions.. (Score:5, Informative)
The general workflow of OSX is much better, for the bigger projects i think Xcode (note, I THINK) can handle java apps.
So yes i agree with the parent, take some Java code to a Apple Store / Reseller and ask em nicely if you can test it.
Re: My Impressions.. (Score:5, Informative)
Powerbook vs iBook (Score:5, Informative)
P'books can happily display a very high resolution desktop on an external display, and will properly span the desktop over the two displays.
If you're willing to do hairy firmware hacks, this feature can be added to an iBook as well, but I won't point you at references, as I'm disinclined to help you bust your iBook.
Nice to see the final sentence though: I'd save the extra bucks and go for a PC. Yes, iBooks are cheaper than the equivalent PC laptop, and P'Books are generally the same or less than the PC equivalents.
Benchmark scores (Score:5, Informative)
A dual G5 placed 15th in the list of submitted scores:
1. 554.92 Sun 1.4.2 WinXP 5.1 Sun. 1.4.2; IBM; P4 3GHz
[...]
15. 226.23 Apple 1.4.1_01 MacOSX 0.2.7 Apple Computer, Inc. 1.4.1_01; Apple G5; PowerPC 970 2x2Ghz
there's a lot of x86 ahead of PPC. I've got no axe to grind here, I have a powerbook myself and I find it a pretty decent working environment - partly I wanted one because I use wintel in work and wanted to get away from that when doing my own stuff.
Re:tests (Score:5, Informative)
Eh? What's with all them iadd, isub, iXXX bytecodes, then?
No, Java has different bytecodes for floats, doubles, integers and longs. How the JVM actually handles those bytecodes is, of course, a matter of implementation (as long as it conforms to the spec).
However, all JVMs I've seen so far handle ints and floats differently. Using floats exclusively, as you claim, would be silly.
If you can wait a month or two... then do. (Score:5, Informative)
xcode my friend... (Score:5, Informative)
Working Fast
The distributed build feature leads Xcode's performance technology lineup. Using Rendezvous, Xcode can farm out your project's compilation to idle desktop machines or even an Xserve build farm, drastically reducing compile time. Enabling near-instant turnaround for bug fixes, Xcode's Fix and Continue feature lets developers change code while the app continues to run.
Rendezvous, hard to spell, a pleasure to use.
Re:Speed vs. usability (Score:3, Informative)
The iBook G4 is easily modified to enable screen spanning and can run resolutions higher than the built in screen. Just look for a program called "Screen Spanning Doctor". It runs a script to update the ibooks firmware. It works perfectly.
along with some other assembly issues that other people with iBook G4 also seems to have.
No. If your talking about the logic board problem that was with G3's
Re: My Impressions.. (Score:5, Informative)
I have a TiBook, 667 MHz, 512MB RAM.
Re:Benchmark scores (Score:5, Informative)
One of our contractors at work was saying to me the other day that when I/O is taken into consideration, they're seeing speed on their PowerBooks outclass their AMD MP servers... they narrowed it down to Apple's implementation of the JDK just doing a very good job moving large amounts of data around.
The real trouble here is that it's so hard to say "platform X" is faster, when it really depends on the application being executed. You might find that the PowerBook is a great machine for your first project, but your second project which is less I/O and more CPU intensive doesn't run as well.
I tend to think that ultimately, you can never have the fastest platform at -all- the tasks you want to perform when developing, so the best bet is to buy what you're most comfortable using and be aware of the strengths of your target platform when developing. With Java being cross-platform, this is more difficult because you may be deploying on a range of end-user machines.
Sigh... the perils of an open world.
Speed is not the only issue (Score:4, Informative)
But what I do like is that I can easily have MySQL and Sybase running in the background, a bunch of Office v.X apps open, and still do compilations with little performance penalty. OSX seems to be the master at keeping many apps open without being like mollasses in January -- which is contrary to most of my PC experiences.
And Java works *well* on OSX now. Seemless. Xcode is great (and free), too.
Just my 2 cents (Canadian).
-psy
Overall its slower than x86 (Score:4, Informative)
For compiles, the x86 processors are just always faster. For runtime performance the x86 processors are just always faster (except the Dell laptop). For general use and stability, the Powerbook is just always better. I don't have to worry about IT coming to check my machine for virii. Most of my unix tools work without a hitch without having to launch an internal OS as I do on windows, Apple listens to and responds to bug reports, and my Powerbook is still better at living in a mixed OS environment than my XP boxen.
If price is a concern - x86 is still the way to go, even if the G5 is under consideration. If being able to coexist happily with much of the Linux, Unix, open source world is more of concern - I've found that OSX is the ideal platform. All of the pleasure of dealing with Unix with none of the pain of HAVING to deal with the lacking areas of Linux
my own experiences (Score:5, Informative)
Now I work for a software consulting firm doing fairly high-end Java development. All of that development takes place on Windows, and is deployed on Unices of various flavors.
Lately I've tried using my Mac for development on Java. I really, really have. But I have to say this, though it pains me to do so: it sucks for Java development. I thought, "Wow, a Unix based system with a great GUI! What could be better! I have a local CVS repository, all the tools like Ant, and none of the Windows wierdness!" Yet somehow, Eclipse doesn't work right. NetBeans, well, it's still NetBeans. IdeaJ doesn't look right and takes forever to launch. WSAD doesn't exist. Xcode, for all the hype, doesn't make sense to me: I'm sure it's a great tool, but I've worked with more than thirty different IDEs in my career (not counting revisions), and Xcode just feels wrong somehow.
My Windows box runs these apps flawlessly (except Xcode and NetBeans, which sucks on Windows too), and I'm so much more productive than when I use my OSX box that it's not funny. It's not so much that you can't do it on Mac OS X, but that because of the additional support, it's actually easier to do it on Windows. I spend less time fscking around with configuration, alpha builds, gui bugs, and slowness.
I use my Macs for a lot of stuff, and I'm about to migrate my mail/web server from Linux to Mac OS X server. But my Java development will continue to be done on Windows for a while longer.
Re: My Impressions.. (Score:5, Informative)
Among lonely Slashdot posters, maybe. Among professionals, the opposite is true.
ProjectBuilder was woeful
While Project Builder had its share of annoying bugs and omissions, it was still the best IDE available at the time for Objective C development, period-end-of-paragraph.
Xcode is now the best IDE available for Objective C development.
still noticeably slower than CodeWarrior
Xcode compiles are nearly as fast as CodeWarrior. When you figure in how much nicer Xcode is to use, it's a wash. When you calculate in the benefit of distributed compiling even just between two machines, Xcode wins big.
Xcode does have distributed builds and MP support, but they probably won't be of much use if you're working on a single PowerBook.
All he has to do is get on a LAN with at least one other Mac. Poof: compile times drop significantly.
Re:Java and misc. development on Mac (Score:5, Informative)
External monitor and iBook G4 (Score:2, Informative)
This is only true if you blindly follow what Apple tells you on their website. But this is /.! We don't need no stinkin' rules! The fact of the matter is the iBook graphics hardware is identical in every respect to Powerbook hardware, which has the ability to drive external displays at different resolutions either mirrored or as a second display. There is a hack available [xlr8yourmac.com] to resolve the Apple-induced limitation.
I applied this hack the same afternoon I got my iBook G4 12", and it worked like a charm. /. Apple geeks unite!
HBHMy Tests (Score:3, Informative)
G3 IBook 700MHz, 640MB PC133 RAM, 20GB HD, Combo Drive
12182ms run time
820833 dhrystones/sec
G4 PowerMac Dual 800MHz, 1.25GB PC133, 80GB HD, Super Drive
9892ms run time
1010917 dhrystones/sec
G5 PowerMac 1.6GHz, 1.25GB PC333, 160GB SATA HD, Super Drive
5596ms run time
1786990 dhrystones/sec
You can test your machines to see where you stand. I am suprised at how little difference there was between the G3 and dual G4.
AC
Re:Forget about the speed (Score:4, Informative)
For $350, you can't go wrong.
Metrowerks Codewarrior (Score:4, Informative)
I say go for the PowerBook. You'll be getting a great all-around system that you'll love using. I just got a 1.25GHz 15" PowerBook, and it is by far the best computer I've ever owned.
Re:Benchmark scores (Score:3, Informative)
Sun 1.4.2
Apple 1.4.1_01
Apple's since released 1.4.2, which apparently includes some substantial performance enhancements.
Re:Does speed really matters that much? (Score:5, Informative)
On the other hand I am just so amazed, after trying the relic 700MHz PIII laptop in the office, at how much faster my 667MHz PowerBook is (even with iTunes taking 10% of the CPU).
Imagine how it will be 18 months from now.
Wait for g5 Notebooks (Score:5, Informative)
IBM is already claiming a massive power cut. Check The Register [theregister.co.uk]. My advice? Certainly wait for the next product cycle, and if you can, wait for a second revision g5.
Oobob
RAM, JBuilder X, look & feel (Score:5, Informative)
1) You definitely need lots of RAM. Compilation speed is just fine on my lowly 600 Mhz G3 iBook (20 seconds to rebuild all 100 or so classes (10 K LOC) and create a JAR file) but my IDE (JBuilderX) typically takes up 120 MB of real RAM, 500 MB of virtual memory. I have a total of 384 MB RAM and so if I am using any other RAM-hungry apps, my machine is running the disk a lot (swapping).
2) The latest release of JBuilder (JBuilder X) is much improved from previous versions. Lots of refactoring support. It is not yet officially available for OS X but I managed to get the trial version of JBuilder X Enterprise to install with the help of a note on the Borland community pages, and it runs fine. Details of how to get it running on OS X are here [macosxhints.com]
3) Java GUI applications look so much better on OS X (Panther, Mac look & feel) compared to other platforms. This is an advantage because you will get an esthetic boost from looking at your app while developing, but it might be considered a disadvantage if (as is likely) the main target platform is Windows (where your beautiful GUI won't look nearly so nice).
Some drawbacks on Apple's JVM production (Score:4, Informative)
Please, folk, yes, the Powerbook is now officially great for hacking Java. James Gosling has used one (as has been remarked) and apparently the JavaONE conference was full of 'em.
Here's all you need to know:
1.) Macs are slower in "anecdotal subjective tests" using Java on a "util of perceived quickness/dollar" ratio.
2.) Apple produces its own port of the JVM, so you're often an official release or two behind Sun's JDKs (so Linux on x86 or Windows).
3.) Java3D is apparently finally out on the Mac. Sheesh. (Another "post a month" topic on the list)
4.) The Apple JVM has historically not been as sharp as Sun's on Windows. Witness the 1.4.1 release on OS X 10.2 -- later unreleased through Software Update, with Swing that's buggy as heck. And I still haven't seen a J2EE specific release.
5.) Prepare to pay for the latest OS (10.3 required for 1.4.2) as well. That's a $129 surtax for Java 1.4.2 that you're not paying on Windows 2k, much less Linux.
And the all-important 6.) Yes, you will look and feel 733+ running your development on a Powerbook.
I use a 1 GHz iMac to hack and though Eclipse's speed is just above a 533 Celeron I run (and much less than my 2 GHz P4), it does just fine. Still, keep an x86 box around for some testing at some point. Write once, test everywhere.
Java building on a TiBook (Score:5, Informative)
Our project builds in the following times: (minutes:seconds)
2:27 700 mHz P3 with 256 megs RAM
1:56 800 mHz Duron with 1 gig RAM
1:09 1.5 gHz P4 with 512 mb RAM
0:56 1.25 gHz G4 (15" AlBook) with 512 mb RAM
Bear in mind that this is 1.3.1, and I don't have any stats for 1.4 onward.
-fred
Re:Powerbook vs iBook (Score:5, Informative)
I've seen those "cheap" Dell and Gateway notebooks. Try really using it for a while. They fall apart. I'd never trust them to take the travel abuse my PB takes. They just don't handle it.
Re: My Impressions.. (Score:3, Informative)
Actually I've been a professional (i.e., making my living from it) Mac developer for about 10 years now. I'd have no problem switching to Xcode if I thought it was an improvement on CW - it's certainly getting there, but I'm pretty sure I'll pass on it for the next couple of versions.
Xcode compiles are nearly as fast as CodeWarrior.
If you honestly believe this, you've not used either of them heavily enough. An example I can quote you is a project that takes about 45 minutes to build in CW, takes about an hour and 15 minutes with Xcode. Obviously once you start throwing distributed builds or multiprocessing in then your build times go down, but gcc's precompiled header support (even with the changes in Xcode) just isn't as quick as CW.
Re: My Impressions.. (Score:5, Informative)
Untrue. Check your Energy Saver control panel settings. You'll find that the default is to clock down when unplugged.
OS X is great for Java (Score:3, Informative)
Java apps look and feel great on OS X, much better than on Windows. With the toll-free Java Cocoa bridge, Java is an almost native language like Objective C, and UI design with Interface Builder is 1000x better than Swing.
Re:I'd want to too, but only with J2ME 2.0 ... (Score:1, Informative)
I believe it supports J2ME development.
Powerbooks perform well (Score:2, Informative)
In general the linux notebook is faster in compilation time and in execution time, especially in java vm startup time.
The precise factor depends on what you do. My general impression is, that apples vm implementation can be improved. Some things (big decimals) are a factor 20 slower than on the linux machine. Other things are nearly as snappy on both machines.
OS 10.3 has brought a dramatic increase in java speed.
In general I would say the powerbook is a factor of 1.5 to 2 behind the Thinkpad.
But:
working on a Powerbook is MUCH more comfortable in everyday use. The Network integration works without action required from you. The same with M$ documents or the use of a variety of really great code editors. On Linux I use jedit. No more choice since I am not an emacs or vi fan.
And:
As a developer with many years experience I must say that its bad advice to have a fast machine. If your machine is slower than the users machines you can be sure that your applications feel snappy on any users computer. If your computer is the latest blaster you can only guess (and pray).
So feel free and secure to use a powerbook or iBook with >= 867 MHz and ENJOY...
It simply is a pleasure!
Re:Go for it (Score:2, Informative)
I develop code for a large financial system that targets Weblogic 7.0, and with the advent of JDK 1.4's availability on the Mac last year, I was able to not only develop with the usual tools, but even leverage Weblogic Integration (WLI) and Weblogic Workshop (Web Services Development Tool).
Re: My Impressions.. (Score:3, Informative)
Yes, you can clock down, but if the CPU needs the power, the setting clocks up.
In other words, during the compilation period, the CPU runs at full power, and only steps down when its not fully needed.
On an x86, you cannot run at full power without draining your battery considerably.... So, while you may be able to disable it, you lose a lot of battery life.
On the mac, the few secods of compilation are not enough to shorten the batterylife.
You just cannot get around the physics of a CISC architecture that has to draw far more power than a RISC one.
Re: My Impressions.. (Score:3, Informative)
I've used powerbooks and the centrino laptops side by side, and I'd have to say that for 3d rendering/modeling using blender, and for photoshop work that the centrino is somewhat faster.
a brief artical about laptop preformance is available at http://www.pcmag.com/article2/0,4149,1202685,00.a
for me the choice was betwene a 15" powerbook and a thinkpad r40 and after doing some research and trying out systems I chose the thinkpad.
The apple does come with a superior operating system, but they tend to be price prohibitive.
Re: My Impressions.. (Score:3, Informative)
Interesting attempt at making the powermac's inability to step down in speed while on batteries seem like a feature though. Bravo.
Future Powerbooks (Score:2, Informative)
java on OSX (Score:2, Informative)
The real issue is apples/apples comparison. A badly architected java application ridden through with cyclic dependencies would take longer to compile on a machine with less RAM than it would on a machine with more RAM.
So, follow the advice of those who suggest taking an existing project and doing side-by-side for compilation benchmarks.
When it comes to actual productivity, ask yourself whether OSX is closer the the final environment it will run on; most often, if this is a *NIX server, OSX is your best bet. If your server is a windows server, well, then . .
Regarding productivity, the best advice is try it yourself; there are religious wars over IDE's (I'm a netbeans guy), but what *you* want to use is the real tool to use in benchmarks.
Now that objectivity has had its day, here's what i experienced:
compiling: OSX 1GHz Powerbook, 1Gb RAM is about 20% slower than the exact same project, compiling a well-architected web-application (not a single cyclic dependency) exact same Ant buildscript on a Windows 1.7 GHz P4, 1Gb RAM. Project size : 240 classes, about 20 jars used.
IDE usage: (same machines as above) Netbeans 3.5 runs noticeably faster on Windows than on Mac. No benchmarks, but estimate about 30%.
Overall: If lots of time is burnt on IDE response, you're doing something wrong. More design and less hacking is called for. The productivity of OSX is easily 50% more for me; access to symlinking for eliminating multiple jar's, directories, etc., actual scripting for automation if repetitive tasks saves me a bundle.
Your experience may be different, though I can recommend taking the time to check out OSX for yourself. You also will have access to a machine that is fun to work on. After 15 years of Windows, I find OSX a refreshing and pleasureable experience. Much more stable too
Another data point (Score:4, Informative)
The result:
the Powerbook was three times faster than the P4 notebook.
I suspect the PowerBook's faster speed is due less to the CPU than to the I/O subsystems and disk. In our build neither type of CPU sits there pegged at 100%. The P4 did seem to be riding closer to 100% though. It also spent the entire time blowing hot air like a hair dryer. The PowerBook fan very rarely comes on. Overall the PowerBook has been a great development platform for Java. I run eclipse 3M6 on it and while its not as snappy UI-wise as I'd like, once it gets "warmed-up" visiting all the eclipse perspectives and views its not bad at all. Clearly caching is important for eclipse performance. This brings me to the final point which is that on either machine if you want to use a Java based IDE you will need 1Gb RAM minimum. The IDE's are just pigs for memory. One warning, while running eclipse 2.1 on Windows I ran into nasty eclipse-crashing problems with running out of windows resource handles which I was never able to get around. (The eclipse developers couldn't reproduce this so YMMV.) The PowerBook hasn't had any such problems.