Cargando…

Pro .NET Memory Management : For Better Code, Performance, and Scalability /

Understand .NET memory management internal workings, pitfalls, and techniques in order to effectively avoid a wide range of performance and scalability problems in your software. Despite automatic memory management in .NET, there are many advantages to be found in understanding how .NET memory works...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Kokosa, Konrad (Autor)
Formato: Electrónico eBook
Idioma:Inglés
Publicado: New York : Apress, [2018]
Temas:
Acceso en línea:Texto completo (Requiere registro previo con correo institucional)

MARC

LEADER 00000cam a2200000 i 4500
001 OR_on1065523014
003 OCoLC
005 20231017213018.0
006 m o d
007 cr cnu|||unuuu
008 181114s2018 nyu o 001 0 eng d
040 |a N$T  |b eng  |e rda  |e pn  |c N$T  |d N$T  |d EBLCP  |d GW5XE  |d OCLCF  |d YDX  |d UPM  |d OCLCQ  |d OCLCO  |d UKMGB  |d UMI  |d G3B  |d CAUOI  |d STF  |d UKAHL  |d C6I  |d OCLCQ  |d LVT  |d COO  |d OCLCQ  |d SRU  |d OCLCQ  |d OCLCO  |d COM  |d OCLCQ 
015 |a GBB902153  |2 bnb 
016 7 |a 019192436  |2 Uk 
019 |a 1066126975  |a 1080599008  |a 1082522729  |a 1086473970  |a 1097143397  |a 1118507762  |a 1125695578  |a 1136384480  |a 1144449536 
020 |a 9781484240274  |q (electronic bk.) 
020 |a 1484240278  |q (electronic bk.) 
020 |z 9781484240267 
020 |z 148424026X 
024 7 |a 10.1007/978-1-4842-4027-4  |2 doi 
029 1 |a AU@  |b 000064511118 
029 1 |a AU@  |b 000065067598 
029 1 |a AU@  |b 000065338282 
029 1 |a AU@  |b 000068981975 
029 1 |a CHNEW  |b 001073932 
029 1 |a CHVBK  |b 579467376 
029 1 |a UKMGB  |b 019192436 
035 |a (OCoLC)1065523014  |z (OCoLC)1066126975  |z (OCoLC)1080599008  |z (OCoLC)1082522729  |z (OCoLC)1086473970  |z (OCoLC)1097143397  |z (OCoLC)1118507762  |z (OCoLC)1125695578  |z (OCoLC)1136384480  |z (OCoLC)1144449536 
037 |a com.springer.onix.9781484240274  |b Springer Nature 
050 4 |a QA76.9.M45 
072 7 |a COM  |x 051230  |2 bisacsh 
072 7 |a UMP  |2 bicssc 
072 7 |a UMP  |2 thema 
082 0 4 |a 005.43  |2 23 
049 |a UAMI 
100 1 |a Kokosa, Konrad,  |e author. 
245 1 0 |a Pro .NET Memory Management :  |b For Better Code, Performance, and Scalability /  |c Konrad Kokosa. 
264 1 |a New York :  |b Apress,  |c [2018] 
300 |a 1 online resource 
336 |a text  |b txt  |2 rdacontent 
337 |a computer  |b c  |2 rdamedia 
338 |a online resource  |b cr  |2 rdacarrier 
347 |a text file 
347 |b PDF 
500 |a Includes index. 
588 0 |a Online resource; title from PDF title page (EBSCO, viewed November 15, 2018). 
505 0 |a Intro; Table of Contents; About the Author; About the Technical Reviewers; Acknowledgments; Foreword; Introduction; Chapter 1: Basic Concepts; Memory-Related Terms; The Static Allocation; The Register Machine; The Stack; The Stack Machine; The Pointer; The Heap; Manual Memory Management; Automatic Memory Management; Allocator, Mutator, and Collector; The Mutator; The Allocator; The Collector; Reference Counting; Tracking Collector; Mark Phase; Conservative Garbage Collector; Precise Garbage Collector; Collect Phase; Sweep; Compact; Small History; Summary; Rule 1 -- Educate Yourself. 
505 8 |a Chapter 2: Low-Level Memory ManagementHardware; Memory; CPU; CPU Cache; Cache Hit and Miss; Data Locality; Cache Implementation; Data Alignment; Non-temporal Access; Prefetching; Hierarchical Cache; Multicore Hierarchical Cache; Operating System; Virtual Memory; Large Pages; Virtual Memory Fragmentation; General Memory Layout; Windows Memory Management; Windows Memory Layout; Linux Memory Management; Linux Memory Layout; Operating System Influence; NUMA and CPU Groups; Summary; Rule 2 -- Random Access Should Be Avoided, Sequential Access Should Be Encouraged. 
505 8 |a Rule 3 -- Improve Spatial and Temporal Data LocalityRule 4 -- Consume More Advanced Possibilities; Chapter 3: Memory Measurements; Measure Early; Overhead and Invasiveness; Sampling vs. Tracing; Call Tree; Objects Graphs; Statistics; Latency vs. Throughput; Memory Dumps, Tracing, Live Debugging; Windows Environment; Overview; VMMap; Performance Counters; Event Tracing for Windows; Windows Performance Toolkit; Windows Performance Recorder; Windows Performance Analyzer; Opening File and Configur ation; Generic Events; Region of Interests; Flame Charts; Stack Tags; Custom Graphs; Profiles. 
505 8 |a PerfViewData Collection; Data Analysis; Memory Snapshots; ProcDump, DebugDiag; WinDbg; Disassemblers and Decompilers; BenchmarkDotNet; Commercial Tools; Visual Studio; Scitech .NET Memory Profiler; JetBrains DotMemory; RedGate ANTS Memory Profiler; Intel VTune Amplifier and AMD CodeAnalyst Performance Analyzer; Dynatrace and AppDynamics; Linux Environment; Overview; Perfcollect; Trace Compass; Opening File; CoreCLR. GC.collections; CoreCLR.threads.state; CoreCLR. GC.generations.ranges; The Final Results; Memory Dumps; Summary; Rule 5 -- Measure GC Early; Chapter 4: .NET Fundamentals. 
505 8 |a .NET Versions.NET Internals; Sample Program in Depth; Assemblies and Application Domains; Collectible Assemblies; Process Memory Regions; Scenario 4-1. How Big Is My Program in Memory?; Scenario 4-2. My Program's Memory Usage Keeps Growing; Scenario 4-3. My Program's Memory Usage Keeps Growing; Scenario 4-4. My Program's Memory Usage Keeps Growing; Type System; Type Categories; Type Storage; Value Types; Value Types Storage; Structs; Structs in General; Structs Storage; Reference Types; Classes; Strings; String Interning; Scenario 4-5. My Program's Memory Usage Is Too Big; Boxing and Unboxing. 
520 |a Understand .NET memory management internal workings, pitfalls, and techniques in order to effectively avoid a wide range of performance and scalability problems in your software. Despite automatic memory management in .NET, there are many advantages to be found in understanding how .NET memory works and how you can best write software that interacts with it efficiently and effectively. Pro .NET Memory Management is your comprehensive guide to writing better software by understanding and working with memory management in .NET. What You'll Learn: Understand the theoretical underpinnings of automatic memory management Take a deep dive into every aspect of .NET memory management, including detailed coverage of garbage collection (GC) implementation, that would otherwise take years of experience to acquire Get practical advice on how this knowledge can be applied in real-world software development Use practical knowledge of tools related to .NET memory management to diagnose various memory-related issues Explore various aspects of advanced memory management, including use of Span and Memory types This book is for .NET developers, solution architects, and performance engineers. Thoroughly vetted by the .NET Team at Microsoft, this book contains 25 valuable troubleshooting scenarios designed to help diagnose challenging memory problems. Readers will also benefit from a multitude of .NET memory management "rules" to live by that introduce methods for writing memory-aware code and the means for avoiding common, destructive pitfalls. Konrad Kokosa is an experienced software designer, developer, and Microsoft MVP specializing in Microsoft technologies, but curious about everything else. A programmer for more than a decade, he has a passion for solving performance problems, speeding up applications, and resolving all types of architectural puzzles in .NET. Konrad is an independent consultant, and an active member of the community, blogging, speaking, and training. He is co-founder of Dotnetos.org 
590 |a O'Reilly  |b O'Reilly Online Learning: Academic/Public Library Edition 
630 0 0 |a Microsoft .NET Framework. 
630 0 7 |a Microsoft .NET Framework.  |2 fast  |0 (OCoLC)fst01020083 
650 0 |a Application software. 
650 0 |a Memory management (Computer science) 
650 6 |a Logiciels d'application. 
650 6 |a Gestion mémoire (Informatique) 
650 7 |a Storage media & peripherals.  |2 bicssc 
650 7 |a Programming & scripting languages: general.  |2 bicssc 
650 7 |a Software Engineering.  |2 bicssc 
650 7 |a Microsoft programming.  |2 bicssc 
650 7 |a COMPUTERS  |x Software Development & Engineering  |x General.  |2 bisacsh 
650 7 |a Application software.  |2 fast  |0 (OCoLC)fst00811706 
650 7 |a Memory management (Computer science)  |2 fast  |0 (OCoLC)fst01015971 
776 0 8 |i Print version:  |a Kokosa, Konrad.  |t Pro .NET Memory Management.  |d New York : Apress, [2018]  |z 148424026X  |z 9781484240267  |w (OCoLC)1048936626 
856 4 0 |u https://learning.oreilly.com/library/view/~/9781484240274/?ar  |z Texto completo (Requiere registro previo con correo institucional) 
938 |a Askews and Holts Library Services  |b ASKH  |n AH35814763 
938 |a ProQuest Ebook Central  |b EBLB  |n EBL5598622 
938 |a EBSCOhost  |b EBSC  |n 1935648 
938 |a YBP Library Services  |b YANK  |n 15843885 
994 |a 92  |b IZTAP