Software Engineering Lab - PowerPoint PPT Presentation

1 / 19
About This Presentation
Title:

Software Engineering Lab

Description:

Components launched from container programs such as Microsoft Internet Explorer, ... Microsoft Excel and Microsoft Word plug-ins .NET Managed Code ... – PowerPoint PPT presentation

Number of Views:18
Avg rating:3.0/5.0
Slides: 20
Provided by: shellCe
Category:

less

Transcript and Presenter's Notes

Title: Software Engineering Lab


1
Software Engineering Lab Summer
2005 http//ce.sharif.edu/ganji/SELab
2
What is Rational Quantify?
  • A tool for finding performance bottlenecks.
  • Quantify profiles performance for code written in
    all commonly used programming languages
  • Visual C/C code
  • Visual Basic projects
  • Java applets, class files, .jar files, and code
    launched by container programs
  • .NET managed code assemblies
  • Components launched from container programs such
    as Microsoft Internet Explorer,
  • Microsoft Excel and Microsoft Word plug-ins

3
.NET Managed Code
  • Program code that has been compiled to the
    Microsoft Intermediate Language (MSIL).
  • MSIL is a CPU-independent instruction set
    designed to run on Microsoft .NET platform.
  • Prior to execution, MSIL is converted to native
    machine code by the .NET common language run time
    (CLR).

4
Selecting A Program to RUN
Searches for dependencies like classes here
For running .NET or VB 6 programs
Creates the file ltexenamegt_pure.ini in which it
saves your settings for future use
5
Settings for Unmanaged Code (natively compiled
C/C applications)
Quantify tracks the total machine cycles required
to execute each line of code. (Most
detailed/Execution Overhead)
Quantify tracks the total machine cycles required
to execute each function. (Most
detailed/Execution Overhead)
  • Quantify records the amount of time spent in each
    function and then converts the time into
    equivalent number of machine cycles.
  • Not accurate (influenced by CPU state)
  • Best performance

6
Settings for Java/Managed Code
7
Run Time Settings for Unmanaged Code
  • The timing method to use to record time for
    functions in user modules.
  • Elapsed Time (Total time includes I/O,)
  • Kernel Time (Amount of time when the thread is
    in kernel mode)
  • User Kernel Time (Amount of time executing
    code in the thread)
  • User Time (Amount of time when the thread is in
    user mode)
  • Ignore (records the time as zero)
  • The timing method to use to record time for
    functions in system modules (e.g. kernel32.dll)
  • Elapsed Time
  • Kernel Time
  • User Kernel Time
  • User Time
  • Ignore
  • The timing method to use to record time for
    functions that block on I/O (e.g. Read File)
  • Elapsed Time
  • Kernel Time
  • User Kernel Time
  • User Time
  • Ignore

8
Running the Program (Collecting Data)
9
Call Graph View
10
Function List View
11
Function List View
12
Function Detail View
13
Annotated Source View
14
Filtering
15
Comparing two Run Results
16
Note
  • Do not use breakpoints while collecting data with
    Quantify.

17
Settings for Visual Studio .NET
  • For native-compiled (unmanaged) code
  • In the Property Pages for your project, C/C
    folder, General page
  • Select Program Database in the Debug Information
    Format property drop-down list box.
  • In the C/C folder, Code Generation page
  • Select Default in the Basic Runtime Checks
    property drop-down list box.
  • In the Linker folder, General page
  • Select No in the Enable Incremental Linking
    property drop-down list box.
  • In the Linker folder, Command Line page
  • In the Additional Options box add /fixedno.

18
THE END
19
Notes
  • The following topics are added for optional
    presentations
  • Component-Based Software Engineering
  • Aspect-Oriented Programming
  • JavaBeans versus ActiveX
  • Service-Oriented Programming
  • XML, XSD and XSLT
  • Dont forget to Check
  • http//ce.sharif.edu/ganji/SELab
Write a Comment
User Comments (0)
About PowerShow.com