Learn something new every day
More Info... by email
The biggest difference between vector and scalar processors is how many data items each is handling at once. Computer processing is often a pretty complex science, and understanding how it works on a technical level frequently requires a lot of knowledge and expertise. When it comes to the basic processing types, though, it’s often easier to see things more simply. In essence, a vector processor aggregates multiple data points, processing each in turn. It’s often really good for complicated tasks that can be broken down into smaller jobs that will respond to a similar instruction. Vector processors are efficient when it comes to getting things done, but this efficiency can cause other parts of the computer system to go slowly. Scalar processors, on the other hand, typically handle just one job at a time, and work on what’s basically a point-to-point basis. This type of processor doesn’t usually impact the speed of the machine as a whole, but can be slower when it comes to finishing more complicated jobs. Both are important to many sectors, and some computers and devices actually use both simultaneously to maximize efficiency.
The part of a computer that allows it to function, at least on a very broad level, is generally known as the central processing unit (CPU). This unit carries out the instructions of various programs; it receives a program's instructions, decodes those instructions, and breaks them into individual parts. It then executes those instructions and reports the results, writing them back into the device’s temporary or permanent memory. Processors are usually formatted from the beginning as either vector or scalar.
Scalar processors are the most basic type of processor. These usually process just one item at a time, typically integers or floating point numbers. Floating point numbers are numbers that are either too large or small to be represented by integers. According to the scalar system of ordering information, each instruction is handled sequentially. As a result, scalar processing can take up some time.
In contrast, vector processors typically operate on an array of data points. This means that rather than handling each item individually, multiple items that all have the same instruction can be completed at once. This can save time over scalar processing, but also adds complexity to a system; this can and often does slow other functions. Vector processing usually works best when there is a large amount of data to be processed. In these instances, groups of data and individual data sets can be handled by one instruction.
Vector and scalar processors also differ in their startup times. A vector processor often requires a prolonged startup of the computer because of the multiple tasks being performed. Scalar processors, on the other hand, tend to start a computer in a much shorter amount of time since only single tasks are being executed.
Not all computer systems have to use one over the other, and in certain settings the two actually work in tandem. The superscalar processor is one example. This system takes elements of each type and combines them for even faster processing. Using instruction-level parallelism, superscalar processing can perform multiple operations at the same time. This allows for the CPU to perform at a much faster level than a basic scalar processor, without the additional complexity and other limitations of the vector system.
There can be problems with this type of processor, however, as it must determine which tasks can be performed in parallel and which are dependent on other tasks being completed first. Errors in data assignment often lead to crashes and other malfunctions.
@miriam98 - Vector processing would handle some of your problems, but personally I think that it’s overkill. If you only use vector processing for a few functions, and the rest of your software does fine with scalar processing, then you have a lot of unused computer power.
I think that it comes down to a cost-benefit analysis on the part of the computer manufacturers. They can probably pack more power into their machines than they currently have, but who will use it?
If most people won’t need it, then it affects the marketability of the product line. When I think of vector processors and such, I think of physicists working at CERN or some other laboratory needing that power, but not the average computer user.
@miriam98 - The thing that people have to realize about a CPU processor is that it simply cannot do all things well, in my opinion.
You mentioned extreme gaming and video cards. There’s a reason that gamers buy dedicated video cards with their own memory. It allows the game to offload its processing tasks onto the video card instead of always making demands on the CPU.
So looking for an all-powerful CPU that does everything is not the answer, the way I see it. The answer is that all of the data and memory intensive applications need to be offloaded on separate devices, while allowing the CPU to simply focus on running the operating system and the software that is running in RAM.
If just you keep looking for a faster computer processor to make your computer blazing fast, you’ll hit the wall eventually.
I’ve been waiting for a long time for a computer processor that will rise to the demands of video editing and extreme gaming.
Up until now the only way to meet those demands was to buy graphics boards with dedicated processors and tons of dedicated graphics memory, or keep buying a new computer every two years with a faster processor and more RAM. Either way, I find myself always taxing my system at some point.
Just the other day, however, I heard that Intel has unleashed what it considers its fastest processor, and they claim that it boosts video editing and gaming speed by 40%. That’s something I have to see in order to believe.
I don’t know if they use scalar processors; I hope not, because scalar technology, while good for some things, is bad for other processes – at least that’s what I take away from the article.