Quote:
Quote:
What model iBook is it?
i have 2 ibooks, 1066 Mhz and 1333 Mhz G4, both have the maximum ram in them, 1.25 and 1.5 GB.
It'll be faster than those at those speeds. Much faster. You might notice under some workloads that it acts a little slower; it has less cache (256kb vs. 512kb or 1mb) and the cache latency is a little higher (1 cycle). But the bus bandwidth makes up for a lot. The integration with the PCI controllers on-chip makes up for a lot.
I don't think you would notice the difference in dual-core or 64-bit nature of a chip - does anyone really notice this when running single-threaded applications and only have less than 4GB of RAM? I think you would have to have software which truly took advantage of it. I can only think of some high-performance filesystems which require 64-bit atomic operations which actually are easier to code and better to run on real 64-bit systems.
Let's do a little thought experiment. Most of the time, your system is idle. It's not running heavy application load, browsing files or the web, maybe coding in a text editor or doing some compiling. These tasks rarely need to soak up 100% CPU time for extended periods. If you are not using 100% of one CPU core, there is no advantage in moving it to another; in fact, this will slow things down due to the thread locking and coherency checks involved.
Software which traditionally did better in multi-core is things like media decoding and encoding - but we have seen, that media decoding is not exactly a huge problem for the MPC8610. Gaming is another; but name a high-performance, commercial game newer than Quake 3 that supports true multi-threading and runs on Power Architecture anyway, and I will buy you a cookie.
You could do compiles in parallel, but most compilations don't take advantage of having many threads at once; if you have a single processor, adding -j2 to your "make" command line makes it compile two source files at once. If you have dual core, you could set this to -j4 or -j6 and get more done. On an Efika, Pegasos, PC, multi-processor server, this does not do much except mean it can spawn two or more gcc processes (which actually spawn another process which then spawns another process by indirection, startup time is atrocious), neither of which use more than 50% of the CPU, most of which are constantly I/O bound for most of their run (collecting headers, preprocessing, piping data between backends). There are times when compiles will block each other - either by I/O scheduling in the kernel or at some point the make application needs to execute a different rule or has to take care of a dependency which throttles the multithreading back - you cannot compile two files in parallel if one of them needs the other. You cannot link (by far the slowest part) in parallel.
As I said before and will continue to express, I would love to see an MPC8641D board. I think the larger caches, the second core, and the built-in ethernet controllers have advantages in some environments. Doing something with the Assymetric Multi-Processing would be cool (running two OS's side by side with a dedicated core).
But right now, that is a long way off from being actually supported in Linux, a long way off from being useful to customers.