Johnny's Software Lab

Johnny's Software Lab

We help you deliver fast software

  • Home
  • Performance
    • 2 Minute Reads
    • C++ Performance
    • Standard Library and Performance
    • Algorithms and Performance
    • Toolchain and Performance
    • Help the Compiler
    • Performance Analysis Tools
    • Computational Performance
    • Low Level Performance
    • Parallelization
    • Multithreaded Performance
    • Performance Contest
  • Debugging
  • Developer Tools
  • Vectorization Workshop
  • Need help?
  • Talks
  • Contact
  • About us
Menu

All posts tagged excessive copying

Growing Buffers to Avoid Copying Data

Growing Buffers to Avoid Copying Data

Posted on March 31, 2025March 31, 2025Author Ivica BogosavljevićPosted in Standard Library and PerformanceLeave a Reply

Copying data can be expensive in some cases, especially since it it doesn’t change the data, it’s just moves it. Therefore we, engineers interested in performance, want to avoid copying data as much as possible. We already talked about avoiding data copying in C++ earlier. In that post, we talked about what mechanism C++ has…

Read
Making your program run faster: the key concepts of software performance

Making your program run faster: the key concepts of software performance

Posted on February 27, 2022March 19, 2022Author Ivica BogosavljevićPosted in Performance3 Replies

In this post we present key concepts of software performance engineering.

Excessive copying in C++ and your program’s speed

Excessive copying in C++ and your program’s speed

Posted on September 26, 2020March 19, 2022Author Ivica BogosavljevićPosted in C++ Performance, PerformanceLeave a Reply

We talk about C++ and its weakness for temporary objects and excessive copying. We also give some tips on how to avoid them and make your program faster.

Like what you’re reading? Follow us!

  • Growing Buffers to Avoid Copying Data
  • Performance Debugging with llvm-mca: Simulating the CPU!
  • FIYA – Flamegraphs in Your App
  • Memory Subsystem Optimizations – The Remaining Topics
  • Speeding Up Convergence Loops. Or, on Vectorization and Precision Control

Recent Posts

  • Growing Buffers to Avoid Copying Data
  • Performance Debugging with llvm-mca: Simulating the CPU!
  • FIYA – Flamegraphs in Your App
  • Memory Subsystem Optimizations – The Remaining Topics
  • Speeding Up Convergence Loops. Or, on Vectorization and Precision Control

Recent Comments

  • Ivica Bogosavljević on Performance Debugging with llvm-mca: Simulating the CPU!
  • Denis Bakhvalov on Performance Debugging with llvm-mca: Simulating the CPU!
  • Cai on Loop Optimizations: interpreting the compiler optimization report
  • River on What is faster: vec.emplace_back(x) or vec[x] ?
  • Ivica Bogosavljević on Speedscope: visualize what your program is doing and where it is spending time

Archives

  • March 2025
  • January 2025
  • December 2024
  • October 2024
  • August 2024
  • June 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • March 2023
  • February 2023
  • January 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • June 2020
  • May 2020

Categories

  • 2 Minute Reads
  • Algorithms and Performance
  • C++ Performance
  • Computational Performance
  • Data Structure Performance
  • Debugging
  • Developer Tools
  • Help the Compiler
  • Kernel Space and Performance
  • Low Level Performance
  • Memory Footprint
  • Memory Subsystem Performance
  • Multithreaded Performance
  • Parallelization
  • Performance
  • Performance Analysis Tools
  • Performance Contest
  • Reliability
  • Standard Library and Performance
  • System Design
  • Toolchain and Performance
  • Vectorization

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org

©2025 Johnny's Software Lab | WordPress Theme by Superb WordPress Themes