Mac vs. PC Digital Photography Comparison Redux
Macmurph writes "Bibble Labs has released a lightning fast version of the RAW image convertor, MacBibble. According to MacBibble creator, Eric Hyman, "MacBibble 3.x is almost 10 times faster than the manufacturers software when converting RAW files under OSX.". Prelimenary tests indicate the Mac may be faster than PCs in RAW image conversion afterall. This calls into question the relevance of the the hotly debated article Rob Galbraith posted just 3 weeks ago and discussed here on Slashdot. Two thumbs up for the PowerPC G4's AltiVec vector processing engine, now being put to work in MacBibble."
The way I see it, multi-processor systems need to become more commonplace in the PC world. I don't know why they haven't. Is it a cost issue? My assumption is that's how the G4 performs so well, based on the fact that the multi-threading is what gave the program its edge.
that a multi-threaded app that utilized Altivec would beat a single thread that relied solely on the FPU to do the work...
I mean this is not rocket science! You would get similar results on most any machine using SSE2/MMX and hyper threading (perhaps...).
The reality is that these "benchmarks" are, in all actuality, never really objective. The benchmarks from a few weeks ago were likely done by somebody who is less than a fan of the PowerPC G4 chip. The results from this article were written by someone who writes software for Windows and has decided to write a clean program for the G4 chip with its Altivec engine. Kudos to him.
The reality remains that benchmarks prove little.
People who are in love with Macintosh have, throughout history, had the speed card in their deck. At this particular time, many would argue they don't. (Many would argue they do...)
People whoa re in love with other platforms, hardware and software, like their platforms for specific reasons, as well. Speed may be one of them.
But, I think, deep down, Mac users are attached to the platform for more than just speed. It's the efficiency of the operating system, the attention to detail, the clean interface, the simple plug-and-play, the good support, the Apple iLife products...
It's all in the eye of the beholder.
jrbd
So, PCs have 3DNow!, SSE and SSE2 depending on what processor you have. I have observed factor-of-ten speed-ups of certain code using hand-crafted 3DNow! vs. GCC floating-point. I wonder how fast his algorithm would be if implemented in 3Dnow! or SSE? I bet my rusty old K6-2/500 could put in a reasonable showing at his benchmark.
Stick Men
Hang on a moment. The last Mac vs PC test was conducted fairly - Photoshop on a Mac vs Photoshop on a PC. Using nearly-identical software the clear answer was that the fastest PC today was faster than the fastest Mac.
Now someone writes more efficient code for the Mac, then tries to claim that Macs are somehow quicker than PCs? Talk about an unfair test - that's like that's like writing a pi calculator in BASIC for the PC and seeing how quickly it can calculate 1m decimal places on a 2ghz P4, then writing one in assembler for a Mac classic. If the Mac classic wins, does that mean the Mac* is faster at calculating pi than a PC?
* Macs in general
Sorry, but my karma just ran over your dogma.
OK, I'm a techie and graphic designer (yes, rare).
When will people realise that raw speed, although useful to deisgners and artists, is NOT the be all and end all of which platform is preferable for this industry.
The main reason why macs are so dominant in publishing and art is becasue of the old (true) cliche - it just works. Designers are generally NOT a technical people, they think with the other side of their brain all day long, and technology confuses them, so even if a PC goes 20% faster at some filters, if they can't figure out problems with DLL's, conflicts, registry problems and having to reinstall Windows every 9 months then what is the better system for them?
How about usability and workflow (please comment on these only if you've used both machines (Win & OS X) in a demanding and very time specific industry to a large extent) - OS X hands down, allows me to ignore the fact that I am using very advanced technology that's incredibly advanced and *do my job*.
This allows me (and hundreds of thousands of others) to get a much bigger performance boost out of my work than a faster processor.
What are the productivity gains of perfect networking, great UI, better support for FireWire, BlueTooth, Wireless stuff etc etc etc.? It's not quantifiable but it is much more important than slightly faster processors, so lets just stop the whole thing there.
So in brief, processor speed important (and nice to see the Mac keeping up in one area) but not so important it outweighs the other thousand reasons design professionals use Macs.
-Nex
This sig has been deprecated.
Macs are faster in most algorithms with source available.
:
Typically the PowerPC (seen in most of the the www.top500.org list of fastest clusters) trounces Intel and even AMD at almost every benchmark.
Not just the 10 famous benchmarks as part of the composite in ByteMark , but at many other things such as the RC5 contest.
according to the RC5 benchmarks AMD is far slower than dual cpu macintoshes (half as fast). (source available for cor rc5 loops for most
processors)
The Mac Dual 1 Ghz g4 is faster than all existing dual AMD motherboards in RC5 benchmark by almost 100%.
21,129,654 RC5 keyrate for dual 1 Ghz g4 system ! And Now apple sells dual 1.25 Ghz stock and this week a 1.45 Ghz which would be even faster.
A dual 1800+ AMD MP get only HALF as many as a Mac! 10,807,034 rc5 keys !
Funny "Mhz myth" there showing itself I guess... Apple now is selling even FASTER machines than that one I mentioned made over one year ago, but with smaller caches and less fast read-write ram (it
now uses DDR on newest boxes).
The mac I mentioned uses a 2 MB L3 cache and no amd mp dual cpu boards I know about have any L3 cache at all, so maybe that is why some common macs are
over twice as fast, its not just altivec meager tweaks to rc5. AMD have similar , but less mazing vector ops.
The Pentium 4 takes many cycles (over 7?) to do a simple left shift. That is why the Pentium is MUCH slower than even the AMD or Mac.
Most modern CPUs can do a left integer shift in 1 cycle, any barrel position, not 7 slow cycles.
(Shifting is used a lot in decryption, encryption, graphics processing and many things).
Another reason the mac might be over twice as fast as an amd dual mp board is not just the 2MB l3 cache but the fact that mac can read and write to
a cold page of memory simulatneously FASTER than any AMD MP designs which are biased for linear access and streaming. Many memory scatter
benchmarks show this too. Apples newest DDR-RAM machines might not offer this feature though.
True, RC5 fits in primary cache of most machines, though interrupt services need larger caches depending on interrupt designs and load for the rest of the OS.
The RC5 benchmarks are never run with interrupts off, they use real world overhead.
The Macs made since september also can RAPIDLY service every pci slot almost simultaneously one 32 byte cacheline each if needed. How can it do that ? Three cool features of modern PCI
* out-of-order completion
* address bus streaming
* intervention
Out-of-order completion allows the memory controller to optimize the data bus efficiency by transferring whichever data is ready, rather than having to pass data across the bus in the order the transactions were posted on the bus. This means that a fast DDR SDRAM read can pass a slow PCI read, potentially enabling the processor to do more before it has to wait on the PCI data.
Address-bus streaming allows a single master on the bus to issue multiple address transactions back-to-back. This means that a single master can post addresses at the rate of one every two clocks, rather than one every three clocks, as it is in the 60x bus protocol.
Intervention is a cache-coherency optimization that improves performance for dual-processor systems. If one processor modifies some data, that data first gets stored only in that processor's cache. If the other processor then wants that data, it needs to get the new modified values. In previous systems, the first processor must write the modified data to memory and then the second processor can read the correct values from memory. With intervention, the first processor sends the data directly to the second processor, reducing latency by a factor of ten or more.
ALtivec is not usually the reason a mac performs better than Intel in benchmarks of properly compiled code, because the famous set of 10 algorithms in ByteMark were not using ANY altivec instructions.
And the AMD bests the Intel at Rc5 mainly from integer features.
I laugh when pc people try to dismiss the fastest machine (Macs) by claiming Altivec "cheating" all the time. The mac people should be the ones to call foul when Intel was cuaght PAYING adobe to slow down filters in one version of Photoshop to artificially make the Pentium MMX 166 Mhz look faster. They got caught paying big bucks. Adobe replied that it was an unfortunate side effect of adding optimization for MMX and not keeping the code efficient in the non MMX case as it was before. HA!
Almost every pc person likes to use benchmarks that use lots of assembly for intel (Quake, etc), but shy away from benchmarks that offer source code in ANSI C.
I knew the mac handled RAW better than PCs and this news is no surprise to me.
I'm really getting tired of the whole Mac vs. PC war being based on speed.
I'm not really sure how many times it has to be said, but a great number of Mac users don't use Macs because they're faster. In fact, let me say it again:
It's not about speed
I really can't believe that with the Slashdot community--being so "in tune" with corporate ploys and runaway marketing tactics--still fall for the MHz propaganda, and the speed benchmarks that accompany it.
Since when is the most important thing about a computer the speed? Granted, if you're playing BitchBlaster 2023 that requires a GeForce9000 Mx2+3.144 video card, maybe.
But I'm not sure if people noticed: Most Mac people aren't die-hard gamers. Macs aren't great gaming platforms anyway. They're for people that do work with their computers and rely on them.
These people care not about the absolute speed of their Mac, rather, they care that it works every time that it is booted and that the end-user experience is much more pleasant than someone using something like Windows XP.
So please, people of Slashdot--I know you have above average intelligence:
It's not about speed.
-brain
If you've read this far you might be interested to note this plug-in from Adobe that "enhances the reliability of Adobe® Photoshop® 7.0.x software running on a Mac OS X system that uses the G4 processor" from a couple of days ago.
No word on whether this gives the PS on G4s any kind of speed boost, though.
When did the future switch from being a promise to a threat? -C. Palahniuk
I don't mean to rain on your enthusiasm and I sure don't intend to imply that I dislike Macs. I'm typing this up on my PowerBook.
Using RC5 as a benchmark is only relevant insofar as you want to compare RC5 processing speeds. There RC5 algorithm, as well as the specific implementation found in dnetc, contain many aspects which make the results you obtain insightful for general use. You simply cannot compare RC5 rates and hope to extrapolate or project them into general processor comparisons.
The RC5 algorithm relies heavily on bitwise rotates (left, if you're curious, ROTL) which is an operation that is not commonly found anywhere outside the world of RC5. This instruction is so underused, in fact, that many x86 architectures (AMD's K6 for instance) have taken to simply emulating the ROTL operation and eliminating true hardware support. This is why some conventionally powerful platforms (such as Sparc and Alpha based systems) do abysmally in RC5 as compared to x86 platforms containing a hardware ROTL implementation.
Then again, this level of detail is probably lost on someone trying to compare a 1GHz G4 against an "AMD motherboard". AMD has made quite a number of CPUs in the past few years and their range of performance on RC5 is very broad. At one time, the AMD K5 was, in fact, the best-performing architecture in RC5 with the most keys per clock. AMD doesn't make any motherboards as far as I know.
The core of dnetc is also small and lean, often fitting entirely in L2 cache on many architectures. This means that dnetc does not adequately (if at all) exercise memory bus bandwidth. The cores also tend to be hand-tuned assembly, so they aren't as likely to exercise a processor's speculative execution routines. RC5 uses absolutely zero floating point math, also an uncommon scenario and not representative of many apps you would traditionally think of when you think of apps which require strong CPUs to perform well.
Many people enjoy having machines which perform well at RC5 and generate impressive distributed.net stats. Consequently, RC5 shows up as a metric in a great number of reviews and analyses on architectures and CPUs. I'm tickled whenever I see it and I think it's a great addition to any CPU review. However, it's not valid to try to make the claim that RC5 performance rates mean anything more than RC5 performance rates.
Moo!
Will this never end?
I love Macs, I've used them exclusively for over 10 years now and don't see myself switching anytime soon. Given that...
To Mac zealots:
PC are faster than Macs. Get over it. Yes the PPC chip is more elegant and efficient but it runs slow (relative to Intel). Good Altivec applications are few and far between and don't really apply to the day-to-day home and business user. If the PPC 970 comes out this summer, then maybe Macs will again TEMPORARILY hold the speed crown but until then, PC are faster by using brute force. If sheer computing performance is your #1 requirement, then a PC should be your choice. If you're poor and only have $400 to make sure your child has a computer, then a PC is your only choice. Don't even start by saying with that money you could buy some 1997 era Mac either. Please.
To PC zealots:
The overall user experience on an OS X system outweighs the fact that Win XP may idle faster when running Word. In those applications that can take advantage of vector processing, Altivec is far superior to 3DNow and SSE. Plus, I see a lot of complaining about the program was written explicitly for the Mac so the comparison is unfair. Welcome to our world. Most software written to support hardware (scanners, cameras, etc.) is a blatant PC port of a hastily written "good enough" POS program. Plus, Mac laptops have better battery life AND get the full desktop chip, not some crippled "mobile" version designed to prevent penile burns and 20 minute battery life.
Personally, I'll take elegant and efficient any day. Quite frankly, I'm glad the PPC has temporarily lagged behind. It's forced Apple to really tighten up things to keep competitive and it shows. This might not have happened if the processor would make up for any code bloat and inefficiency. Look at Safari - 3MB download. Look at OS X speed from 10.0 to 10.2. Phenomenal. When the 970 comes around, OS X should theoretically run like a champ.
I have a 1.33GHz Athlon. I have a CPU usage graph sitting in my system tray. My CPU usage almost never goes above 20% (exceptions: Compiling and encoding oggs, which will use 100% CPU however fast your CPU is). On a new Mac, a lot of the GUI related CPU load is shunted to the GPU, and PPC chips do run faster than x86 chips per MHz (This was never in dispute. The dispute is that a 1GHz PPC can outperform a 3GHz x86, which stretches even my 'will-to-believe'). So, If I upgrade to a new Mac with Dual 1.42GHz CPUs I get
And the reason I'm still using a PC? Cost. At the moment, my 18-month old system really isn't slow enough to justify upgrading it.
I am TheRaven on Soylent News
Actually, this shows the results of system specific optimizations. For instance, molecular modeling code optimized for my old SGI Octane was rippin fast. Much faster than on any other platform I could find. However, code not optimized for the SGI platform was just as fast on Intel or PowerPC. Now, that said, the G4 does have something called Altivec, and code optimized for this can be unbelieveably fast. Optimized BLAST libraries are faster on my dual G4 than anything I have ever used including some big SGI iron.
The trick is getting programmers to take the time and effort to optimize for specific platforms. This takes time and money to write quality code, but in the era of Microsoft timeline driven products, quality software code is harder to come by.
Visit Jonesblog and say hello.