Massif-Visualizer. Memory Profiling UI. Milian Wolff Desktop Summit
|
|
- Mabel Shaw
- 6 years ago
- Views:
Transcription
1 Massif-Visualizer Memory Profiling UI Milian Wolff Desktop Summit
2 Agenda 1 Valgrind 2 Massif 3 Massif-Visualizer Milian Massif-Visualizer Desktop Summit Berlin 2/32
3 1 Valgrind 2 Massif 3 Massif-Visualizer Milian Massif-Visualizer Desktop Summit Berlin 3/32
4 1 Valgrind Introduction Tool Suite Usage Caveats Milian Massif-Visualizer Desktop Summit Berlin 4/32
5 Valgrind Introduction Versatile: currently nine debugging and profiling utilities Open: licensed under the GPL Proven: under active development since 2000 Cross Platform: Linux and MacOS X Cross Platform: x86, AMD64, ARM,... Milian Massif-Visualizer Desktop Summit Berlin 5/32
6 Valgrind Introduction Versatile: currently nine debugging and profiling utilities Open: licensed under the GPL Proven: under active development since 2000 Cross Platform: Linux and MacOS X Cross Platform: x86, AMD64, ARM,... Milian Massif-Visualizer Desktop Summit Berlin 5/32
7 Valgrind Introduction Versatile: currently nine debugging and profiling utilities Open: licensed under the GPL Proven: under active development since 2000 Cross Platform: Linux and MacOS X Cross Platform: x86, AMD64, ARM,... Milian Massif-Visualizer Desktop Summit Berlin 5/32
8 Valgrind Introduction Versatile: currently nine debugging and profiling utilities Open: licensed under the GPL Proven: under active development since 2000 Cross Platform: Linux and MacOS X Cross Platform: x86, AMD64, ARM,... Milian Massif-Visualizer Desktop Summit Berlin 5/32
9 Valgrind Introduction Versatile: currently nine debugging and profiling utilities Open: licensed under the GPL Proven: under active development since 2000 Cross Platform: Linux and MacOS X Cross Platform: x86, AMD64, ARM,... Milian Massif-Visualizer Desktop Summit Berlin 5/32
10 1 Valgrind Introduction Tool Suite Usage Caveats Milian Massif-Visualizer Desktop Summit Berlin 6/32
11 Tool Suite Memcheck: detect errors in memory management leaks, invalid read/writes,... Helgrind / DRD: detect errors in multithreading race conditions, lock contention,... Callgrind: CPU cache profiling hotspots, bottlenecks, cache issues,... Massif: memory profiling total consumption, leaks, peaks, Milian Massif-Visualizer Desktop Summit Berlin 7/32
12 Tool Suite Memcheck: detect errors in memory management leaks, invalid read/writes,... Helgrind / DRD: detect errors in multithreading race conditions, lock contention,... Callgrind: CPU cache profiling hotspots, bottlenecks, cache issues,... Massif: memory profiling total consumption, leaks, peaks, Milian Massif-Visualizer Desktop Summit Berlin 7/32
13 Tool Suite Memcheck: detect errors in memory management leaks, invalid read/writes,... Helgrind / DRD: detect errors in multithreading race conditions, lock contention,... Callgrind: CPU cache profiling hotspots, bottlenecks, cache issues,... Massif: memory profiling total consumption, leaks, peaks, Milian Massif-Visualizer Desktop Summit Berlin 7/32
14 Tool Suite Memcheck: detect errors in memory management leaks, invalid read/writes,... Helgrind / DRD: detect errors in multithreading race conditions, lock contention,... Callgrind: CPU cache profiling hotspots, bottlenecks, cache issues,... Massif: memory profiling total consumption, leaks, peaks, Milian Massif-Visualizer Desktop Summit Berlin 7/32
15 Tool Suite Memcheck: detect errors in memory management leaks, invalid read/writes,... Helgrind / DRD: detect errors in multithreading race conditions, lock contention,... Callgrind: CPU cache profiling hotspots, bottlenecks, cache issues,... Massif: memory profiling total consumption, leaks, peaks, Milian Massif-Visualizer Desktop Summit Berlin 7/32
16 1 Valgrind Introduction Tool Suite Usage Caveats Milian Massif-Visualizer Desktop Summit Berlin 8/32
17 Usage no special compilation flags required but: debug symbols very useful running valgrind: valgrind --tool=... [tool options] myapp [your options] errors are outputted to CLI human readable profiling data written to file visualization UI required Milian Massif-Visualizer Desktop Summit Berlin 9/32
18 Usage no special compilation flags required but: debug symbols very useful running valgrind: valgrind --tool=... [tool options] myapp [your options] errors are outputted to CLI human readable profiling data written to file visualization UI required Milian Massif-Visualizer Desktop Summit Berlin 9/32
19 Usage no special compilation flags required but: debug symbols very useful running valgrind: valgrind --tool=... [tool options] myapp [your options] errors are outputted to CLI human readable profiling data written to file visualization UI required Milian Massif-Visualizer Desktop Summit Berlin 9/32
20 Usage no special compilation flags required but: debug symbols very useful running valgrind: valgrind --tool=... [tool options] myapp [your options] errors are outputted to CLI human readable profiling data written to file visualization UI required Milian Massif-Visualizer Desktop Summit Berlin 9/32
21 Usage no special compilation flags required but: debug symbols very useful running valgrind: valgrind --tool=... [tool options] myapp [your options] errors are outputted to CLI human readable profiling data written to file visualization UI required Milian Massif-Visualizer Desktop Summit Berlin 9/32
22 1 Valgrind Introduction Tool Suite Usage Caveats Milian Massif-Visualizer Desktop Summit Berlin 10/32
23 Caveats slowdown by factor 5 to 100 increased memory consumption interpretation of results requires knowledge and experience Milian Massif-Visualizer Desktop Summit Berlin 11/32
24 Caveats slowdown by factor 5 to 100 increased memory consumption interpretation of results requires knowledge and experience Milian Massif-Visualizer Desktop Summit Berlin 11/32
25 Caveats slowdown by factor 5 to 100 increased memory consumption interpretation of results requires knowledge and experience Milian Massif-Visualizer Desktop Summit Berlin 11/32
26 1 Valgrind 2 Massif 3 Massif-Visualizer Milian Massif-Visualizer Desktop Summit Berlin 12/32
27 2 Massif Introduction Output Useful Options ms print Milian Massif-Visualizer Desktop Summit Berlin 13/32
28 Massif Introduction mainly aimed at heap profiling optionally also stack profiling possible tracks memory allocations and deallocations caveats: slowdown by 20x, high memory overhead Milian Massif-Visualizer Desktop Summit Berlin 14/32
29 Massif Introduction mainly aimed at heap profiling optionally also stack profiling possible tracks memory allocations and deallocations caveats: slowdown by 20x, high memory overhead Milian Massif-Visualizer Desktop Summit Berlin 14/32
30 Massif Introduction mainly aimed at heap profiling optionally also stack profiling possible tracks memory allocations and deallocations caveats: slowdown by 20x, high memory overhead Milian Massif-Visualizer Desktop Summit Berlin 14/32
31 Massif Introduction mainly aimed at heap profiling optionally also stack profiling possible tracks memory allocations and deallocations caveats: slowdown by 20x, high memory overhead Milian Massif-Visualizer Desktop Summit Berlin 14/32
32 2 Massif Introduction Output Useful Options ms print Milian Massif-Visualizer Desktop Summit Berlin 15/32
33 Output snapshots of memory consumption over time simple snapshots: total memory consumption detailed snapshots: backtraces to significant memory allocations Milian Massif-Visualizer Desktop Summit Berlin 16/32
34 Output snapshots of memory consumption over time simple snapshots: total memory consumption detailed snapshots: backtraces to significant memory allocations Milian Massif-Visualizer Desktop Summit Berlin 16/32
35 Output snapshots of memory consumption over time simple snapshots: total memory consumption detailed snapshots: backtraces to significant memory allocations Milian Massif-Visualizer Desktop Summit Berlin 16/32
36 2 Massif Introduction Output Useful Options ms print Milian Massif-Visualizer Desktop Summit Berlin 17/32
37 Useful Options --max-snapshots=n [Default: 100] increase for long running profiling sessions --detailed-freq=n [Default: 10] decrease for short running, increase for long running profiling sessions --threshold=<m.n> [Default: 1.0] increase in case your app mainly consists of allocations below the default threshold Output: --massif-out-file=... [Default: massif.out.%p] Milian Massif-Visualizer Desktop Summit Berlin 18/32
38 Useful Options --max-snapshots=n [Default: 100] increase for long running profiling sessions --detailed-freq=n [Default: 10] decrease for short running, increase for long running profiling sessions --threshold=<m.n> [Default: 1.0] increase in case your app mainly consists of allocations below the default threshold Output: --massif-out-file=... [Default: massif.out.%p] Milian Massif-Visualizer Desktop Summit Berlin 18/32
39 Useful Options --max-snapshots=n [Default: 100] increase for long running profiling sessions --detailed-freq=n [Default: 10] decrease for short running, increase for long running profiling sessions --threshold=<m.n> [Default: 1.0] increase in case your app mainly consists of allocations below the default threshold Output: --massif-out-file=... [Default: massif.out.%p] Milian Massif-Visualizer Desktop Summit Berlin 18/32
40 Useful Options --max-snapshots=n [Default: 100] increase for long running profiling sessions --detailed-freq=n [Default: 10] decrease for short running, increase for long running profiling sessions --threshold=<m.n> [Default: 1.0] increase in case your app mainly consists of allocations below the default threshold Output: --massif-out-file=... [Default: massif.out.%p] Milian Massif-Visualizer Desktop Summit Berlin 18/32
41 2 Massif Introduction Output Useful Options ms print Milian Massif-Visualizer Desktop Summit Berlin 19/32
42 ms print Visualization ms print massif.out.pid less Milian Massif-Visualizer Desktop Summit Berlin 20/32
43 ms print Visualization ms print massif.out.pid less Milian Massif-Visualizer Desktop Summit Berlin 20/32
44 1 Valgrind 2 Massif 3 Massif-Visualizer Milian Massif-Visualizer Desktop Summit Berlin 21/32
45 3 Massif-Visualizer Massif-Visualizer Features Future Ideas Packages Resources Milian Massif-Visualizer Desktop Summit Berlin 22/32
46 Massif-Visualizer massif-visualizer massif.out.pid Milian Massif-Visualizer Desktop Summit Berlin 23/32
47 Massif-Visualizer interactive! Milian Massif-Visualizer Desktop Summit Berlin 23/32
48 3 Massif-Visualizer Massif-Visualizer Features Future Ideas Packages Resources Milian Massif-Visualizer Desktop Summit Berlin 24/32
49 Features vis. evolution of mem consumption vis. backtrace/callgraph custom allocators hiding functions shorten templates... Milian Massif-Visualizer Desktop Summit Berlin 25/32
50 Features vis. evolution of mem consumption vis. backtrace/callgraph custom allocators hiding functions shorten templates... Milian Massif-Visualizer Desktop Summit Berlin 25/32
51 Features vis. evolution of mem consumption vis. backtrace/callgraph custom allocators hiding functions shorten templates... Milian Massif-Visualizer Desktop Summit Berlin 25/32
52 Features vis. evolution of mem consumption vis. backtrace/callgraph custom allocators hiding functions shorten templates... Milian Massif-Visualizer Desktop Summit Berlin 25/32
53 Features vis. evolution of mem consumption vis. backtrace/callgraph custom allocators hiding functions shorten templates... Milian Massif-Visualizer Desktop Summit Berlin 25/32
54 Features vis. evolution of mem consumption vis. backtrace/callgraph custom allocators hiding functions shorten templates... Milian Massif-Visualizer Desktop Summit Berlin 25/32
55 3 Massif-Visualizer Massif-Visualizer Features Future Ideas Packages Resources Milian Massif-Visualizer Desktop Summit Berlin 26/32
56 Future Ideas & Todo s Comparison/Diff of Massif data files Top-Down view of backtraces (subtree matching) Export Graphs Milian Massif-Visualizer Desktop Summit Berlin 27/32
57 Future Ideas & Todo s Comparison/Diff of Massif data files Top-Down view of backtraces (subtree matching) Export Graphs Milian Massif-Visualizer Desktop Summit Berlin 27/32
58 Future Ideas & Todo s Comparison/Diff of Massif data files Top-Down view of backtraces (subtree matching) Export Graphs Milian Massif-Visualizer Desktop Summit Berlin 27/32
59 3 Massif-Visualizer Massif-Visualizer Features Future Ideas Packages Resources Milian Massif-Visualizer Desktop Summit Berlin 28/32
60 Packages Arch, Slackware,... have packages OpenSuse BuildService: MacOS X: Generally: Please help with packaging! Milian Massif-Visualizer Desktop Summit Berlin 29/32
61 Packages Arch, Slackware,... have packages OpenSuse BuildService: MacOS X: Generally: Please help with packaging! Milian Massif-Visualizer Desktop Summit Berlin 29/32
62 Packages Arch, Slackware,... have packages OpenSuse BuildService: MacOS X: Generally: Please help with packaging! Milian Massif-Visualizer Desktop Summit Berlin 29/32
63 Packages Arch, Slackware,... have packages OpenSuse BuildService: MacOS X: Generally: Please help with packaging! Milian Massif-Visualizer Desktop Summit Berlin 29/32
64 3 Massif-Visualizer Massif-Visualizer Features Future Ideas Packages Resources Milian Massif-Visualizer Desktop Summit Berlin 30/32
65 Resources Project Page: Bugs and Wish Requests: Mailing List: KDE-Apps Page: Milian Massif-Visualizer Desktop Summit Berlin 31/32
66 Questions? Milian Wolff Milian Massif-Visualizer Desktop Summit Berlin 32/32
Timing programs with time
Profiling Profiling measures the performance of a program and can be used to find CPU or memory bottlenecks. time A stopwatch gprof The GNU (CPU) Profiler callgrind Valgrind s CPU profiling tool massif
More informationValgrind. Philip Blakely. Laboratory for Scientific Computing, University of Cambridge. Philip Blakely (LSC) Valgrind 1 / 21
Valgrind Philip Blakely Laboratory for Scientific Computing, University of Cambridge Philip Blakely (LSC) Valgrind 1 / 21 Part I Valgrind Philip Blakely (LSC) Valgrind 2 / 21 Valgrind http://valgrind.org/
More informationPerformance Measurement
ECPE 170 Jeff Shafer University of the Pacific Performance Measurement 2 Lab Schedule Activities Today / Thursday Background discussion Lab 5 Performance Measurement Next Week Lab 6 Performance Optimization
More informationCS2141 Software Development using C/C++ Debugging
CS2141 Software Development using C/C++ Debugging Debugging Tips Examine the most recent change Error likely in, or exposed by, code most recently added Developing code incrementally and testing along
More informationvalgrind overview: runtime memory checker and a bit more What can we do with it?
Valgrind overview: Runtime memory checker and a bit more... What can we do with it? MLUG Mar 30, 2013 The problem When do we start thinking of weird bug in a program? The problem When do we start thinking
More informationUse Dynamic Analysis Tools on Linux
Use Dynamic Analysis Tools on Linux FTF-SDS-F0407 Gene Fortanely Freescale Software Engineer Catalin Udma A P R. 2 0 1 4 Software Engineer, Digital Networking TM External Use Session Introduction This
More informationCptS 360 (System Programming) Unit 4: Debugging
CptS 360 (System Programming) Unit 4: Debugging Bob Lewis School of Engineering and Applied Sciences Washington State University Spring, 2018 Motivation You re probably going to spend most of your code
More informationCache Profiling with Callgrind
Center for Information Services and High Performance Computing (ZIH) Cache Profiling with Callgrind Linux/x86 Performance Practical, 17.06.2009 Zellescher Weg 12 Willers-Bau A106 Tel. +49 351-463 - 31945
More informationData and File Structures Laboratory
Tools: GDB, Valgrind Assistant Professor Machine Intelligence Unit Indian Statistical Institute, Kolkata August, 2018 1 GDB 2 Valgrind A programmer s experience Case I int x = 10, y = 25; x = x++ + y++;
More informationCache Performance Analysis with Callgrind and KCachegrind
Cache Performance Analysis with Callgrind and KCachegrind VI-HPS Tuning Workshop 8 September 2011, Aachen Josef Weidendorfer Computer Architecture I-10, Department of Informatics Technische Universität
More informationCache Performance Analysis with Callgrind and KCachegrind
Cache Performance Analysis with Callgrind and KCachegrind Parallel Performance Analysis Course, 31 October, 2010 King Abdullah University of Science and Technology, Saudi Arabia Josef Weidendorfer Computer
More informationPerformance Measurement
ECPE 170 Jeff Shafer University of the Pacific Performance Measurement 2 Lab Schedule Ac?vi?es Today Background discussion Lab 5 Performance Measurement Wednesday Lab 5 Performance Measurement Friday Lab
More informationPointers. Héctor Menéndez 1. November 28, AIDA Research Group Computer Science Department Universidad Autónoma de Madrid.
Pointers Héctor Menéndez 1 AIDA Research Group Computer Science Department Universidad Autónoma de Madrid November 28, 2013 1 based on the original slides of the subject Index 1 Dynamic Memory 2 Arrays
More informationPraktische Aspekte der Informatik
Praktische Aspekte der Informatik Moritz Mühlhausen Prof. Marcus Magnor Optimization valgrind, gprof, and callgrind Further Reading Warning! The following slides are meant to give you a very superficial
More informationKDev-Valgrind : User Documentation
KDev-Valgrind : User Documentation Damien Coppel Anthony Corbacho Lionel Duc Mathieu Lornac Sébastien Rannou Lucas Sarie This document is for developers wishing to use the plugin. It enables to understand
More informationRunning Valgrind on multiple processors: a prototype. Philippe Waroquiers FOSDEM 2015 valgrind devroom
Running Valgrind on multiple processors: a prototype Philippe Waroquiers FOSDEM 2015 valgrind devroom 1 Valgrind and threads Valgrind runs properly multi-threaded applications But (mostly) runs them using
More informationSoftware Analysis Tools
CSCE 790 Introduction to Software Analysis Software Analysis Tools Professor Lisa Luo Fall 2018 Overview Source code CFG generator Binary code analysis Code obfuscation Symbolic Execution Dynamic analysis
More informationDEBUGGING: DYNAMIC PROGRAM ANALYSIS
DEBUGGING: DYNAMIC PROGRAM ANALYSIS WS 2017/2018 Martina Seidl Institute for Formal Models and Verification System Invariants properties of a program must hold over the entire run: integrity of data no
More informationValgrind Documentation
Valgrind Documentation Release 3.10.0 10 September 2014 Copyright 2000-2014 AUTHORS Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License,
More informationValgrind Documentation
.eps Valgrind Documentation Release 3.13.0 15 June 2017 Copyright 2000-2017 AUTHORS Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License,
More informationValgrind Documentation
Valgrind Documentation Release 3.6.0 21 October 2010 Copyright 2000-2010 AUTHORS Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License,
More informationCache Performance Analysis with Callgrind and KCachegrind
Cache Performance Analysis with Callgrind and KCachegrind 21 th VI-HPS Tuning Workshop April 2016, Garching Josef Weidendorfer Computer Architecture I-10, Department of Informatics Technische Universität
More informationScientific Programming in C IX. Debugging
Scientific Programming in C IX. Debugging Susi Lehtola 13 November 2012 Debugging Quite often you spend an hour to write a code, and then two hours debugging why it doesn t work properly. Scientific Programming
More informationDebugging and Profiling
Debugging and Profiling Dr. Axel Kohlmeyer Senior Scientific Computing Expert Information and Telecommunication Section The Abdus Salam International Centre for Theoretical Physics http://sites.google.com/site/akohlmey/
More informationCSE 160 Discussion Section. Winter 2017 Week 3
CSE 160 Discussion Section Winter 2017 Week 3 Homework 1 - Recap & a few points ComputeMandelbrotPoint func() in smdb.cpp does the job serially. You will have to do the same task in parallel manner in
More informationDynamic Race Detection with LLVM Compiler
Dynamic Race Detection with LLVM Compiler Compile-time instrumentation for ThreadSanitizer Konstantin Serebryany, Alexander Potapenko, Timur Iskhodzhanov, and Dmitriy Vyukov OOO Google, 7 Balchug st.,
More informationHigh Performance Computing and Programming. Performance Analysis
High Performance Computing and Programming Performance Analysis What is performance? Performance is a total effectiveness of a program What are the measures of the performance? execution time FLOPS memory
More informationFast dynamic program analysis Race detection. Konstantin Serebryany May
Fast dynamic program analysis Race detection Konstantin Serebryany May 20 2011 Agenda Dynamic program analysis Race detection: theory ThreadSanitizer: race detector Making ThreadSanitizer
More informationC/C++ toolchain. Static and dynamic code analysis. Karel Kubíček. Masaryk University. Brno, Czech Republic
C/C++ toolchain Static and dynamic code analysis Karel Kubíček Masaryk University Brno, Czech Republic April 20, 2018 Questions Who uses C/C++? Karel Kubíček C/C++ toolchain April 20, 2018 2 / 12 Questions
More informationUsing Intel VTune Amplifier XE and Inspector XE in.net environment
Using Intel VTune Amplifier XE and Inspector XE in.net environment Levent Akyil Technical Computing, Analyzers and Runtime Software and Services group 1 Refresher - Intel VTune Amplifier XE Intel Inspector
More informationTuning Valgrind for your Workload
Tuning Valgrind for your Workload Hints, tricks and tips to effectively use Valgrind on small or big applications Philippe Waroquiers FOSDEM 2015 valgrind devroom 1 Some rumours about Valgrind... Valgrind
More informationMODERNIZATION C++ Bjarne Stroustrup, creator of C++
C++ MODERNIZATION New releases of the C++ language maintain incredibly strong backwards compatibility, making it easy to keep older C++ code working properly as standards march forward. This makes C++
More informationMemory Checking and Single Processor Optimization with Valgrind [05b]
Memory Checking and Single Processor Optimization with Valgrind Memory Checking and Single Processor Optimization with Valgrind [05b] University of Stuttgart High-Performance Computing-Center Stuttgart
More informationSELF-AWARE APPLICATIONS AUTOMATIC PRODUCTION DIAGNOSIS DINA GOLDSHTEIN
SELF-AWARE APPLICATIONS AUTOMATIC PRODUCTION DIAGNOSIS DINA GOLDSHTEIN Agenda Motivation Hierarchy of self-monitoring CPU profiling GC monitoring Heap analysis Deadlock detection 2 Agenda Motivation Hierarchy
More informationCore dumped - on debuggers and other tools
Pascal M. Vaudrevange 28.03.2008 1 2 3 4 5 Motto Everyone knows that debugging is twice as hard as writing a program in the first place. So if you re as clever as you can be when you write it, how will
More informationComputer Systems and Networks
LECTURE 7: PERFORMANCE MEASUREMENT Computer Systems and Networks Dr. Pallipuram (vpallipuramkrishnamani@pacific.edu) University of the Pacific Lab Schedule Today Lab 5 Performance Measurement is open Work
More informationZing Vision. Answering your toughest production Java performance questions
Zing Vision Answering your toughest production Java performance questions Outline What is Zing Vision? Where does Zing Vision fit in your Java environment? Key features How it works Using ZVRobot Q & A
More informationBorland Optimizeit Enterprise Suite 6
Borland Optimizeit Enterprise Suite 6 Feature Matrix The table below shows which Optimizeit product components are available in Borland Optimizeit Enterprise Suite and which are available in Borland Optimizeit
More informationDebugging / Profiling
The Center for Astrophysical Thermonuclear Flashes Debugging / Profiling Chris Daley 23 rd June An Advanced Simulation & Computing (ASC) Academic Strategic Alliances Program (ASAP) Center at Motivation
More informationA Novel Approach to Explain the Detection of Memory Errors and Execution on Different Application Using Dr Memory.
A Novel Approach to Explain the Detection of Memory Errors and Execution on Different Application Using Dr Memory. Yashaswini J 1, Tripathi Ashish Ashok 2 1, 2 School of computer science and engineering,
More informationDebugging with gdb and valgrind
Debugging with gdb and valgrind Dr. Axel Kohlmeyer Associate Dean for Scientific Computing, CST Associate Director, Institute for Computational Science Assistant Vice President for High-Performance Computing
More informationSingle Processor Optimization III
Russian-German School on High-Performance Computer Systems, 27th June - 6th July, Novosibirsk 2. Day, 28th of June, 2005 HLRS, University of Stuttgart Slide 1 Outline Motivation Valgrind Memory Tracing
More informationImproving the Performance of your LabVIEW Applications
Improving the Performance of your LabVIEW Applications 1 Improving Performance in LabVIEW Purpose of Optimization Profiling Tools Memory Optimization Execution Optimization 2 Optimization Cycle Benchmark
More informationChapter 2. Operating-System Structures
Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System
More informationChapter 2: Operating-System Structures
Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System
More informationFacing the challenges of. New Approaches To Debugging Complex Codes! Ed Hinkel, Sales Engineer Rogue Wave Software
Facing the challenges of or New Approaches To Debugging Complex Codes! Ed Hinkel, Sales Engineer Rogue Wave Software Agenda Introduction Rogue Wave! TotalView! Approaching the Debugging Challenge! 1 TVScript
More informationAnalysis and Optimization of the Memory Access Behavior of Applications
Analysis and Optimization of the Memory Access Behavior of Applications October 8th, 2013 David Büttner (Josef Weidendorfer) Chair for Computer Architecture (LRR) TUM, Munich, Germany My Background Chair
More informationCS420: Operating Systems. OS Services & System Calls
OS Services & System Calls James Moscola Department of Engineering & Computer Science York College of Pennsylvania Based on Operating System Concepts, 9th Edition by Silberschatz, Galvin, Gagne Operating
More informationChapter 2: Operating-System Structures. Operating System Concepts 9 th Edition
Chapter 2: Operating-System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System
More informationProgramming Tips for CS758/858
Programming Tips for CS758/858 January 28, 2016 1 Introduction The programming assignments for CS758/858 will all be done in C. If you are not very familiar with the C programming language we recommend
More informationConcurrency, Thread. Dongkun Shin, SKKU
Concurrency, Thread 1 Thread Classic view a single point of execution within a program a single PC where instructions are being fetched from and executed), Multi-threaded program Has more than one point
More information6.S096: Introduction to C/C++
6.S096: Introduction to C/C++ Frank Li, Tom Lieber, Kyle Murray Lecture 4: Data Structures and Debugging! January 17, 2012 Today Memory Leaks and Valgrind Tool Structs and Unions Opaque Types Enum and
More informationCS 240 Final Exam Review
CS 240 Final Exam Review Linux I/O redirection Pipelines Standard commands C++ Pointers How to declare How to use Pointer arithmetic new, delete Memory leaks C++ Parameter Passing modes value pointer reference
More informationSista: Improving Cog s JIT performance. Clément Béra
Sista: Improving Cog s JIT performance Clément Béra Main people involved in Sista Eliot Miranda Over 30 years experience in Smalltalk VM Clément Béra 2 years engineer in the Pharo team Phd student starting
More informationChapter 2: Operating-System Structures. Operating System Concepts Essentials 8 th Edition
Chapter 2: Operating-System Structures Operating System Concepts Essentials 8 th Edition Silberschatz, Galvin and Gagne 2011 Chapter 2: Operating-System Structures Operating System Services User Operating
More informationCSCI-1200 Data Structures Spring 2016 Lecture 6 Pointers & Dynamic Memory
Announcements CSCI-1200 Data Structures Spring 2016 Lecture 6 Pointers & Dynamic Memory There will be no lecture on Tuesday, Feb. 16. Prof. Thompson s office hours are canceled for Monday, Feb. 15. Prof.
More informationValgrind Documentation Release June 2006 Copyright AUTHORS
Valgrind Documentation Release 3.2.0 7 June 2006 Copyright 2000-2006 AUTHORS Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License,
More informationLecture #10 Context Switching & Performance Optimization
SPRING 2015 Integrated Technical Education Cluster At AlAmeeria E-626-A Real-Time Embedded Systems (RTES) Lecture #10 Context Switching & Performance Optimization Instructor: Dr. Ahmad El-Banna Agenda
More informationChapter 2: Operating-System
Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services! User Operating System Interface! System Calls! Types of System Calls! System Programs! Operating
More informationComprehensive Kernel Instrumentation via Dynamic Binary Translation
Comprehensive Kernel Instrumentation via Dynamic Binary Translation Peter Feiner Angela Demke Brown Ashvin Goel University of Toronto 011 Complexity of Operating Systems 012 Complexity of Operating Systems
More informationFlex 3 Pre-release Tour
Flex 3 Pre-release Tour Andrew Shorten shorten@adobe.com Enrique Duvos duvos@adobe.com Flex 3 Pre-release Tour Agenda Adobe Platform Update (45 mins) Flex Builder 3 Features (45 mins) Adobe & Open Source
More informationEffective Debugging and Profiling for Qt and Qt Quick. Volker Krause KDAB
Effective Debugging and Profiling for Qt and Qt Quick Volker Krause volker.krause@kdab.com KDAB What's going to happen? Debugging/profiling Qt applications How to make generic tools work better with Qt
More informationTI2725-C, C programming lab, course
Valgrind tutorial Valgrind is a tool which can find memory leaks in your programs, such as buffer overflows and bad memory management. This document will show per example how Valgrind responds to buggy
More informationArcGIS Enterprise: Advanced Topics in Administration. Thomas Edghill & Moginraj Mohandas
ArcGIS Enterprise: Advanced Topics in Administration Thomas Edghill & Moginraj Mohandas Outline Overview: Base ArcGIS Enterprise Deployment - Key Components - Administrator Endpoints Advanced Workflows:
More informationIntel Parallel Studio 2011
THE ULTIMATE ALL-IN-ONE PERFORMANCE TOOLKIT Studio 2011 Product Brief Studio 2011 Accelerate Development of Reliable, High-Performance Serial and Threaded Applications for Multicore Studio 2011 is a comprehensive
More informationAdvanced Debugging and the Address Sanitizer
Developer Tools #WWDC15 Advanced Debugging and the Address Sanitizer Finding your undocumented features Session 413 Mike Swingler Xcode UI Infrastructure Anna Zaks LLVM Program Analysis 2015 Apple Inc.
More informationA Design for Comprehensive Kernel Instrumentation
Design for Comprehensive Kernel Instrumentation Peter Feiner ngela Demke Brown shvin Goel peter@cs.toronto.edu demke@cs.toronto.edu ashvin@eecg.toronto.edu University of Toronto 011 / 16 Motivation Transparent
More informationLecture 14 Notes. Brent Edmunds
Lecture 14 Notes Brent Edmunds October 5, 2012 Table of Contents 1 Sins of Coding 3 1.1 Accessing Undeclared Variables and Pointers...................... 3 1.2 Playing With What Isn t Yours..............................
More informationIntroduction to Virtual Machines. Michael Jantz
Introduction to Virtual Machines Michael Jantz Acknowledgements Slides adapted from Chapter 1 in Virtual Machines: Versatile Platforms for Systems and Processes by James E. Smith and Ravi Nair Credit to
More informationAgenda Process Concept Process Scheduling Operations on Processes Interprocess Communication 3.2
Lecture 3: Processes Agenda Process Concept Process Scheduling Operations on Processes Interprocess Communication 3.2 Process in General 3.3 Process Concept Process is an active program in execution; process
More informationCodeDynamics 2018 Release Notes
These release notes contain a summary of new features and enhancements, late-breaking product issues, migration from earlier releases, and bug fixes. PLEASE NOTE: The version of this document in the product
More informationCHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.
CHAPTER 2: SYSTEM STRUCTURES By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System
More informationChapter 2: System Structures. Operating System Concepts 9 th Edition
Chapter 2: System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs
More informationKernel Self Protection
Kernel Self Protection Kernel Summit 2016, Santa Fe Kees ( Case ) Cook keescook@chromium.org @kees_cook http://kernsec.org/wiki/index.php/kernel_self_protection_project http://www.openwall.com/lists/kernel-hardening/
More informationChapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on
Chapter 2: Operating-System Structures Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Objectives To describe the services an operating system provides to users, processes, and
More informationDebugging HPC Applications. David Lecomber CTO, Allinea Software
Debugging HPC Applications David Lecomber CTO, Allinea Software david@allinea.com Agenda Bugs and Debugging Debugging parallel applications Debugging OpenACC and other hybrid codes Debugging for Petascale
More informationChapter 2: Operating-System Structures
Chapter 2: Operating-System Structures Silberschatz, Galvin and Gagne 2009 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System
More information현재이이미지를표시할수없습니다. Chapter 9: Virtual Memory
현재이이미지를표시할수없습니다. Chapter 9: Virtual Memory Objectives To describe the benefits of a virtual memory system To explain the concepts of demand paging, page-replacement algorithms, and allocation of page frames
More informationProfiling and Debugging OpenCL Applications with ARM Development Tools. October 2014
Profiling and Debugging OpenCL Applications with ARM Development Tools October 2014 1 Agenda 1. Introduction to GPU Compute 2. ARM Development Solutions 3. Mali GPU Architecture 4. Using ARM DS-5 Streamline
More informationChapter 2: Operating-System Structures
Chapter 2: Operating-System Structures 2.1 Silberschatz, Galvin and Gagne 2009 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 21 Main Memory Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ Why not increase page size
More informationECMWF Workshop on High Performance Computing in Meteorology. 3 rd November Dean Stewart
ECMWF Workshop on High Performance Computing in Meteorology 3 rd November 2010 Dean Stewart Agenda Company Overview Rogue Wave Product Overview IMSL Fortran TotalView Debugger Acumem ThreadSpotter 1 Copyright
More informationChapter 2: Operating-System Structures
Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls (important!) Types of System Calls (important!) System
More informationEmbedded System Programming
Embedded System Programming Multicore ES (Module 40) Yann-Hang Lee Arizona State University yhlee@asu.edu (480) 727-7507 Summer 2014 The Era of Multi-core Processors RTOS Single-Core processor SMP-ready
More informationChapter 2: System Structures
Chapter 2: System Structures Chapter 2: System Structures 2.1 Operating-System Services 2.2 User and Operating-System Interface 2.3 System Calls 2.4 Types of System Calls 2.5 System Programs 2.6 Operating-System
More informationPractical Memory Safety with REST
Practical Memory Safety with REST KANAD SINHA & SIMHA SETHUMADHAVAN COLUMBIA UNIVERSITY Is memory safety relevant? In 2017, 55% of remote-code execution causing bugs in Microsoft due to memory errors Is
More informationEE355 Lab 5 - The Files Are *In* the Computer
1 Introduction In this lab you will modify a working word scramble game that selects a word from a predefined word bank to support a user-defined word bank that is read in from a file. This is a peer evaluated
More informationCUDA Tools for Debugging and Profiling
CUDA Tools for Debugging and Profiling CUDA Course, Jülich Supercomputing Centre Andreas Herten, Forschungszentrum Jülich, 3 August 2016 Overview What you will learn in this session Use cuda-memcheck to
More informationImprove your C++! John Richardson. Lab Study Meeting 2013
Improve your C++! John Richardson Lab Study Meeting 2013 Objectives How do I use the standard library correctly? What is C++11? Should I use it? Skills for debugging...? What kind of profiling is possible
More informationOperating System Services
CSE325 Principles of Operating Systems Operating System Services David Duggan dduggan@sandia.gov January 22, 2013 Reading Assignment 3 Chapter 3, due 01/29 1/23/13 CSE325 - OS Services 2 What Categories
More informationCHAPTER 16 - VIRTUAL MACHINES
CHAPTER 16 - VIRTUAL MACHINES 1 OBJECTIVES Explore history and benefits of virtual machines. Discuss the various virtual machine technologies. Describe the methods used to implement virtualization. Show
More informationPrototyping Architectural Support for Program Rollback Using FPGAs
Prototyping Architectural Support for Program Rollback Using FPGAs Radu Teodorescu and Josep Torrellas http://iacoma.cs.uiuc.edu University of Illinois at Urbana-Champaign Motivation Problem: Software
More informationOracle Developer Studio Performance Analyzer
Oracle Developer Studio Performance Analyzer The Oracle Developer Studio Performance Analyzer provides unparalleled insight into the behavior of your application, allowing you to identify bottlenecks and
More informationDynamically Detecting and Tolerating IF-Condition Data Races
Dynamically Detecting and Tolerating IF-Condition Data Races Shanxiang Qi (Google), Abdullah Muzahid (University of San Antonio), Wonsun Ahn, Josep Torrellas University of Illinois at Urbana-Champaign
More informationParallelism Marco Serafini
Parallelism Marco Serafini COMPSCI 590S Lecture 3 Announcements Reviews First paper posted on website Review due by this Wednesday 11 PM (hard deadline) Data Science Career Mixer (save the date!) November
More informationDebugging (Part 2) 1
Debugging (Part 2) 1 Programming in the Large Steps Design & Implement Program & programming style (done) Common data structures and algorithms Modularity Building techniques & tools (done) Test Testing
More informationPerformance Optimization: Simulation and Real Measurement
Performance Optimization: Simulation and Real Measurement KDE Developer Conference, Introduction Agenda Performance Analysis Profiling Tools: Examples & Demo KCachegrind: Visualizing Results What s to
More informationComputer Organization: A Programmer's Perspective
Profiling Oren Kapah orenkapah.ac@gmail.com Profiling: Performance Analysis Performance Analysis ( Profiling ) Understanding the run-time behavior of programs What parts are executed, when, for how long
More informationChapter 2: Operating-System Structures
Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System
More informationImproving the Productivity of Scalable Application Development with TotalView May 18th, 2010
Improving the Productivity of Scalable Application Development with TotalView May 18th, 2010 Chris Gottbrath Principal Product Manager Rogue Wave Major Product Offerings 2 TotalView Technologies Family
More information