Back to Basics: Debugging TechniquesBack to Basics: Debugging Techniques Bob Steagall CppCon 2021CppCon 2021 – Back to Basics: Debugging Techniques Copyright © 2021 Bob Steagall The Cost of Software Failures • January 2018, Tricentis’ salary -- $1.2T enterprise value lost for shareholders 2CppCon 2021 – Back to Basics: Debugging Techniques Copyright © 2021 Bob Steagall The Cost of Software Failures • Radiation overdoses from Therac-25 737 MAX MCAS system • System component design flaws 3CppCon 2021 – Back to Basics: Debugging Techniques Copyright © 2021 Bob Steagall Agenda • What are bugs? • What is debugging? • Challenges when0 码力 | 44 页 | 470.68 KB | 6 月前3
Compile-Time Compression and Resource Generation with C++20Descriptors 2 . 1/ Along the way Introduce some libraries I created for this code Discuss some techniques I found building compile-time libraries 2 . 2/ constexpr in Brief Speci�es a variable or function == 3 9 . 4/ String Compression Lets make a compressed string table https://github.com/AshleyRoll/squeeze map from enum Key to Compressed String Hu�man Coding for compression Output struct: Mapping choose an arbitrary amount of work they will allow in constexpr context Complex processing like compression will hit the limits Had to make more complex implementation to cache bit streams rather than walk0 码力 | 59 页 | 1.86 MB | 6 月前3
Get off my thread: Techniques for moving k to background threadsmy thread: Techniques for moving work to background threads Anthony Williams Just Software Solutions Ltd https://www.justsoftwaresolutions.co.uk September 2020Get off my thread: Techniques for moving0 码力 | 90 页 | 6.97 MB | 6 月前3
Techniques to Optimise Multi-threaded Data Building During Game Development1 Dominik Grabiec - Techniques to Optimise Multi-threaded Data Building During Game Development - CppCon 2024Hello My name is Dominik Grabiec This talk isFocusing on optimising the process around Background • What is data building? • Differences from Game Code • Assumptions and Concepts 2. Techniques • Keep Threads Busy • 3D Caching • Optimise Sorting • Avoid Blocking Threads 3. Questions 2Three Background What data building is Differences from normal game code Concepts used in presentation Techniques I've used to optimise the data building system Time for questions at end Numbers at bottom of 0 码力 | 99 页 | 2.40 MB | 6 月前3
When Lock-Free Still Isn't Enough: An Introduction to Wait-Free Programming and Concurrency Techniques0 码力 | 33 页 | 817.96 KB | 6 月前3
Rethinking Task Based Concurrency and Parallelism for Low Latency C++Messaging, Glimpse Instrumentation, etc … ○ github.com/michaelmaniscalco ■ Algorithms and Data Compression ■ M99, M03, RLE-EXP, MSufSortWhat is the Alternative?Thread Thread Thread Back Front Work mangling of the output Different threadsTalk Summary: Summary ● Summarize that three principal techniques were introduced. Signal trees, selection bias and work contracts. ● Signal trees - light weight0 码力 | 142 页 | 2.80 MB | 6 月前3
Template Metaprogramming: Type Traitscurrent • Not necessarily beginner to C++, but beginner to traditional template metaprogramming techniques 3Intended Audience • Beginner/Intermediate • Gentle entry: swimming pool to river • Part 1 current • Not necessarily beginner to C++, but beginner to traditional template metaprogramming techniques • Type traits part of standard library for ~10 years 3Intended Audience • Beginner/Intermediate current • Not necessarily beginner to C++, but beginner to traditional template metaprogramming techniques • Type traits part of standard library for ~10 years • Fundamentals have been in use for ~200 码力 | 403 页 | 5.30 MB | 6 月前3
Relocation: Blazing Fast Save And Restore, Then Morel!to do a lot of effort to improve performance a lot? • One option is to apply Data Orientation techniques in general. • Today, we give extra attention to “relocatability”Relocatability: • Does NOT refer tables for dynamically linked libraries, … • It is about the application of Data Orientation techniques with an emphasis of being able to move the data. • Why would we want to do that? • To keep performanceData Orientation • In 2021 I explained, in a very C++ centric way, about Data Orientation techniques, the benefits to be obtained and how to apply them. • I think it has aged well. • Today, we0 码力 | 41 页 | 2.81 MB | 6 月前3
Implementing Reflection Using the New C++20 Tooling Opportunity: Modulesdetection 8 Why do I care about reflection even more?• Implement reflection • Go over current techniques • Modules • Patterns and Tricks for runtime reflection 9 How do we get there?• Go from client constructor<>() .property("data", &MyStruct::data) .method("func", &MyStruct::func); } Current techniques: Manual• std::tuple_element (boost.pfr, magic_get) • Not flexible enough, no member functions Reflection TS - Fabian Renn Giles • Code parser • Use existing compiler frontend 1 8 Current techniques: Automatic• std::tuple_element (boost.pfr, magic_get) • Not flexible enough, no member functions0 码力 | 53 页 | 1.43 MB | 6 月前3
Just-in-Time Compilation - J F Bastien - CppCon 2020Brief History of Just-in-Time Software systems have been using “just-in-time” compilation (JiT) techniques since the 1960s. Broadly, JiT compilation includes any translation performed dynamically, after Brief History of Just-in-Time Software systems have been using “just-in-time” compilation (JiT) techniques since the 1960s. Broadly, JiT compilation includes any translation performed dynamically, after Brief History of Just-in-Time Software systems have been using “just-in-time” compilation (JiT) techniques since the 1960s. Broadly, JiT compilation includes any translation performed dynamically, after0 码力 | 111 页 | 3.98 MB | 6 月前3
共 114 条
- 1
- 2
- 3
- 4
- 5
- 6
- 12
相关搜索词
BacktoBasicsDebuggingTechniquesCompileTimeCompressionandResourceGenerationwithC++20GetoffmythreadformovingbackgroundthreadsOptimiseMultithreadedDataBuildingDuringGameDevelopmentWhenLockFreeStillIsnEnoughAnIntroductionWaitProgrammingConcurrencyRethinkingTaskBasedParallelismLowLatencyTemplateMetaprogrammingTypeTraitsRelocationBlazingFastSaveAndRestoreThenMorelImplementingReflectionUsingtheNewToolingOpportunityModulesJustinCompilationBastienCppCon2020













