How To Do Parallelism Without Getting Egg On Your Face

The other day I put together a trivial parallel code example that was going to be used in a 'how-to' document. The code was nothing much more complicated than a parallel 'hello world'. The sort of thing you could write while asleep.

I then sent the code to three colleagues for review. Well, embarrassingly the code came back, the reviewers pointing out that the code had a data race and the results of the program were inconsistent.

Managed Threads Are Different From Windows Threads

.NET Framework works with managed threads and they aren't the same than Windows threads. Therefore, it isn't a good idea to use Windows API thread management functions with managed threads.

Designing Applications for Massive Multicore Processors

In my last couple of blogs I talked about Extreme Scale computing and the applications that love them. So in continuing with that theme, this blog includes an excerpt from our book "Professional Multicore Programming: Design and Implementation for C++ Developers" Chapter 8 entitled "PADL and PBS: Approaches to Application Design".

Core Parking in Windows Server 2008 R2 and Windows 7

Core Parking is a new Windows kernel power manager and kernel scheduler technology designed to help improving the energy efficiency of multicore systems. It constantly tracks the relative workloads of every hardware thread relative to all the others and can decide to put some of them into sleep mode.

Hurray! New Life for the 5th Generation Project... Maybe?

What about problems that require massive parallelism in order to solve them? In Parallelism Should Inspire You, I blogged about how we are surrounded by parallelism more so than serial activities. We are surrounded by biological and social systems that are inherently immersed in parallelism. It's the only way to think about them.

Two Variations of Parallel Pipelines

Today we examine two variations of parallel pipelines: The 3-Stage Parallel Pipeline running a video frame body tracking program, and a dual 2-stage parallel pipeline used in situations where the input and output run in isolation from the computational phase of the application.

Tell Me I'm Wrong And I Have Nothing To Worry About

I'm looking for meeting room 401-2a. I'm running 15 minutes late for a 30-45 minute meeting. However, I'm on the fourth floor. I see a room that starts with 401 so I head in that direction. Unfortunately that's not the room I'm looking for, but I go in anyway because I recognize a few faces and perhaps I can get directions. But little did I know, I was walking right into a war of finger-pointing-and-I-told-you-so.

Massive Parallelism Has a Name ... Extreme Scale Computing

Parallel computing is not a new concept. Its been around for decades. Now the reality is here. Serial computing is dead? Well, that's what was stated in an article in IEEE Computer Magazine.

Intel Turbo Boost Technology Monitor: A Windows Gadget to Understand Dynamic Frequencies

Intel Turbo Boost Technology Monitor is a simple sidebar gadget for Windows Vista and Windows 7. It lets developers and users check the microprocessor's application of Turbo Boost. It is a simple gadget that lets you answer the question: What is Intel Turbo Boost Doing?

Two-Stage Input Parallel Pipeline: Part 2

In the previous post we looked at using the QuickThread toolkit to write a two-stage input pipeline to boost the performance of the input side of your application. Today we look at using the QuickThread toolkit to write a high-performance output end of an application. QuickThread is available from QuickThread Programming.

Real World Parallelism Webinar Series
  • February 18, 2010
    Lock Contention, Using Intel Parallel Studio to Improve Performance
    Speaker: Vasanth Tovinkere, Software Engineer, Intel Corporation (Bio)

    Vasanth Tovinkere is a software engineer in the Developer Products Division (DPD) at Intel. His current role involves defining novel approaches to understanding and visualizing parallel performance and consulting with strategic customers to help them prepare and deliver code for the multicore world. Vasanth has been involved in the development of automatic semantic event detectors for digital sports technologies in Intel Labs. He also has been awarded three patents and has two patents pending.

    Abstract:
    Discover how easy it is to use the power of Microsoft Visual Studio and Intel Parallel Studio to find performance issues due to lock contention in threaded applications. This ensures that shipped applications can take better advantage of multicore processors. In this webcast, we provide live demonstrations that show how to identify lock contentions issues with Visual Studio and Intel Parallel Studio, an add-in to Visual Studio that helps developers create fast, reliable code on multicore processors.t.