An Introduction to Tracy Profiler in C++ - Marcos Slomp - CppCon 2023

Sdílet
Vložit
  • čas přidán 8. 03. 2024
  • cppcon.org/
    ---
    An Introduction to Tracy Profiler in C++ - Marcos Slomp - CppCon 2023
    github.com/CppCon/CppCon2023
    Traditional profilers are prone to skew profiling results due to overhead and time resolution constraints. Moreover, results are commonly presented in some aggregated fashion (e.g., symbol tables, flame graphs, call graphs, etc.) which are unable to pin-point anomalies in a timeline. While insightful, this methodology obfuscates the "when and where" aspect of performance issues, which can lead to rabbit holes and your time wasted.
    The Tracy profiler takes a different stance, putting the timeline in the front row. This helps on the identification of pathological cases, and on the performance analysis of specific portions of the program execution. Tracy also enables real-time performance analysis: you can interact with the profiler on-the-fly, as your program runs. While Tracy encourages manual code instrumentation through its minimally invasive, low-overhead, nanosecond resolution annotations, it still supports the more traditional, automatic call stack sampling approach; what's more, there is support for "selective" call stack sampling instrumentation. Even GPU activity can be instrumented and correlated alongside with the CPU timeline. Besides its performance profiling capabilities, Tracy also provides a variety of useful tracing utilities, such as plots, frame delimiters, memory allocation trackers, messages, and plenty more.
    This talk will showcase Tracy and make a case as to why it has been an unparalleled tool to assist with research tech transfers at Adobe, as well as in production code, to locate, understand and optimize hot-spots. Tracy is also free and open source, so there's no excuse not to give it a try!
    ---
    Marcos Slomp
    Marcos Slomp is a research engineer at Adobe focused on transferring research to products. He is particularly interested in getting the most out of GPU hardware for interactive image processing, 3D graphics and computer vision tasks. Making pixels look prettier and refresh quickly, that sort of thing. At Adobe, he has helped revamp the pixel pipeline in Photoshop, ship an interactive hardware-accelerated path tracing renderer in the Substance suite, revitalize 3D workflows in Illustrator, accelerate neural inference for rotoscoping in After Effects, and some more. He is also keen on investigating creative venues for authoring graphics and to facilitate programming. Before joining Adobe Research, Marcos was an R&D software engineer at Square-Enix, working on the graphics and performance needs of the Kingdom Hearts game franchise. He was also a research professor at Kagoshima University working on dynamic 3D scanning technology. Marcos obtained his PhD from Hiroshima University in Japan and his MS degree from UFRGS in Brazil.
    ---
    Videos Filmed & Edited by Bash Films: www.BashFilms.com
    CZcams Channel Managed by Digital Medium Ltd: events.digital-medium.co.uk
    ---
    Registration for CppCon: cppcon.org/registration/
    #cppcon #cppprogramming #cpp
  • Věda a technologie

Komentáře • 10

  • @marcosslomp4375
    @marcosslomp4375 Před 2 měsíci +15

    Make sure to check the slides, as there's PLENTY of content in there that I could not cover during the talk. Link to the slides is in the video description.

  • @OneBit74
    @OneBit74 Před 2 měsíci +2

    tracy is such a nice tool. I love working with it

  • @user-qn8yi3mz8y
    @user-qn8yi3mz8y Před 6 měsíci +16

    FYI you can use compile flags to not capture data when the profiler isn't connected. That helps with memory usage.

    • @seheyt
      @seheyt Před 2 měsíci

      pretty useful, since the very first program I tried to profile OOM-ed pretty hard in 10s :)

    • @marcosslomp4375
      @marcosslomp4375 Před 2 měsíci

      Indeed, I did not have time to touch upon the TRACY_ON_DEMAND macro during my talk, but I have it mentioned in the slides.

    • @marcosslomp4375
      @marcosslomp4375 Před 2 měsíci

      Indeed, I did not have time to cover it, but I mention the TRACY_ON_DEMAND macro in the slides.

  • @rigomatezoltan4302
    @rigomatezoltan4302 Před 2 měsíci +2

    Wow, a must have tool!

  • @salehjamali8752
    @salehjamali8752 Před 2 měsíci +2

    this is really cool. hats off

  • @rcpinto
    @rcpinto Před 2 měsíci +1

    Absadan??

  • @iddn
    @iddn Před 2 měsíci

    18 mins to get to the point…