20
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Oracle Solaris Optimization Tools Frédéric Parienté ISV Engineering Director Solaris Developers, Performance and Applications

Oracle Solaris Optimization Tools

Embed Size (px)

DESCRIPTION

Solaris Day, 27 Nov 2013, Moscow

Citation preview

Page 1: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Oracle Solaris

Optimization Tools

Frédéric Parienté

ISV Engineering Director

Solaris Developers, Performance and Applications

Page 2: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

The following is intended to outline our general product

direction. It is intended for information purposes only, and may

not be incorporated into any contract. It is not a commitment to

deliver any material, code, or functionality, and should not be

relied upon in making purchasing decisions. The development,

release, and timing of any features or functionality described for

Oracle’s products remains at the sole discretion of Oracle.

Page 3: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Agenda

• Solaris Utilities (*stat)

• DTrace

• Solaris Studio

Page 4: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Solaris Utilities

Page 5: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Solaris Utilities : zonestat

root@global_zone:~# zonestat 10 10

Interval: 1, Duration: 0:00:10

SUMMARY Cpus/Online: 128/12 PhysMem: 256G VirtMem: 259G

---CPU---- --PhysMem-- --VirtMem-- --PhysNet--

ZONE USED %PART USED %USED USED %USED PBYTE %PUSE

[total] 118.10 92.2% 24.6G 9.62% 60.0G 23.0% 18.4E 100%

[system] 0.00 0.00% 9684M 3.69% 40.5G 15.5% - -

data-node3 42.13 32.9% 4897M 1.86% 6146M 2.30% 18.4E 100%

data-node1 41.49 32.4% 4891M 1.86% 6173M 2.31% 18.4E 100%

data-node2 33.97 26.5% 4851M 1.85% 6145M 2.30% 18.4E 100%

global 0.34 0.27% 283M 0.10% 420M 0.15% 2192 0.00%

name-node 0.15 0.11% 419M 0.15% 718M 0.26% 126 0.00%

sec-name-node 0.00 0.00% 205M 0.07% 363M 0.13% 0 0.00%

Page 6: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Solaris Utilities : mpstat

root@global_zone:~# mpstat 1

CPU minf mjf xcal intr ithr csw icsw migr smtx srw syscl usr sys wt idl

0 85 0 10183 683 59 931 40 269 464 2 1315 30 14 0 56

1 80 0 34872 484 9 1096 39 317 498 2 1437 34 14 0 51

2 72 0 15632 325 4 669 30 166 334 1 1321 37 9 0 54

3 42 0 13422 253 3 553 32 144 277 2 818 31 7 0 62

root@global_zone:~# mpstat -A core 10

COR minf mjf xcal intr ithr csw icsw migr smtx srw syscl usr sys wt idl sze

3074 103 0 23654 1680 697 1264 644 277 502 10 11268 748 52 0 0 8

3078 95 0 32090 893 137 1228 635 281 439 8 10929 759 41 0 0 8

3082 94 0 31574 889 129 1245 629 308 560 9 12792 753 47 0 0 8

3086 111 0 20262 829 121 1200 615 277 512 7 12657 753 47 0 0 8

Page 7: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Solaris Utilities : fsstat

root@global_zone:~# fsstat -Z zfs 10 10

new name name attr attr lookup rddir read read write write

file remov chng get set ops ops ops bytes ops bytes

0 0 0 744 0 11.4K 0 6.01K 5.87M 0 0 zfs:global

0 0 0 151 0 3.27K 0 1.41K 1.94M 7 1.42K zfs:data-node1

0 0 0 359 0 8.72K 0 2.75K 3.95M 22 4.06K zfs:data-node2

0 0 0 413 0 9.03K 0 2.98K 4.22M 21 4.34K zfs:data-node3

0 0 0 14 0 51 0 0 0 0 0 zfs:name-node

0 0 0 14 0 51 0 0 0 0 0 zfs:sec-name-node

Page 8: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

DTrace

• A dynamic troubleshooting and analysis technology first

introduced in Solaris 10 :

– a tool

– a programming language & interpreter

– an instrumentation framework

• Provides observability across the entire software stack

from one tool, allows to examine software execution like

never before.

Page 9: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

DTrace in Action

Probes : Which events we are interested in monitoring

Predicates (optional) : When do we want to monitor the events

Actions (optional): What do we want to do when the above happens

One liner syntax : #dtrace –n 'probe /predicate/ {actions}'

Script syntax: #!/usr/bin/dtrace -s

probe description

/predicate/

{

actions

}

Page 10: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

DTrace in Solaris 11

• USDT provider for Kerberos

• Networking providers for TCP, UDP and IPv4/6 protocols

• Storage providers for SMB and iSCSI

• CPC provider for processor-related events

• DTrace-based implementation of LatencyTOP

• Integration of DTrace with runtime languages

Page 11: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

DTrace Toolkit

Over 230 scripts

Installed by default in Solaris 11

/usr/dtrace/DTT

More examples at /usr/demo/dtrace (also in Solaris 10)

Documentation, man pages, user guide

Each category has its own sub-directory

Most used scripts in top-level directory

Page 12: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Demo

Page 13: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Oracle Solaris Studio

#1 Development Toolsuite for Oracle Systems

• Maximize ROI

– Generate up to 5x faster code on SPARC

T5, M5 and x86

• Improve time to deliver

– Single suite of advanced tools designed

to leverage the Oracle stack for the

highest developer productivity

• Protect your application investment

– Strongest compatibility guarantee with

Oracle Solaris and Solaris Studio

Page 14: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Internal 14

New with Oracle Solaris Studio 12.3

Accelerate

Performance

5x faster code on Oracle T5 than GCC

1.5x faster code on Intel x86 than GCC

Gain Extreme

Observability

New Code Analyzer for more reliable applications;

reports common coding & memory access errors faster

than competitive alternatives

Enhanced Performance Analyzer with system-wide

performance analysis

Improve

Productivity

Remote access to Solaris Studio tools from local

desktop (Oracle Solaris, Linux, Microsoft Windows,

Mac)

Streamlined Oracle DB application development

Simplify Oracle Tuxedo development with IDE plug-in

IPS distribution on Solaris 11 for simplified management

20% faster compile time

Page 15: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Oracle Solaris Studio 12.3 – Analysis Suite

Page 16: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Performance Analyzer

16

• Profile fully optimized and

parallelized production code

• Understand where time is

being spent

• Trace to source and identify

hotspots

• View timeline and call stack for

select events

• Compare multiple experiments

• Supports C/C++, Java,

OpenMP and distributed MPI-

based apps

Maximize Application Performance

Page 17: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Code Analyzer (New Tool)

• Easily detect and fix

common coding errors,

including memory leaks

and access violations

• Advanced error filtering

and sorting capabilities

• Synthesizes three types

of errors

– Source code verification

– Memory access audits

– Unexercised code

• Identifies 45+ error types

Copyright © 2011, Oracle and/or its affiliates. All rights reserved.

Ensure Application Reliability

Page 18: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Thread Analyzer

18

• Easily identify complex

parallel programming

errors

• Detect hard to pinpoint

race and deadlock

conditions

• Supports Solaris threads,

P-threads, OpenMP 3.1

Simplify Multicore Programming

Page 19: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Comprehensive Single Suite of Tools

Page 20: Oracle Solaris Optimization Tools

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 25