SIMD Parallelism with CPU Intrinsics (MMX, SSE, AVX, etc.)


Details
This month, Richard Thomson will give us an an introduction to SIMD (https://en.wikipedia.org/wiki/SIMD) (single instruction, multiple data) parallelism using compiler intrinsics functions. Some of the topics to be explored are:
• What is SIMD parallelism?
• What CPU instruction set extensions expose SIMD operations?
• What's the difference between MMX, SSE and AVX?
• What are compiler intrinsics (https://msdn.microsoft.com/en-us/library/26td21ds.aspx) functions?
• How do I exploit SIMD parallelism in a portable manner?
• How do compiler intrinsics compare to general-purpose GPU programming?
• How does this compare to raw assembly?
We will explore these ideas in the context of a program that computes an image of the Mandelbrot set (https://en.wikipedia.org/wiki/Mandelbrot_set).
Dinner is provided by Apremis Technology Placement (http://www.apremis.com/). Thanks, Apremis!
Please RSVP so we have an appropriate head count for food.

SIMD Parallelism with CPU Intrinsics (MMX, SSE, AVX, etc.)