Overview
Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Explore CPU-optimized data structures and advanced assembler techniques in this ACCU 2019 conference talk. Dive into the world of modern CPU instructions and specialized optimizations as the speaker tackles an educational problem: evaluating poker hands. Learn how to optimize data representation for high-performance solutions, surpassing typical implementations in languages like C++. Examine SIMD instructions and their performance benefits, along with the challenges of data manipulation. Investigate methods for efficiently testing straights, flushes, and full houses using x86-64 architecture features. Compare the custom solution's performance against optimized C++ code, and gain insights into advanced software optimization techniques for specific use cases.
Syllabus
Intro
Poker
Playing Cards
Playing Poker
The Problem
Most Valuable Hand
Poker Ranks
Obvious Data Structure
Array of Integers
Data Structure
Example
Iterating
assembler
loop
overhead
bits can reverse
four of a kind
multicard explode
px
Taught by
ACCU Conference