# Benign data races: what could possibly go wrong?

The peril of data races. Shows how even the most innocent ones can break badly.

# Introduction to Parallel Programming video lecture series – Part 09 “Implementing a Task Decomposition”

The lecture given here is the ninth part in the “Introduction to Parallel Programming” video series. This part describes how design and implement a task decomposition solution. An illustrative example for solving the 8 Queens problem is used. Multiple approaches are presented with the pros and cons for each described. After the approach is decided upon, code modifications using OpenMP are presented. Potential data race errors with a shared stack data structure holding board configurations (the tasks to be processed) are offered and a solution is found and implemented.

# Introduction to Parallel Programming video lecture series – Part 06 “Confronting Race Conditions”

The lecture given here is the sixth part in the “Introduction to Parallel Programming” video series. This part provides the viewer with practical examples of errors that can occur when threads may contend for shared resources. One example is a simple arithmetic computation and another attempts to add nodes onto a linked list. Methods to eliminate data race conditions within threaded code are given in the abstract and in practical terms using two OpenMP pragmas: critical and atomic.

# Introduction to Parallel Programming hands-on programming lab – Numeric Search

This hands-on exercise lab, Numeric Search, is one of two programming labs associated with the video lecture “Confronting Race Conditions” (Part 6) of the “Introduction to Parallel Programming” series. This problem examines numeric values in order to determine how many conform to a given set of properties. The lab contents include source files and written instructions to guide the programmer in converting the serial source code into an equivalent parallel version using OpenMP.

# Why Parallel Inspector does not detect obvious data race

There are some corner cases when obvious data race problem is not detected on the reasonable levels of analysis intrusiveness. One of such cases is considered in the article.
• 英特尔® Parallel Inspector
• data race
• Inspector
• # Когда Inspector мышей не ловит

Недавно я столкнулся с одним интересным случаем. В процессе анализа приложения одного из наших пользователей обнаружил, что Inspector диагностирует data race там, где, по-идее его (или ее) быть не должно. Причем после нескольких десятков минут усиленного обмозговывания проблемы, мозг вскипел и отказался дальше работать. Честно говоря, хотелось вывести на чистую воду разработчиков тредчекера, и с позором предать их анафеме.

Hi All!

# Конкурс «Объясни на пальцах» - официальные результаты

Всем привет!

Вот и настало время подводить итоги конкурса «Объясни на пальцах».

С «выбором экспертов» мы с Алексеем и Володей определились еще в прошлую пятницу, а сегодня, как и планировалось, подоспели результаты голосования. Перед тем как назвать победителей, я немного расскажу о методике оценки, которой мы пользовались.