Embedded Logging Case Study: From C to Shining C++ - Luke Valenty -CppNow 2022

Ғылым және технология

Slides: github.com/boostcon
CppNow Website: www.cppnow.org​
CppNow Twitter: @CppNow​
---
Embedded Logging Case Study: From C to Shining C++ - Luke Valenty -CppNow 2022
Logging on deeply embedded systems is critical for project success. However, the constraints of tiny CPUs and memory can force firmware engineers to settle for sub-optimal solutions. String formatting, concatenation, and easy to use logging functions can seem like luxuries deeply embedded systems cannot afford. Instead, many embedded logging libraries use manually allocated message IDs, string hashing, and source code parsing to implement logging solutions that fit the performance budget.
Modern C++ and CTRE provide enough features to enable logging with minimal runtime and memory overhead. Leveraging template metaprogramming, string_constant is created with std::string_view at its heart. Using this pattern, new strings can be created and manipulated at compile-time and string_constants can be formatted with both compile-time and runtime arguments.
Join Luke as he walks you through his team's challenges with logging starting in C and ending up with their ideal solution in C++.
---
Luke Valenty
Luke started his career at Intel in 2008 as a hardware validation engineer developing tools to validate chip designs in simulation. Since 2018 Luke has been working as a lead firmware engineer for deeply embedded components. His team is embracing modern C++ and leaving C woes behind.
---
Videos Filmed & Edited By Bash Films bashfilms.com/
KZread Channel Managed By Digital Medium Ltd: events.digital-medium.co.uk
#Boost​ #Cpp​ #CppNow​

Пікірлер: 7

  • @YTdama1
    @YTdama17 ай бұрын

    This talk deserves more views and comments! Amazing idea and walkthrough.

  • @user-kf8yp9vl9p
    @user-kf8yp9vl9p Жыл бұрын

    I walked that same path several years ago, but stopped at using hashes (along with variadic templates to capture log parameters). Thanks for giving me more to think about and possibly use someday!

  • @BoostCon

    @BoostCon

    Жыл бұрын

    Thanks for your comments!

  • @Daniel-rk3vf
    @Daniel-rk3vf2 жыл бұрын

    Just a little bit of constructive criticism -- seems like speaker didn't really know his presentation very well, or lacked confidence in his delivery... constantly going back to computer to look at his speaker notes. It's really distracting and it disrupts the speaker's cadence and continuity. I'm not saying the speaker doesn't know his /topic/ well, it was interesting and useful to me. But he's either not natural at presenting or didn't spend enough time preparing. The last time I saw someone going back and forth like this, it was clear the person presenting was not the person who created the presentation (don't think that's the case here). Still, kudos for presenting a useful topic and for having the courage to present.

  • @frydac

    @frydac

    2 жыл бұрын

    I don't completely disagree, but I think the talk was well structured and easy to follow, for me it didn't bother me when he was looking at his screen, and I think he has a pleasant and intelligible way of speaking. The last few years imo the average quality of C++ talks has gone down dramatically as the number of them increased, and for me this talk was pretty well done in comparison.

  • @LukeValenty

    @LukeValenty

    Жыл бұрын

    I'm the speaker...you are right! I wasn't able to practice the whole presentation more than once, though earlier parts were practiced more. I changed it around a bit too and so wasn't as familiar with the order. Will definitely focus on having full practice runs with finished slides next time. :)

  • @Buoy2

    @Buoy2

    Жыл бұрын

    I think it was fine

Келесі