Feeds

Multi-threaded development joins Gates as yesterday's man

Knuth and Bray call time

Beginner's guide to SSL certificates

When he wasn’t ruminating at this week’s TechEd on the “millions” of servers running Microsoft’s planned on-demand services, Bill Gates was talking about how to architect software to take advantage of powerful “transistors” in massive server farms.

Applications - like, for example, Microsoft’s BizTalk Server and SQL Server that the company is talking about making available as on-demand services - will need to be broken down into “parallel execution units”, Gates said.

“We have an incredible amount of work at Microsoft to make the runtimes higher level, and to make it easy to take your code and write it in this parallel fashion. There will be a lot of discussion about this so-called 'multi-core' revolution in how we make sure we're all doing the best to take advantage of that,” Gates said. It was his last bout of TechEd crystal-ball gazing before stepping down from day-to-day responsibilities as Microsoft chairman next month.

The rub

Devising new approaches to building software and educating programmers to cope with parallel processing is causing concern, though, and has prompted software heavyweights to join the debate. Before Gates took the stage in Orlando, Florida, programming pioneer Don Knuth and XML architect Tim Bray raised doubts about multi-threading - one of the main programming techniques for multi-core systems.

While multiple processor systems have been around for decades they have usually been associated with specialist systems - such as Cray's supercomputers. During the 1980s the UK company Inmos set out to build a commercial parallel processing chip with its transputer but it failed.

Continuing commercial pressure and improving processor power have revived multiple processor architectures, bringing them into the mainstream. Chip makers have argued that, as chip fabrication techniques reach physical limits and Moore's Law becomes obsolete, one way to get more power from hardware is from innovations in architecture. The simplest way to achieve more power is to increase the number of processors with multi-core chips, clusters of processors or networked grids.

But multiple processor architectures introduce a new class of programming problem. Writing software to get the best performance from multiple-processor systems is far from straightforward. Issues such as synchronization, load balancing, memory protection and task distribution place new demands on programmers and those building tools that are used by developers.

Bill Gates in Microsoft last day video

Gates grapples with parallel computing

There is clear evidence that the industry is aware of the problem. Although Intel estimates that only one in a hundred programmers has any experience of programming multiple processor systems, an informal poll of around 1,200 programmers last year showed that most were aware of the need to approach programming in a different way.

Chip builders have concentrated on the use of multi threading. Intel, for example, has invested heavily in multi-threading technology with its thread building blocks (TBB) library extensions to C++.

But the validity of multi threading is under attack. Veteran programmer Knuth said in a recent interview that multi threading may not be up to the task and could fail. As such, he is "unhappy" with the current trend towards multi-core architectures.

Remote control for virtualized desktops

More from The Register

next story
Download alert: Nearly ALL top 100 Android, iOS paid apps hacked
Attack of the Clones? Yeah, but much, much scarier – report
Euro Parliament VOTES to BREAK UP GOOGLE. Er, OK then
It CANNA do it, captain.They DON'T have the POWER!
NSA SOURCE CODE LEAK: Information slurp tools to appear online
Now you can run your own intelligence agency
Post-Microsoft, post-PC programming: The portable REVOLUTION
Code jockeys: count up and grab your fabulous tablets
Microsoft: Your Linux Docker containers are now OURS to command
New tool lets admins wrangle Linux apps from Windows
prev story

Whitepapers

Free virtual appliance for wire data analytics
The ExtraHop Discovery Edition is a free virtual appliance will help you to discover the performance of your applications across the network, web, VDI, database, and storage tiers.
A strategic approach to identity relationship management
ForgeRock commissioned Forrester to evaluate companies’ IAM practices and requirements when it comes to customer-facing scenarios versus employee-facing ones.
10 threats to successful enterprise endpoint backup
10 threats to a successful backup including issues with BYOD, slow backups and ineffective security.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
Website security in corporate America
Find out how you rank among other IT managers testing your website's vulnerabilities.