C++Now 2017: John Lakos "Local (“Arena”) Memory Allocators"

แชร์
ฝัง
  • เผยแพร่เมื่อ 12 ก.ย. 2024
  • cppnow.org
    -
    Presentation Slides, PDFs, Source Code and other presenter materials are available at: github.com/boo...
    -
    Are memory allocators worth the trouble? What situations merit their use? How are they applied effectively? What’s the performance impact? This practical talk by large-scale C++ expert John Lakos demonstrates that having local memory allocators in your tool box may lead to as much as order-of-magnitude speed improvements.
    The runtime implications of the physical location of allocated memory are sometimes overlooked-even in the most performance-critical code. In this talk, we will examine how the performance of long-running systems can degrade when using just one global allocator (e.g., via new/delete). We will contrast the use of global allocators with various kinds of local allocators-allocators that allocate memory for a well-defined subset of objects in the system. We will also demonstrate how local allocators can reduce, if not entirely prevent, degradation seen in systems that rely solely on the global allocator. Six dimensions-fragmentability, allocation density, variation, utilization, locality, and contention-will be introduced to help characterize a given subsystem, assess the potential for accelerating its runtime performance, and-where appropriate-aid in determining the best local allocator to do so. Empirical evidence will be presented to demonstrate that introducing an appropriate local allocator can often result in substantial reductions in run times (compared with a similar system relying solely on just a single, global allocator).
    -
    John Lakos, author of Large-Scale C++ Software Design, serves at Bloomberg LP in New York City as a senior architect and mentor for C++ Software Development world-wide. He is also an active voting member of the C++ Standards Committee’s Evolution Working Group. Previously, Dr. Lakos directed the design and development of infrastructure libraries for proprietary analytic financial applications at Bear Stearns. For 12 years prior, Dr. Lakos developed large frameworks and advanced ICCAD applications at Mentor Graphics, for which he holds multiple software patents. His academic credentials include a Ph.D. in Computer Science ('97) and an Sc.D. in Electrical Engineering ('89) from Columbia University. Dr. Lakos received his undergraduate degrees from MIT in Mathematics ('82) and Computer Science ('81). His next book, entitled Large-Scale C++-Volume I: Process and Architecture, is anticipated in 2017.
    -
    Videos Filmed & Edited by Bash Films: www.BashFilms.com
    ---
    *--*
    ---

ความคิดเห็น • 2

  • @Gulzt
    @Gulzt 7 ปีที่แล้ว

    It seems that the slides are missing on github unfortunately. Could they be added?

  • @llothar68
    @llothar68 7 ปีที่แล้ว +1

    Is he drinking red wine instead of water during the presentation ?