Distributed Ranges: A Model for Building Distributed Data Structures, Algorithms, and Views
0 码力 | 127 页 | 2.06 MB | 5 月前3C++ Memory Model: from C++11 to C++23
Memory Model C++11 – C++23About Me: alex.dathskovsky@speedata.io www.linkedin.com/in/alexdathskovsky https://www.cppnext.comAlex Dathskovsky | alex.dathskovsky@speedata.io | www.linkedin.com/in/a0 码力 | 112 页 | 5.17 MB | 5 月前3Back To Basics: Functional Programming in C++
Jonathan Müller — @foonathan Back to Basics: Functional Programming in C++ CppCon 2024-09-19 2Declarative Programming Definition Specify the desired outcome (only), have the system figure it out how Jonathan Müller — @foonathan Back to Basics: Functional Programming in C++ CppCon 2024-09-19 3Declarative Programming Definition Specify the desired outcome (only), have the system figure it out how Jonathan Müller — @foonathan Back to Basics: Functional Programming in C++ CppCon 2024-09-19 3Declarative Programming Definition Specify the desired outcome (only), have the system figure it out how0 码力 | 178 页 | 918.67 KB | 5 月前3Just-in-Time Compilation - J F Bastien - CppCon 2020
perspective: > I understand C++, and I kinda get assembly because of compiler explorer. Our typical model of AoT is “what C and C++ do”, and I want to expand the understanding for what other computation models superior to hand-coded demultiplexors. DPF achieves high performance by using a carefully-designed declarative packet-filter language that is aggressively optimized using dynamic code generation. — 1994 superior to hand-coded demultiplexors. DPF achieves high performance by using a carefully-designed declarative packet-filter language that is aggressively optimized using dynamic code generation. — 19940 码力 | 111 页 | 3.98 MB | 5 月前3Express Your Expectations: A Fast, Compliant JSON Pull Parser for Writing Robust Applications
Jonathan Müller — @foonathan Express your expectations CppCon 2023-10-03 48Push-model: Iteration and JSON parser Push model: Algorithm computes data and invokes handler. struct range_sink { void operator()(auto Jonathan Müller — @foonathan Express your expectations CppCon 2023-10-03 49Pull-model: Iteration and JSON parser Pull model: Algorithm computes next data when requested by user. struct iterator { T& Jonathan Müller — @foonathan Express your expectations CppCon 2023-10-03 50Pull-model: Iteration and JSON parser Pull model: Algorithm computes next data when requested by user. struct iterator { std::optional0 码力 | 143 页 | 736.91 KB | 5 月前3Delivering safe C++
libraries • Enforced by language rules and static analysis • The basic model for achieving that can be found in A brief introduction to C++'s model for type- and resource-safety (2015) and Type-and-resource safety concepts in code” • Direct representation of ideas in code • Focus on classes • Make code more declarative • Make more information available to compilers • Early examples • Vector • String • File handle as good support for user-defined types as for built-in types • Say what you mean • Emphasizes declarative styles and abstraction • Syntax matters (often in perverse ways) • In general, verbosity is0 码力 | 74 页 | 2.72 MB | 5 月前3Khronos APIs for Heterogeneous Compute and Safety: SYCL and SYCL SC
CUDA as an example● Unified shared memory provides an alternative pointer-based data management model to the buffer/accessor mode ○ Unified virtual address space (consistent pointers) ○ Pointer-based agreements • Europe EPI: hipSYCL in Leonardo, Lumi and Karolina SYCL AS A UNIVERSAL PROGRAMMING MODEL FOR HPC 3 Pre-exasacaleKHRONOS SAFETY CRITICAL STANDARDS EVOLUTION OpenGL ES 1.0 - 2003 Fixed function “safe” subset of C that eliminates C++’s productivity advantages ▪ Do not deliver a purely run-time model that imposes overheads that eliminate C++’s strengths in the area of performance ▪ Do not imply0 码力 | 82 页 | 3.35 MB | 5 月前3A Case-study in Rewriting a Legacy GUI Library for Real-time Audio Software in Modern C++
running UIs - Metering wants high framerate - Users need responsive control of audio Threading model - Hosts can call us from any thread - Each host may do this this differently Challenges for real-time signal connections - Forgetting to repaint - Doesn’t encourage using new types Solutions - Declarative API - Put all information together - Typesafe, compile time errors - Only create properties0 码力 | 138 页 | 2.75 MB | 5 月前3Applicative: The Forgotten Functional Pattern
values. to multiple (possibly failing) values. Goals: Goals: no macros no manual control �ow declarative expression-oriented style good-looking code e�cient Let's do it with Let's do it with optional f, b); }); }); } 37HOW DID WE DO? HOW DID WE DO? No macros? No manual control �ow? Declarative style? Good-looking code? E�cient? 38APPLICATIVE SOLUTION APPLICATIVE SOLUTION We'll start return ap(fmap(l, f), b); } 44HOW DID WE DO? HOW DID WE DO? No macros? No manual control �ow? Declarative style? Good-looking code? E�cient? 45BEFORE YOU SAY IT… I KNOW BEFORE YOU SAY IT… I KNOW46LET'S0 码力 | 141 页 | 11.33 MB | 5 月前3CROSS PLATFORM PITFALLS AND HOW TO AVOID THEM
dependencies fetched and resolved automatically Acquire prebuilt binaries or cache binaries Declarative manifest file that can be checked-in to source controlC++ package managers: Conan, vcpkg Bring dependencies fetched and resolved automatically Acquire prebuilt binaries or cache binaries Declarative manifest file that can be checked-in to source control Install from multiple sourcesC++ package dependencies fetched and resolved automatically Acquire prebuilt binaries or cache binaries Declarative manifest file that can be checked-in to source control Install from multiple sources VersioningC++0 码力 | 67 页 | 360.44 KB | 5 月前3
共 170 条
- 1
- 2
- 3
- 4
- 5
- 6
- 17
相关搜索词
DistributedRangesModelforBuildingDataStructuresAlgorithmsandViewsC++Memoryfrom11to23BackToBasicsFunctionalProgramminginJustTimeCompilationBastienCppCon2020ExpressYourExpectationsFastCompliantJSONPullParserWritingRobustApplicationsDeliveringsafeKhronosAPIsHeterogeneousComputeSafetySYCLSCCasestudyRewritingLegacyGUILibraryRealtimeAudioSoftwareModernApplicativeTheForgottenPatternCROSSPLATFORMPITFALLSANDHOWTOAVOIDTHEM