CppArm Meetup 1: SIMD Computing, x86 AVX2, ARM Neon and String Matching

It's 2020 and everyone knows, that if you are doing some serious number crunching - you should do it on the GPU. But what if you can't? If you don't have one? Or the data is too big to fit into VRAM? Or if latency is more important for your application than bandwidth? The answer is - SIMD CPU instructions. We will talk about using them in production, will compare ARM (Neon) and x86 (AVX2) and will benchmark a couple of toy examples to measure the impact of "speculative out-of-order execution" on modern CPUs! Most of the talk is based on the https://github.com/ashvardanian/CppBe... repository, so you can return to it at any time and redo the benchmarks for yourself on your own hardware. The Speaker. Ashot grew up in St. Petersburg, studied Astrophysics in SPbSTU, and does programming since childhood. These days he designs new algorithms and software products and invests in tech companies worldwide. He founded Unum over 5 years ago and now he moved to Armenia to start an R&D team here. The Timeline. 2:20 Intro 16:56 Substring Search 31:50 SIMD Intrinsics 41:34 Speculative Execution 59:08 Tooling 1:03:39 Pitfalls & Recommendations 1:25:02 Firechat The Links. Code: https://github.com/ashvardanian/CppBe... Intel Intrinsics Guide: https://software.intel.com/sites/land... ARM Neon Intrinsics Guide: https://developer.arm.com/architectur... Blog by Wojciech Muła: https://0x80.pl/articles/index.html Blog by Daniel Lemire: https://lemire.me/blog/ Armenian C++ Community on Telegram: https://t.me/cpparm

Intrinsic Functions - Vector Processing Extensions
▶︎

Intrinsic Functions - Vector Processing Extensions

Adventures in SIMD-Thinking - Bob Steagall - [CppNow 2021]
▶︎

Adventures in SIMD-Thinking - Bob Steagall - [CppNow 2021]

Zig 2026: No-AI Policy, $670K Foundation, Left GitHub & Why Zig Isn’t 1.0 - Andrew Kelley Explains
▶︎

Zig 2026: No-AI Policy, $670K Foundation, Left GitHub & Why Zig Isn’t 1.0 - Andrew Kelley Explains

Data Analytics for Beginners | Data Analytics Training | Data Analytics Course | Intellipaat
▶︎

Data Analytics for Beginners | Data Analytics Training | Data Analytics Course | Intellipaat

Creator of C++: Bell Labs, Negative Overhead Abstraction, Mistakes | Bjarne Stroustrup
▶︎

Creator of C++: Bell Labs, Negative Overhead Abstraction, Mistakes | Bjarne Stroustrup

PLC Troubleshooting 101.  Basic Steps to Diagnose and Fix Your Machine
▶︎

PLC Troubleshooting 101. Basic Steps to Diagnose and Fix Your Machine

Turing Award Winner: Disagreeing with Google, Postgres, Future Problems | Mike Stonebraker
▶︎

Turing Award Winner: Disagreeing with Google, Postgres, Future Problems | Mike Stonebraker

CppCon 2018: Jefferson Amstutz “Compute More in Less Time Using C++ Simd Wrapper Libraries”
▶︎

CppCon 2018: Jefferson Amstutz “Compute More in Less Time Using C++ Simd Wrapper Libraries”

LCU14-504: Taming ARMv8 NEON: from theory to benchmark results
▶︎

LCU14-504: Taming ARMv8 NEON: from theory to benchmark results

Gil Strang's Final 18.06 Linear Algebra Lecture
▶︎

Gil Strang's Final 18.06 Linear Algebra Lecture

Keynote: After the AI Hype – What’s Real, and What’s Next - Richard Campbell - 2026
▶︎

Keynote: After the AI Hype – What’s Real, and What’s Next - Richard Campbell - 2026

Introduction to Arm SVE
▶︎

Introduction to Arm SVE

Co-Creator of Haskell: Functional Programming, Thinking in Types, Useless Languages | Simon Jones
▶︎

Co-Creator of Haskell: Functional Programming, Thinking in Types, Useless Languages | Simon Jones

Adventures in SIMD-Thinking (part 1 of 2) - Bob Steagall - CppCon 2020
▶︎

Adventures in SIMD-Thinking (part 1 of 2) - Bob Steagall - CppCon 2020

The Engineering that Runs the Digital World 🛠️⚙️💻 How do CPUs Work?
▶︎

The Engineering that Runs the Digital World 🛠️⚙️💻 How do CPUs Work?

Why Fighter Jets Ban 90% of C++ Features
▶︎

Why Fighter Jets Ban 90% of C++ Features

The Story of C++: The World's Most Consequential Programming Language | The Official Story
▶︎

The Story of C++: The World's Most Consequential Programming Language | The Official Story

JavaScript Tutorial For Beginners | JavaScript Training | JavaScript Course | Intellipaat
▶︎

JavaScript Tutorial For Beginners | JavaScript Training | JavaScript Course | Intellipaat

Power Automate Beginner to Pro Tutorial [Full Course]
▶︎

Power Automate Beginner to Pro Tutorial [Full Course]

Using your C Compiler to Exploit NEON
▶︎

Using your C Compiler to Exploit NEON