Re: Earthquake Advisory– September 18, 2013
Posted by Skywise on September 20, 2013 at 17:06:26:

Straying way off topic, but we're slow, and I enjoy the sharing of knowledge....

"It is my understanding that the purpose of each core processor is to let you run a single program while other programs are using other processors."

Yes and no.

A single processor (core) can only ever do one thing at a time. The operating system mimics doing more than one thing by switching very quickly between tasks as needed.

Some programs don't need much CPU time, for example a word processor sitting idle waiting for you to type a letter. You press a key, the program does something simple, then waits. In the meantime the program releases the CPU to do other things.

Other programs are CPU hogs, for example rendering a photorealistic 3D image. It can take many millions of calculations just to figure out the color of one pixel. But even so, the program releases the CPU every now and then to allow the operating system to do other things (mostly house keeping tasks, even simple things like listening to see if the user clicked on "cancel"), otherwise the computer 'locks up'. (I've had to learn to have my CPU intensive programs do this)

Now, when you have more than one CPU (core), the operating system simply has more resources to work with. Yes, with two cores, you can technically do two things simultaneously, but the reality is, there is still a lot of task switching going on. The difference is that now you can have two CPU hogging programs running at the same time and the computer won't "feel" any slower. But that doesn't necessarily mean your one CPU hogging program will run any faster, all else being equal.

The real advantage to multiple cores is for software that is "multi-threaded", meaning that it is written to do parallel processing on however many CPU cores there are.

For example, that 3D rendering I like to do. With four cores working on the same image, it only takes 15 minutes to do what one core would take an hour. So, 16 cores means it only takes 1/16th the time to render the image. But economically, it would be cheaper to have four quad core machines instead of one 16-core machine. These programs are also capable of rendering across networked machines, especially for animations. In the professional world of computer graphics, companies like Pixar have "render farms" where there's literally thousands of computers all crunching on that next 'great' Disney movie. (of course, being as rich as they are, they may have a thousand 16 core machines!!!)

But keep in mind, it requires that the software be written to take advantage of multiple cores, which depends on the programming language be capable of this. Perl can't. TrueBasic can't. Even my language of choice, XBasic, can't. (although I have some ideas of tricking the system into doing so, but haven't tried yet)

My only experience in true multi-threaded parallel processing is with a 'small' 8-core microcontroller chip that I am currently using for an electronic art project. Programming that involves a mix of direct machine language and a BASIC-like medium level language. No operating system. I have to program EVERYTHING, right down to simple things like serial I/O communications to other parts. But then, microcontrollers are used differently than desktop computers.

As for downloading music off YouTube videos, it is technically illegal. Heck, most of those videos are illegal already, hence why they tend to disappear after a few months when YouTube eventually get's a DCMA take down notice from the copyright holder.

Besides, the sound quality on YouTube is carp, unless it's . Much of my collection is from my own CD's, and much of that is not compressed into MP'3s. I'm an audiophile and a musician, so I like my sound quality. For example, I have every Pink Floyd studio album on CD, and I have them copied to my hard drive in raw WAV format. So that's part of why my music collection takes up so much space. There are currently 6,728 files listed in my music player program.

Brian


Follow Ups:
     ● Re: Earthquake Advisory– September 18, 2013 - EQF  02:48:15 - 9/21/2013  (100884)  (1)
        ● Re: Earthquake Advisory– September 18, 2013 - Skywise  04:46:15 - 9/21/2013  (100887)  (1)
           ● Re: Earthquake Advisory– September 18, 2013 - EQF  09:09:26 - 9/21/2013  (100888)  (0)