One PolyData Mapper Instead of Two: Measuring Vertex Pulling on the DesktopVTK ships two OpenGL polydata mappers that do the same job two different ways. We maintain both. I wrote the second WebGL2/GLES3.0 mapper back in 2023 due to a need for polydata rendering in VTK.wasm using vertex pulling. It's called vertex pulling since it's the vertex shader that decides which vertex data to read vs the traditional way where vertex data is supplied automatically via attributes. The historical reason for keeping them separate was a performance belief: vertex pulling is too slow for the desktop. We turned that belief into measurements on a native NVIDIA GL stack, and it does not hold up. With a two-line change: an indexed draw, vertex pulling can match the classic interleaved-VBO mapper on GPU time across every workload we tried, it carries a realistic 4-attribute vertex with no penalty, and adds zero CPU overhead per frame. The assumption that kept the mappers apart is no longer relevant. This post shows the numbers and argues we should merge the two mappers.📝Kitware IncWelcome to SwedenCpp
Latest blogs, videos, podcasts and releases in one stream
Thursday, June 11, 2026
One PolyData Mapper Instead of Two: Measuring Vertex Pulling on the DesktopVTK ships two OpenGL polydata mappers that do the same job two different ways. We maintain both. I wrote the second WebGL2/GLES3.0 mapper back in 2023 due to a need for polydata rendering in VTK.wasm using vertex pulling. It's called vertex pulling since it's the vertex shader that decides which vertex data to read vs the traditional way where vertex data is supplied automatically via attributes. The historical reason for keeping them separate was a performance belief: vertex pulling is too slow for the desktop. We turned that belief into measurements on a native NVIDIA GL stack, and it does not hold up. With a two-line change: an indexed draw, vertex pulling can match the classic interleaved-VBO mapper on GPU time across every workload we tried, it carries a realistic 4-attribute vertex with no penalty, and adds zero CPU overhead per frame. The assumption that kept the mappers apart is no longer relevant. This post shows the numbers and argues we should merge the two mappers.📝Kitware Inc
Sci-fi geek to Alliance Board Member🎥C++ Alliance
Ref qualifiers use case - fluent interface for builder pattern?🎥MeetingCpp
A Codex Experience Report🎥Utah Cpp Programmers
Introducing Qt's Figma Design System Extraction Skills for DevelopersRecreating a design system manually in QML is a laborious task for a Qt developer. A typical Figma design system can include hundreds of design tokens for colors, typography, spacing, radii, shadows, and motion durations - plus dozens of UI components, each with multiple variants and states. Every value has to be transcribed precisely, and even small mismatches can quietly desynchronize the implementation from the Figma source. Two new AI skills close the design-system-to-code gap between Figma and Qt. The Qt Figma Token Extraction skill converts your Figma design tokens directly into QML singletons. The Qt Figma Component Generation skill then turns your Figma component library into idiomatic QML controls that consume those singletons. Together they automate the full design-system handoff. The skills delegate this entire workflow to an AI agent, which connects to Figma, reads the design system, and produces clean, idiomatic QML ready to drop into a Qt project.📝Qt BlogIf this page is useful, please consider donating a coffee
Wednesday, June 10, 2026
What’s the opposite of ClipCursor that lets me exclude the cursor from a region?There is no such feature, but you can just exclude it virtually. The post What’s the opposite of ClipCursor that lets me exclude the cursor from a region? appeared first on The Old New Thing .📝The Old New Thing
Linux as the Conductor - Driving Pre-Compiled Audio DSP Kernels on C7x for Real-Time Processing🎥audiodevcon
Modern C++ Support in CLion: What’s NewModern C++ makes advanced high-performance techniques more accessible, with features like compile-time computation, zero-overhead abstractions, and expressive template code. But as your codebase grows, your ability to use these techniques productively depends heavily on how well your tooling understands them. Without proper language engine support, modern C++ features can lead to false positives, broken navigation, […]📝CLion : A Cross-Platform IDE for C and C++ | The JetBrains Blog
cppreference as your go to guide [Learn C++ Shorts Lesson 3]🎥Mike Shah
class properties and typeinfo - classes part 9 of N [D Language - Dlang Episode 147]🎥Mike ShahTuesday, June 9, 2026
SovereignThe keyword in politics these days is ‘sovereign’. What few will admit is that it is effectively the adoption of the American strategy: Make America Great Again. In other words, reindustrialization of key sectors of the economy. The UK used to be a computing champion. Our chip designs (ARM) originated from the UK. Canada had … Continue reading Sovereign📝Daniel Lemire's blog
The Microsoft Company Party where everybody played name tag swapEven the boss got into the festivities. The post The Microsoft Company Party where everybody played name tag swap appeared first on The Old New Thing .📝The Old New Thing
Why I Fell for C++ — Ruben Perez Hidalgo, author of Boost.MySQL🎥C++ AllianceMonday, June 8, 2026
Monads Meet Mutexes - Arne Berger - C++Online 2026🎥CppOnline
Rotation revisited: Shuffling more than three blocks, and other small notesGeneralizing the shuffle to arbitrary numbers of blocks. The post Rotation revisited: Shuffling more than three blocks, and other small notes appeared first on The Old New Thing .📝The Old New Thing
C++ Weekly - Ep 536 - Devirtualization and performance with final🎥Jason Turner
On deducing this in C++23 and ref qualifiers🎥MeetingCpp
Faking keyword arguments to functions in C++One of the many nice language features in Python are keyword arguments. They make some types of APIs concise and readable. Like so: Unfortunately C does not have keyword arguments and, by extension, neither does C++. Adding them as a language feature would take 15-20 years of effort, most of which would consist of trying to convince people via email that such a feature is important and should be added. There have been attempts to implement this via macros and template magic ( link ), but they have not seen widespread usage probably because they are using macros and template magic. However it turns out that with modern language features you can fake keyword arguments fairly convincingly. Like so: The add_argument method takes a single argument which is a struct. The extra curly braces inside the parentheses boil down to "whatever the underlying argument is, construct it in place with these parameters". The dotted names are designated initializers, so those fields get the specified value whereas other fields get their default values. And there you go, keyword arguments in C++. You just have to squint a bit and pretend not to see the extra curly braces.📝Nibble Stew
Low Latency Android Audio with improved CPU Performance - Phil Burk - ADC 2025🎥audiodevcon
Hello World even more modern in C++ [Learn C++ Shorts Lesson 2]🎥Mike ShahSunday, June 7, 2026
Tobias Hieta: A Brief Overview of the LLVM Architecture🎥SwedenCpp
Git is not the only option🎥Tsoding
Developing for Avid’s Audio Ecosystem - Rob Majors - ADCx India 2026🎥audiodevcon
C++ 20 Modules Brief Introduction | Modern Cpp Series Ep. 248🎥Mike Shah
C++26 Reflection gives us universal template parametersKeenan Horrigan on the std-proposals mailing list pointed out an interesting consequence of C++26 Reflection: it seems to give us “universal template parameters” almost for free.📝Arthur O’DwyerSaturday, June 6, 2026
How much do amd64 microarchitecture levels help in Go?Our 64-bit Intel and AMD processors have evolved over decades. When you compile a Go program for a 64-bit Intel or AMD processor, the compiler targets, by default, a nearly 20-year-old instruction set. The binary that comes out runs on essentially any x64 chip, but it also leaves on the table every instruction that was … Continue reading How much do amd64 microarchitecture levels help in Go?📝Daniel Lemire's blog
Проблема рекламации памяти и два новых решения в C++26. Лекция в университете iSpring.🎥Konstantin VladimirovFriday, June 5, 2026
Purging Undefined Behavior and Intel Assumptions in a Legacy C++ Codebase🎥CppOnline
The back cover of C++: The Programming Language also raises questions not answered by the front coverNot doing the reading. The post The back cover of C++: The Programming Language also raises questions not answered by the front cover appeared first on The Old New Thing .📝The Old New Thing
Rotation revisited: Avoiding having to calculate the gcd when doing cycle decompositionMath is hard. Let's go counting! The post Rotation revisited: Avoiding having to calculate the gcd when doing cycle decomposition appeared first on The Old New Thing .📝The Old New Thing
Instrumenting the Stack: Strategies for End-to-end Sanitizer Adoption - Damien Buhl - CppCon 2025🎥CppCon
June's Overload Journal has been published.The June 2026 ACCU Overload journal has been published and should arrive at members' addresses in the next few days. Overload 193 and previous issues of Overload can be accessed via the Journals menu.📝ACCU
Music Design and Systems - Achieving Inaudibly Complex Systems in Video Games - Liam Peacock - ADC🎥audiodevcon
C++: The Documentary released todayC++: The Documentary premiered today on YouTube, and it was great to be on the live chat with Bjarne and many other key folks who participated in C++’s history. I’m honored to have been one of hundreds of people who have played a part in advancing Bjarne’s wonderful project over the years. If you haven’t … Continue reading C++: The Documentary released today →📝Sutter’s Mill
Branchless sorting of trivially relocatable typesA few days ago Christof Kaser posted a very impressive blog post on “Fast Branchless Quicksort using Sorting-Networks” (chkas/blqsort). A “branchless” algorithm is one designed to exploit modern processors’ conditional-move instructions. So for example the blqs::sort2 primitive, which looks like this:📝Arthur O’Dwyer