For more information contact us
Phone:
+1-425-748-5018
Fax: +1-425-644-2185
TrainingUSA@selagroup.com
Coming courses
Register/More info
More courses from
Win Programming
Windows Driver Foundation: KMDF Device Driver Development Course 1 – Basics
Windows Internals
Windows XP / W2K3 WDM Device Driver Development - Basic
Advanced WPF
Developing Win32/64 Concurrent Applications Targeting Multi-Core
Windows Internals for Developers
NDIS 5 Windows-Network-Driver-Development
Windows XP/W2K3 Server WDM Device Driver Development - Advanced (Plug'n'Play, Power Management and WMI)
Developing Windows 64 High-Performance Concurrent Applications
Win32_64_Con - Version: 2
Developing Windows Concurrent Applications
4 days course
Description
Writing concurrent applications is no longer a "luxury" reserved to high-end server developers. Client applications need concurrency to maintain responsive user interfaces, server applications need concurrency to utilize hardware resources, and everyone needs concurrency to properly mix I/O requests with CPU processing. In this four day course you will learn how to develop concurrent applications that use multiple threads, thread pool work items, or high-level tasks for better throughput and responsiveness on multicore hardware.
Intended audience
Windows developers, team leaders, and architects with at least two years of experience programming Win32 applications in C++.
Prerequisites
Two years of Windows programming experience in C++
Familiarity with operating system concepts such as processes, threads, synchronization, virtual memory
Familiarity with the Win32 API
Objectives
Develop high-performance concurrent Windows applications in C++.
Topics
Processes and Threads
Programming Windows processes
Programming Windows threads
Types of data shared between processes and threads
LAB
Synchronization
Interlocked operations
Lock-free synchronization (CAS)
Memory model
Win32 synchronization mechanisms
Vista synchronization mechanisms (condition variable, SRWL)
Designing custom synchronization mechanisms
LAB
Thread Communication
User-mode APC
Window Messages
I/O Completion Port
LAB
Thread Pool
Queuing work items
Timers
Registering for wait
Binding I/Os to the thread pool's I/O completion port
Architecture and Patterns
Architectural styles - fork/join, pipeline, grid
Architectural patterns
Dependency management
Continuation and cancellation
Concrete design patterns
Cache access patterns
Identifying and visualizing anti-patterns
LAB
Debugging Concurrent Applications
Visual Studio 2010 Concurrency profiler
Smart thread-related breakpoints in Visual Studio
Introduction to WinDbg
Deadlock detection and handle problems with WinDbg
Deadlock detection with local kernel debugging and WCT
LAB
OpenMP
Sections and other clauses
Parallelizing loops
Critical sections
Configuring OpenMP scheduling and partitioning
LAB
ConcRT
Task parallelism
Data parallelism (parallel algorithms)
Concurrent containers
Cooperative synchronization mechanisms
Introduction to the Asynchronous Agents Library
LAB
Win32_64_Con Course
I would like a representative to contact me regarding this activity
*
*
*
*
*