How to Build Your First C++ Automated Refactoring Tool - CppCon 20239Proprietary + Confidential Large Scale Refactorings & Automated Refactoring Tools 10 10Refactoring Tool Use Cases 02 11Proprietary + Confidential Consistent Code Formatting 12 12Proprietary + Confidential0 码力 | 83 页 | 6.03 MB | 6 月前3
Practical memory pool based allocators for Modern C++Components: 1. A memory pool 2. An allocator which allocates from a memory pool 3. A way to generate bucket definitions according to the actual allocations © 2020 Apex.AI, Inc.Memory pool implementation Components: 1. A memory pool 2. An allocator which allocates from a memory pool 3. A way to generate bucket definitions according to the actual allocations © 2020 Apex.AI, Inc.Memory pool implementation altogether © 2020 Apex.AI, Inc.Bucket implementation © 2020 Apex.AI, Inc.Bucket class bucket { public: const std::size_t BlockSize; const std::size_t BlockCount; bucket(std::size_t block_size0 码力 | 49 页 | 986.95 KB | 6 月前3
The Roles of Symmetry And Orthogonality In Design(useful!) design feature Your Design defines object lifecycle • std::unique<> is an implementation tool, not a design decision Bar()…~Bar()Charley Bay - charleyb123 at gmail dot com The Roles of Symmetry implement object lifecycle Your Design defines object lifecycle • std::unique<> is an implementation tool, not a design decision Bar()…~Bar()Charley Bay - charleyb123 at gmail dot com The Roles of Symmetry 2021 (Strong!) Object Lifecycle Symmetry The #1 Reason to go to C++ (from C): C Memory is a “Bucket of bits” Well-defined: Type punning, ptr-casting, memory copying C++ Memory holds Objects Well-defined:0 码力 | 151 页 | 3.20 MB | 6 月前3
Class Layout[[no_unique_address]] Hash hasher; [[no_unique_address]] Pred pred; [[no_unique_address]] Allocator alloc; Bucket *buckets; ~~~ }; Hash, Pred, and Allocatorare often stateless. In the past, we’d have to do not recognize” error.) 104 Copyright © 2020 by Stephen C. Dewhurst and Daniel Saks Use The Right Tool For The Job Virtual functions are not intended to replace statically-bound functions. For statically‐bound0 码力 | 51 页 | 461.37 KB | 6 月前3
Peering Forward: C++'s Next Decadeleaking secrets C++26 introduces a new tool: erroneous behavior “Well-defined as being Just Wrong” Not undefined no time travel, or leaked secrets! A general tool, but first applied to… Reading uninitialized different kind of loop Risk of bottom-up design is that we may end up with overlapping pieces that don’t fill in the whole picture Suggested aim: P0707 metafunctions, Andrei’s instrumented_vector, reflect+regenerate uninitialized? fill(a); // B – call a function that sets a’s values For line A: If uninitialized, this program is actually ideal … but analyzers/humans can’t prove that fill(a) fills a0 码力 | 84 页 | 6.21 MB | 6 月前3
Data Structures That Make Video Games Go Round0 0 0 0 PSL PSL - Probe Sequence Length X X X X X X X X Core algorithm, 1. Every bucket contains metadata about it’s probe sequence length, PSL and is defaulted to some value. 2. On the bucket. 4. If bucket’s PSL value is the default, simply insert the element and store it’s PSL. 5. If the bucket’s PSL value is less than the element’s, swap. 6. Probe to the next bucket and and increment the PSL value of the swapped element. 7. Repeat steps 5 and 6 until an empty bucket( bucket with default PSL value) is found.Linear Probed Robin Hood Hashing 0 0 0 0 0 0 0 0 00 码力 | 196 页 | 3.03 MB | 6 月前3
Tracy: A Profiler You Don't Want to Misshttps://github.com/david-grs/geiger Intel IACA https://www.intel.com/content/www/us/en/developer/ articles/tool/architecture-code-analyzer.html“There is no doubt that the grail of efficiency leads to abuse. Programmers (markup) Analysis pre-recorded? | real-time? log files? | command-line tool? | GUI?, … An interactive, responsive and visual tool transforms the profiling experience! 11 Closing the Profiling Zoo holistic Instrumentation code annotations Analysis pre-recorded? | real-time? log files? | command-line tool? | GUI?, … 12 Closing the Profiling Zoo holistic (automatic) issues: information overload; profiling0 码力 | 84 页 | 8.70 MB | 6 月前3
Tracy: A Profiler You Don't Want to Misscom/morganstanley/Xpedite Intel IACA https://www.intel.com/content/www/us/en/developer/ articles/tool/architecture-code-analyzer.html“There is no doubt that the grail of efficiency leads to abuse. Programmers (markup) Analysis pre-recorded? | real-time? log files? | command-line tool? | GUI?, … An interactive, responsive and visual tool transforms the profiling experience! 11 Closing the Profiling Zoo holistic Instrumentation code annotations (markup) Analysis pre-recorded? | real-time? log files? | command-line tool? | GUI?, … 12 Closing the Profiling Zoo holistic (automatic) issues: information overload; profiling0 码力 | 85 页 | 6.51 MB | 6 月前3
POCOAS in C++: A Portable Abstraction for Distributed Data Structures}Distributed Hash Table - Open addressing -- hash table buckets are split among procs - To manipulate a bucket, directly read/write using RDMA. - Resizing must be done collectively P0 P1 P2 P3 [1] ICPP’19 Distributed Hash Table - Open addressing -- hash table buckets are split among procs - To manipulate a bucket, directly read/write using RDMA. - Resizing must be done collectively P0 P1 P2 P3 [1] ICPP’19 alDistributed Hash Table - Open addressing -- hash table buckets are split among procs - To manipulate a bucket, directly read/write using RDMA. - Resizing must be done collectively P0 P1 P2 P3 insert({k0 码力 | 128 页 | 2.03 MB | 6 月前3
Conan 2.0 Documentationonwards, there is a commitment to stability, with the goal of not breaking user space while evolving the tool and the platform. This means: • Moving forward to following minor versions 2.1, 2.2, ..., 2.X should in Github and counts with contributions from more than 300 different users (this is just the client tool). • Many other users contribute recipes for ConanCenter via the https://github.com/conan-io/conan-center-index contain hands-on, fully operational examples with code, aimed to explain some very specific feature, tool or behavior. They do not have a conducting thread, they should be navigated by topic. • The reference0 码力 | 652 页 | 4.00 MB | 1 年前3
共 190 条
- 1
- 2
- 3
- 4
- 5
- 6
- 19
相关搜索词
HowtoBuildYourFirstC++AutomatedRefactoringToolCppCon2023PracticalmemorypoolbasedallocatorsforModernTheRolesofSymmetryAndOrthogonalityInDesignClassLayoutPeeringForwardNextDecadeDataStructuresThatMakeVideoGamesGoRoundTracyProfilerYouDonWantMissPOCOASinPortableAbstractionDistributedConan2.0Documentation













