Free Republic
Browse · Search
General/Chat
Topics · Post Article

To: Ernest_at_the_Beach
Three questions from somebody who knows enough to sound intelligent at a cocktail party (and after a minimum of two cocktails): 1. I know there are quad core chips out there but are there any end user applications for them, or are they just used for servers, etc.

2. Will quad core or Octal core make any difference if we are using a 32 bit operating system? In other words, will I/we need to upgrade to Vista x 64 at some point?

3. Intuitively, it seem like the complexity of writing code for multiple core chips would increase geometrically, since you have to have all the cores processing simultaneously. Is this true?

Thank you.

4 posted on 12/26/2007 8:51:08 PM PST by eeman
[ Post Reply | Private Reply | To 1 | View Replies ]


To: eeman
A web browser has some capability to utilize more than one processor....all of my machines are AMD X2...and thus while looking at web sites that have all of those Flash ads going one of the processors can be handling that....makes your processing smoother.

JAVA seems to be a new programming language that has capability to reduce the complexity of writing multiprocessing
code.

Multiprocessing code can be 32 bit.

5 posted on 12/26/2007 9:53:54 PM PST by Ernest_at_the_Beach (No Burkas for my Grandaughters!)
[ Post Reply | Private Reply | To 4 | View Replies ]

To: eeman
1. I know there are quad core chips out there but are there any end user applications for them, or are they just used for servers, etc.

Yes, and not just the professional ones. My little $25 video converter uses as many cores as you can throw at it (and it'll use the cores of any Mac in your home over the network). Plus running multiple programs lets the OS juggle applications between cores. And on Windows there's all the anti-virus, anti-spyware, DRM system, etc., that can use the extra cores so they don't interfere so much with the application you're using.

But you do have to worry about your OS if you're using Windows. While any version of Vista will recognize all the cores on one processor, only the higher-end versions will recognize multiple processors, the rest are artificially limited.

2. Will quad core or Octal core make any difference if we are using a 32 bit operating system? In other words, will I/we need to upgrade to Vista x 64 at some point?

Yes. You still get access to all the cores.

3. Intuitively, it seem like the complexity of writing code for multiple core chips would increase geometrically

Some might say logarithmically. It is harder, and debugging can be orders of magnitude harder since errors can be very sporadic with little evidence of what's causing them.

Most Windows programmers have been used to limited multithreading (the main mechanism for multi-processor programming) for years, as that's the only way to keep the user interface responsive. Lack of this is often why you see "Application Not Responding," the app is busy working and not using another thread to respond to user interface requests. But this is different from taking one big job and distributing it among multiple threads, or even harder, multiple different jobs that interact with each other.

But languages are starting to make it easier to program for multiple threads. There are libraries out there that can help programmers manage their threads. There are compilers that will both/either optimize your program for multiple cores and catch potential errors before they occur. The Microsoft .NET runtime automatically manages a pool of threads for you (evens the load, reduces overhead of creating threads, prevents you from creating too many that may bog down the system). And then there's Apple's OS X, where a call to various functions even in a single-threaded application automatically multithreads.

7 posted on 12/27/2007 12:49:18 PM PST by antiRepublicrat
[ Post Reply | Private Reply | To 4 | View Replies ]

Free Republic
Browse · Search
General/Chat
Topics · Post Article


FreeRepublic, LLC, PO BOX 9771, FRESNO, CA 93794
FreeRepublic.com is powered by software copyright 2000-2008 John Robinson