Advertisement
Promo

Become a member of the ZDNet UK community

Adrian Bridgwater

View blog's RSS Feed

Software application development

This blog is intended to provoke discussion and exchange between like minded software application developers, engineers, architects, project managers - and keen hobbyists too.

Tuesday 21 April 2009, 11:15 AM

Intel outlines developer toolkit strategies for parallelism

Posted by Adrian Bridgwater

One day into Intel’s ‘Parallel Universe’ Software Conference 2009 here in Salzburg and we’re well fueled up on goulash, dumplings and sauerkraut and keen to get stuck into the proposition behind the company’s Parallels Studio toolkit. It is due for release on May 26th and its launch will sit alongside the arrival of new versions of the Intel compiler toolsets.

Intel says its existing tools are focused on maximising parallel performance for C++ Fortran on Windows, Linux and Mac OS X – and the new product will be aligned to C++ using Visual Studio on Windows.

The company’s chief software evangelist James Reinders presented this morning underlining the fact that almost every processor shipped by Intel today is actually multicore. Positioning the Parallels Studio toolkit in line with its HPC (high performance computing) tools, Reinders tried to provide some tangible feel for the latest products by saying, “I’ll promise you that in ten or twenty years we’ll look back and see that what we have developed here isn’t quite perfect, even though I love the product as it stands today. These tools are incredibly powerful but they are not magic, they will not solve all developers’ problems as they move towards parallelism.”

So how do developers add parallelism to their code? Intel’s approach is to take the following structure Design -> Code & Debug ->Verify -> Tune. Logically then, the company has tools that are designed to support each of these processes.

Several references are being made this week to try and refute the anti-threading arguments expounded by Edward A. Lee in his paper “The Problem with Threads” which he composed at the University of California, Berkeley, in 2006. Lee said that, Although threads seem to be a small step from sequential computation, in fact, they represent a huge step. They discard the most essential and appealing properties of sequential computation: understandability, predictability and determinism. Threads, as a model of computation, are wildly nondeterministic and the job of the programmer becomes one of pruning that nondeterminism.” You can read the whole paper here if you wish.

Reinders smiles knowingly every time this paper is mentioned as if it has become his nemesis in the three years since its emergence. Defending his stance and his company’s strategic alignment towards threading and the use of the multicore chips that Intel’s FABs pump out, he cites a plethora of real world application examples that employ parallelism.

According to Intel, parallelism has been popular with many multimedia apps such as AutoDesk Maya and Adobe Photoshop and Apple has used it extensively in its DVD focused applications even when as few as two cores are involved – and there are many more examples in HPC and supercomputing.

Reinder’s also noted that, “Internet Explorer and Outlook also use parallelism to a degree so that they are in fact threaded applications. Although I think Firefox implemented TABS with parallelism much better than IE has done and I think Microsoft knows that, so they are making efforts to catch up.”

There’s a challenge for all the speakers here to make additional layers of complexity digestible for an audience that is (due to its heavy channel presence) mostly interested in how they can describe what the products too so that they can sell more.

There are resources for everyone to read here – and Intel is more than just a little bullish about its position in the market. In fairness to Intel, I speak to a lot of software companies about the escalating needs of the software development marketplace and not many other vendors bother to concentrate on this reality (if I can call it that – and I think I can) in modern development shops. Let’s go forth and multiply then.

Comments on this post

64BITZ

Sounds like an interesting conference, and I am sure the toolkit will have its takers.

Yet Intel only seem to focus on the C++ developer. Perhaps this is because they don't have a managed code language and as such managed code isn't of interest to them.

I would like to think there are more line of business applications being developed in managed code than in C++, which brings me to think that Intel doesn't consider managed code important enough to spend its time on. I could be wrong, I haven't read all your related documents yet, but my thoughts are that if it isn't done using Intels own compilers, they don't want to know. Which could be a very interesting area for AMD to pursue.

It seems we are going to have to rely on Microsoft getting VS2010 absolutely bob-on for these kind of features and they are looking good. I have enjoyed looking at the examples posted so far for the CTP. My concern is that for every new version of Windows, we seem to need a new version of Visual Studio. That may well make sense, it just concerns me a little that when Vista Launched, VS2008 didn't play too well with it.

Updated by 64BITZ on Apr 21, 2009 4:41 PM

Adrian Bridgwater

Thanks for your reply to my post!

In fact, before I embarked upon this trip to meet with Intel I used ZDNet.co.uk's own search function to look up terms such as "multicore" and one of the first pieces I saw was your blog from January of this year here:

http://community.zdnet.co.uk/blog/0,1000000567,10011924o-2000552605b,00.htm

The mantra here this week is, yes, closely aligned to C++, but Intel does insist that it's proximity to other platforms naturally gives it an association with other languages and other OSs aside from Windows. What I mean is that my MacBook Pro runs an Intel dual core and OS X is, as we know, based on Unix. My Acer Aspire runs Linpus Linux Lite on an Atom processor etc.

Intel may be so focused on talking about the capabilities of its intelligent debuggers that pull out serial blocks from parallel structures and (allegedly) fix them with a lower developer pain point - that they may be blinkered away from looking at non C++ managed code.

Perhaps AMD will see that as an area to exploit as you suggest.

Posted by Adrian Bridgwater on Apr 21, 2009 1:01 PM

mike5623

This comment has been deleted at the users request

Updated by mike5623 on Apr 23, 2009 9:18 AM

Adrian Bridgwater

This member is ranked #4 in our top 100

  • Adrian Bridgwater
  • Applications Development, London, UK
  • Member since: July 2007

Site Activity Rating 6

CoreTechs

Contacts' Latest Discussions

Number of Tracked Discussions: 2,071

Jake Rayson Jake Rayson

A Tempest in a Nostalgic Teapot

Friday 4 December 2009, 2:39 PM

2 comments
roger andre roger andre

Microsoft begins work on Windows 8

Thursday 3 December 2009, 1:02 AM

2 comments
ator1940 ator1940

ACTA

Wednesday 2 December 2009, 12:07 PM

7 comments

Contacts' Latest Blogs

Number of Contacts Blogs: 5

Avatar Karen Friar

HP workers set dates for strikes

Thursday 3 December 2009, 7:57 PM

2 comments
Avatar manek

Who can explain desktop virtualisation...

Thursday 3 December 2009, 12:36 PM

1 comment
Avatar Jake Rayson

Buy Free Software

Wednesday 2 December 2009, 11:18 AM

0 comments

Skip Sub Navigation Links to CNET Brand Links

Help

Become part of the ZDNet community.

Newsletters