paraver internals and details - docencia.ac.upc.edu

17
1 Paraver internals and details Jesus Labarta [email protected] 2 Index Overview Semantic module Analysis module

Upload: others

Post on 15-May-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Paraver internals and details - docencia.ac.upc.edu

1

Paraver internals and details

Jesus [email protected]

2

Index

• Overview• Semantic module• Analysis module

Page 2: Paraver internals and details - docencia.ac.upc.edu

2

3

overview

4

Paraver: Performance Data browser

Raw data

Performance index : s(t) (piecewise constant)Identifier of functionHardware countsMiss ratiosPerformance (IPC, Mflops,…)Routine duration• • •

tunable

StatisticsProfilesAverage miss ratio per routineHistogram of routine durationNumber of messages• • •

Seeing is believing

measuring is better

Page 3: Paraver internals and details - docencia.ac.upc.edu

3

5

Performance views

• Few types of views

• Timelines

• Textual

• Statistics

• Profiles

• Histograms

• Configuration files

• Capture knowledge on how to generate view from raw data

• Loading configuration file pops up display or analysis window

• Distribution

• Set of basic view and stats provided with the tool.

• Also useful for

• Checkpointing of studies

• Cooperative work

• Bug reporting

• Recording your own favorite views

• Get used with the tool and to learn on the internals

6

Configuration files

Select directory

Select trace to which to apply

List of configuration files in current directory

Description of view of select fileNavigate through directory tree

Page 4: Paraver internals and details - docencia.ac.upc.edu

4

7

TImelines

• Each window displays one view

• Piecewise constant function of time

• One such function of time per object:

• Thread, process, application, workload, CPU, node

• Types of functions

• Categorical

• State, user function, outlined routine

• Logical

• In specific user function, In MPI call, In long MPI call

• Numerical

• IPC, L2 miss ratio, Duration of MPI call, duration of computation burst

[ ] <⊂∈ nNSi ,n0,

[ )1,,)( +∈= iii ttiStS

RSi ∈

{ }1 ,0 ∈iS

8

Timelines

• Representation

• Function of time

• Color encoding

• Gradient color• Light green →Dark blue

• Not null gradient

• Black for zero value• Light green → Dark blue

Page 5: Paraver internals and details - docencia.ac.upc.edu

5

9

Navigation

Right click

Hide lower panel

Draw icon at send points

Draw icon at receive points

Draw flag icon for events

Display as function or color encoded

Display animation

Draw lines for pt2pt communication

Zoom: select area with:• left click – middle click for zoom within same window• 2 left clicks for cloning zoomed window

select area with 2 left clicks (within same or between different windows)

Copy features from one window to another• Window size• Synchronize region of trace analyzed• Set same color gradient• Filter settings

10

Textual

•Appears when clicking on a timeline

•Textual display of

• Semantic value

• Events

• Communications

Page 6: Paraver internals and details - docencia.ac.upc.edu

6

11

Views: Statistics

• 2D

• Profiles

• Histograms

• Correlations

• Communication Patterns

• 3D

MPI calls profile

Duration - IPC

While communicatingWhile computing

Control window

Data window

12

How to read profiles

Thre

ad

MPI call, user function,…

Value is a statistic (i.e. #occurrences, avg,) computed on Data window

Columns determined by categorical Control window

Page 7: Paraver internals and details - docencia.ac.upc.edu

7

13

How to read histograms

Thre

ad

duration, instructions, BW, IPC, ...

Value is a statistic (i.e. #occurrences, avg,) computed on Data window

Columns correspond to bins of values of a numeric Control window

14

2D analysis module

max

min

• Color encoding

Fit color encodingMin and max to dynamic range of statisticBin definition

• Fit bin sizeTo cover the whole control window

dynamic range and generate at most 20 columns

Hide null columns

Color/not cells

Display whole table / cell text

Translate (.pcf)

Transpose

Show/hide lower panel

Region analyzed

Activate 3D analysis

Page 8: Paraver internals and details - docencia.ac.upc.edu

8

15

2D analysis module

Display whole table colored / text for each cell

Text for cursor

Copy/paste analyzed time interval to from other 2D/timeline

Copy/paste color scale between 2Ds

Generate ASCII file with table data

Save configuration file

Right click

Open Control window Open Data window

Generate a timeline, derived form control window by zeroing values outside range selected by clicking in the table

Repeat the analysis (after changing statistics or data window)

Repeat the analysis for the whole trace

Perform a new analysis

(selecting new control window and

interval)

16

Semantic module internals

Page 9: Paraver internals and details - docencia.ac.upc.edu

9

17

Filter module

• Dismiss filter window

• Show list of event types and values

• Communications that pass through the filter

• events that pass through the filter

• Show list of tasks

• Display window to which applies

18

Basic functions of time

• The filter module presents a subset of the trace to the semantic module. Each thread is described by

• A sequence of events , states and communications

• For each event let be its time and its value

• For each state let be its start time its stop time and its value

• For each Communication let be its time, its size and

• Semantic module builds

[ ) Ν∈∈= + itttiSts ii ,,),()( 1

NiEvi ∈,

)( iEvV)( iEvT

NiSti ∈,

)( is StT )( ie StT )( iStV

NiCi ∈,

)( iCT )( iCSz { }recvsendCDir i ,)( ∈

Function of time Series of values

Filter

Semantic

Page 10: Paraver internals and details - docencia.ac.upc.edu

10

19

From events to functions

• Different possibilities

• Last event value

• Next event value

• Average Next Event Value

• Interval btw. Events

• Incoming bytes

• Bytes btw. events

• Bytes sent/received)()( iEvViS = [ ))(),()(|,)()( 1+∈=∑ iij

jj EvTEvTCTjCSziS

)()( 1+= iEvViS

)()()()(

1

1

ii

i

EvTEvTEvViS−

=+

+

)()()( 11 ++ −= ii EvTEvTiS

sizeInCommSS ii i .1 += −

20

The power of maths: Composition

• S’(t) = f(S(t)) S’ = f ° S

• Sign

• 1-sign

• Select range

• Sign ° Is equal

• Delta

• Stacked value

[ ] 0:)(?,)()(' tSbatStS ∈=

)0:)(?)(()(' tSatSsigntS ==

ii SStS −= + 1)('

))(()(' tSsigntS =

))((1)(' tSsigntS −=

Page 11: Paraver internals and details - docencia.ac.upc.edu

11

21

Semantic module

•Derived windows

• Point wise operation

•S = α * Sa <op> β * Sb

•<op> : + , -, *, /, …

Loads

Stores

Mem Ops

L2 Line Loads

L2 miss ratio

x100

22

Semantic module

•Derived windows

• Point wise operation

•S = α * Sa <op> β * Sb

•<op> : + , -, *, /, …

Interval between MPI events In MPI call

MPI call duration

Page 12: Paraver internals and details - docencia.ac.upc.edu

12

23

• How to build expression

Semantic module: derived windows

• Multiplying factor

24

Semantic module

• Angle:

• Process model

• Thread, task, application, workload

• Resource model

• CPU, node, system

fthreadfthreadfthreadfthreadfthreadfthreadfthread

Process view

Resource view

fprocess

fresource

Page 13: Paraver internals and details - docencia.ac.upc.edu

13

25

• Semantic value: S(t)

• S = fcomp2 o fcomp1 o fWorkload o fApplication o ftask o Sthread

• Semantic functions

•fcomp2, fcomp1: sign, mod, div, in range, select range

•fApplication, fWorkload : add, average, max, select

•ftask : add, average, max, select

•Sthread: in state, useful, given state,

• last event value,

• next event value,

• average next event value

• interval between events, …

Semantic module: process model view

fAppl

ftask

fthread fthread fthreadfthread

ftaskftask

fthread fthread

fWorkload

fcomp1

fcomp2

26

• Sfresource = fcomp2 o fcomp1 o fSystem o fNode o fCPU o Sthread

• Semantic functions

•fSystem : add, average, max, select

•fNode : add, average, max, select

•fCPU : active thread, select

•Sthread: in state, useful, given state, next event value, thread_id

Semantic module: resource view

fNode

fCPU

fthread

fSystem

fthread

fthread

fthread

fthread

fthread

fCPU

fCPU

fNode

Page 14: Paraver internals and details - docencia.ac.upc.edu

14

27

Semantic module: process model view

28

2D/3D internals

Page 15: Paraver internals and details - docencia.ac.upc.edu

15

29

3D/2D analysis module

• Single flexible quantitative analysis mechanism• Let

• cw1 and cw2 two views we will call control views

• dw a view we will call data window

• For each control window we define a set of bins

• And the discriminator functions

• The 3D analysis module computes a cube (or plane in the case of 2D) of statistics

• Where the statistic can represent the average value, the number of intervals,….

)(*)()( 21, ttt cw

kcwjkj δδδ =

[ )cwj

cwj

cwj rangerangebin 1, += cwcw

jcwj deltarangerange +=+1

))(*)((),,( ,, ttSstatistickjthreadM kjthdwth δ=

)0:1?))((()( cwj

cwcwj bintSt ∈=δ

Identify regions with cw’s within the (j,k) bin

[ )wi

wi

wth

wth tttiStS 1,),()( +∈=

For each window w

30

2D analysis module

∫=end

start

t

t kjthdwth dtttSkjthIntegral )()(),,( ,,δ

∫∫

=end

start

end

start

t

t kjth

t

t kjthdwth

dtt

dtttSkjthAverage

)(

)()(),,(

,,

,,

δ

δ

∫=end

start

t

t kjth dttkjthTime )(),,( ,,δ

startend

t

t kjth

tt

dttkjthTime

end

start

−=∫ )(

),,(%,,δ

∑∫∫

=

j

t

t kjtn

t

t kjth

end

sctart

end

start

dtt

dttkjthoTimeNotZer

)(

)(),,(%

,,

,,

δ

δ

[ )endstartkjthdwth tttttSkjthMaximum ,)),()(max(),,( ,, == δ

endiendstartistartikjth

i

idwth ttiittiitiSkjthSumBurst end

start<=>==∑ |)max(,|)min(),()(),,(

,,δ

endiendstartistart

startend

ttiittiiiikjthNumBurst

<=>=+−=

|)max(,|)min(1),,(

Page 16: Paraver internals and details - docencia.ac.upc.edu

16

31

Representation module

Seeing is believing

measuring is better

Functions of time

32

2D analysis

• Perform an analysis

• Select statistic

• View control window

• Analyzed area

• View data window

• Select data window

• Selecting new CW• On whole CW

• On whole trace (same CW)

• On same area

Page 17: Paraver internals and details - docencia.ac.upc.edu

17

33

2D analysis module

max

min

• Color encoding• Fit color encodingMin and max to dynamic range of statistic

• Bin definition

• Fit bin sizeTo cover the whole control window

dynamic range and generate at most 20 columns

• Hide null columns

• Color/not cells

• Whole table / cell text

• Translate (.pcf)

• Transpose

• Show/hide lower panel• Text for cursor

• Region analyzed