Multi-core Confusion Still Reigns – Even With Developers | CodeGuru

Multi-core Confusion Still Reigns – Even With Developers

The focus on multi-core processors and their impact on developers continues to move into the mainstream. Processors are simply not getting faster, rather they are getting more cores. As such, any application being created that cannot break out tasks to operate concurrently or in parallel is running about as fast as it can. Running such […]

Nov 7, 2008
2 minute read
CodeGuru content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More

The focus on multi-core processors and their impact on developers continues to move into the mainstream. Processors are simply not getting faster, rather they are getting more cores. As such, any application being created that cannot break out tasks to operate concurrently or in parallel is running about as fast as it can. Running such an application on a multi-core processor means that a chunk of the overall processor will likely be unused even though the application itself is running at 100%.  The more cores a system gets, the more usused — and thus wasted — processing power can occur.

How confusing is the concept of a single threaded application in a multi-cored world? A member of one of the Codeguru discussion forums showed that there is still confusion on this task by making the following post:

Does anybody know how to remove Vista’s limitation on processes?

This seems to be one of the biggest problems with Vista.
I think it’s supposed to be either a security measure, or help with dual core processing.
It’s not helping in either case, since there are little or no programs written to divide(affinity?) work among the two processors, or cores.
Programs that work fine on Xp, are now imposed this dreadful %50 limitation.
It really shows in the overall performance of the operating system. The V-word.

Vista does not have such a limitation on processes. This is a simple case where a single threaded application is running at maximum power on a single core of a dual core system. The result is that half the power of the processor is inaccessible to the application.

We have to be conscious of the fact that multiple cores is the way of the future. Machines are not going to continue double in straight line power every eighteen months. Expect systems to hover in the 2 to 4 Ghz range.

The foreseeable future is cores. As developers we have to start breaking our applications into processes and tasks that can execute independently.

And no, a quad-core system running at 2.0 ghz is not the same as an 8 Ghz machine no matter what a sales person might tell you!

# # #

CodeGuru Logo

CodeGuru covers topics related to Microsoft-related software development, mobile development, database management, and web application programming. In addition to tutorials and how-tos that teach programmers how to code in Microsoft-related languages and frameworks like C# and .Net, we also publish articles on software development tools, the latest in developer news, and advice for project managers. Cloud services such as Microsoft Azure and database options including SQL Server and MSSQL are also frequently covered.

Property of TechnologyAdvice. © 2026 TechnologyAdvice. All Rights Reserved

Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.