Submit Search
Upload
DTrace for biginners part(2)
•
1 like
•
964 views
Shoji Haraguchi
Follow
DTrace for biginners part(2) Japanese lang only
Read less
Read more
Report
Share
Report
Share
1 of 18
Download now
Download to read offline
Recommended
[第2版]Python機械学習プログラミング 第8章
[第2版]Python機械学習プログラミング 第8章
Haruki Eguchi
[第2版]Python機械学習プログラミング 第13章
[第2版]Python機械学習プログラミング 第13章
Haruki Eguchi
Boostライブラリ一周の旅
Boostライブラリ一周の旅
Akira Takahashi
Mock and patch
Mock and patch
Toru Furukawa
テーマ「最適化」
テーマ「最適化」
technocat
歌舞伎座Tech#2 C++11 LT
歌舞伎座Tech#2 C++11 LT
roentgen_jp
深層学習レポート Day1 (小川成)
深層学習レポート Day1 (小川成)
ssuser441cb9
for JSDeferred Code Reading
for JSDeferred Code Reading
Kenichirou Oyama
Recommended
[第2版]Python機械学習プログラミング 第8章
[第2版]Python機械学習プログラミング 第8章
Haruki Eguchi
[第2版]Python機械学習プログラミング 第13章
[第2版]Python機械学習プログラミング 第13章
Haruki Eguchi
Boostライブラリ一周の旅
Boostライブラリ一周の旅
Akira Takahashi
Mock and patch
Mock and patch
Toru Furukawa
テーマ「最適化」
テーマ「最適化」
technocat
歌舞伎座Tech#2 C++11 LT
歌舞伎座Tech#2 C++11 LT
roentgen_jp
深層学習レポート Day1 (小川成)
深層学習レポート Day1 (小川成)
ssuser441cb9
for JSDeferred Code Reading
for JSDeferred Code Reading
Kenichirou Oyama
[第2版]Python機械学習プログラミング 第15章
[第2版]Python機械学習プログラミング 第15章
Haruki Eguchi
Away3D 4.1 パーティクル入門
Away3D 4.1 パーティクル入門
Yasunobu Ikeda
array.map(&:key)ってなんやねん
array.map(&:key)ってなんやねん
Yoichi Toyota
Xtend - Javaの未来を今すぐ使う
Xtend - Javaの未来を今すぐ使う
Tatsumi Naganuma
怠惰なRubyistへの道 fukuoka rubykaigi01
怠惰なRubyistへの道 fukuoka rubykaigi01
nagachika t
ディープラーニングフレームワーク とChainerの実装
ディープラーニングフレームワーク とChainerの実装
Ryosuke Okuta
機械学習
機械学習
ssusere8ae711
20180123 power shell
20180123 power shell
Trainocate Japan, Ltd.
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
Takashi J OZAKI
Enshu8
Enshu8
sudahiroshi
C++14 Overview
C++14 Overview
Akira Takahashi
PHP5.5新機能「ジェネレータ」初心者入門
PHP5.5新機能「ジェネレータ」初心者入門
kwatch
人工無脳バトル 1st STEP 回答と解説
人工無脳バトル 1st STEP 回答と解説
JustSystems Corporation
エキ Py 読書会02 2章後半
エキ Py 読書会02 2章後半
Tetsuya Morimoto
Python opt
Python opt
Mikio Kubo
Boost.B-tree introduction
Boost.B-tree introduction
Takayuki Goto
C# 式木 (Expression Tree) ~ LINQをより深く理解するために ~
C# 式木 (Expression Tree) ~ LINQをより深く理解するために ~
Fujio Kojima
研究生のためのC++ no.3
研究生のためのC++ no.3
Tomohiro Namba
C++ Template Meta Programming の紹介@社内勉強会
C++ Template Meta Programming の紹介@社内勉強会
Akihiko Matuura
Flutterを体験してみませんか
Flutterを体験してみませんか
cch-robo
今さら聞けないHadoop勉強会第3回 セントラルソフト株式会社(20120327)
今さら聞けないHadoop勉強会第3回 セントラルソフト株式会社(20120327)
YoheiOkuyama
Python standard 2022 Spring
Python standard 2022 Spring
anyakichi
More Related Content
What's hot
[第2版]Python機械学習プログラミング 第15章
[第2版]Python機械学習プログラミング 第15章
Haruki Eguchi
Away3D 4.1 パーティクル入門
Away3D 4.1 パーティクル入門
Yasunobu Ikeda
array.map(&:key)ってなんやねん
array.map(&:key)ってなんやねん
Yoichi Toyota
Xtend - Javaの未来を今すぐ使う
Xtend - Javaの未来を今すぐ使う
Tatsumi Naganuma
怠惰なRubyistへの道 fukuoka rubykaigi01
怠惰なRubyistへの道 fukuoka rubykaigi01
nagachika t
ディープラーニングフレームワーク とChainerの実装
ディープラーニングフレームワーク とChainerの実装
Ryosuke Okuta
機械学習
機械学習
ssusere8ae711
20180123 power shell
20180123 power shell
Trainocate Japan, Ltd.
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
Takashi J OZAKI
Enshu8
Enshu8
sudahiroshi
C++14 Overview
C++14 Overview
Akira Takahashi
PHP5.5新機能「ジェネレータ」初心者入門
PHP5.5新機能「ジェネレータ」初心者入門
kwatch
人工無脳バトル 1st STEP 回答と解説
人工無脳バトル 1st STEP 回答と解説
JustSystems Corporation
エキ Py 読書会02 2章後半
エキ Py 読書会02 2章後半
Tetsuya Morimoto
Python opt
Python opt
Mikio Kubo
Boost.B-tree introduction
Boost.B-tree introduction
Takayuki Goto
C# 式木 (Expression Tree) ~ LINQをより深く理解するために ~
C# 式木 (Expression Tree) ~ LINQをより深く理解するために ~
Fujio Kojima
研究生のためのC++ no.3
研究生のためのC++ no.3
Tomohiro Namba
C++ Template Meta Programming の紹介@社内勉強会
C++ Template Meta Programming の紹介@社内勉強会
Akihiko Matuura
What's hot
(19)
[第2版]Python機械学習プログラミング 第15章
[第2版]Python機械学習プログラミング 第15章
Away3D 4.1 パーティクル入門
Away3D 4.1 パーティクル入門
array.map(&:key)ってなんやねん
array.map(&:key)ってなんやねん
Xtend - Javaの未来を今すぐ使う
Xtend - Javaの未来を今すぐ使う
怠惰なRubyistへの道 fukuoka rubykaigi01
怠惰なRubyistへの道 fukuoka rubykaigi01
ディープラーニングフレームワーク とChainerの実装
ディープラーニングフレームワーク とChainerの実装
機械学習
機械学習
20180123 power shell
20180123 power shell
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
Enshu8
Enshu8
C++14 Overview
C++14 Overview
PHP5.5新機能「ジェネレータ」初心者入門
PHP5.5新機能「ジェネレータ」初心者入門
人工無脳バトル 1st STEP 回答と解説
人工無脳バトル 1st STEP 回答と解説
エキ Py 読書会02 2章後半
エキ Py 読書会02 2章後半
Python opt
Python opt
Boost.B-tree introduction
Boost.B-tree introduction
C# 式木 (Expression Tree) ~ LINQをより深く理解するために ~
C# 式木 (Expression Tree) ~ LINQをより深く理解するために ~
研究生のためのC++ no.3
研究生のためのC++ no.3
C++ Template Meta Programming の紹介@社内勉強会
C++ Template Meta Programming の紹介@社内勉強会
Similar to DTrace for biginners part(2)
Flutterを体験してみませんか
Flutterを体験してみませんか
cch-robo
今さら聞けないHadoop勉強会第3回 セントラルソフト株式会社(20120327)
今さら聞けないHadoop勉強会第3回 セントラルソフト株式会社(20120327)
YoheiOkuyama
Python standard 2022 Spring
Python standard 2022 Spring
anyakichi
[AI08] 深層学習フレームワーク Chainer × Microsoft で広がる応用
[AI08] 深層学習フレームワーク Chainer × Microsoft で広がる応用
de:code 2017
Prosym2012
Prosym2012
MITSUNARI Shigeo
pg_bigmを用いた全文検索のしくみ(前編)
pg_bigmを用いた全文検索のしくみ(前編)
NTT DATA OSS Professional Services
さわってみようTOPPERS/SSP
さわってみようTOPPERS/SSP
NSaitoNmiri
第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章
Tomonobu_Hirano
第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案
yushin_hirano
PythonによるDeep Learningの実装
PythonによるDeep Learningの実装
Shinya Akiba
Tokyor23 doradora09
Tokyor23 doradora09
Nobuaki Oshiro
Chainerの使い方と自然言語処理への応用
Chainerの使い方と自然言語処理への応用
Seiya Tokui
R言語勉強会#4.pdf
R言語勉強会#4.pdf
Takuya Kubo
2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門
2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門
Daiyu Hatakeyama
Introduction of Python
Introduction of Python
Tomoya Nakayama
競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性
Hibiki Yamashiro
Rを用いたGIS
Rを用いたGIS
Mizutani Takayuki
第1回 Jubatusハンズオン
第1回 Jubatusハンズオン
JubatusOfficial
第1回 Jubatusハンズオン
第1回 Jubatusハンズオン
Yuya Unno
Direct xとopenglの隠蔽実装例
Direct xとopenglの隠蔽実装例
tecopark
Similar to DTrace for biginners part(2)
(20)
Flutterを体験してみませんか
Flutterを体験してみませんか
今さら聞けないHadoop勉強会第3回 セントラルソフト株式会社(20120327)
今さら聞けないHadoop勉強会第3回 セントラルソフト株式会社(20120327)
Python standard 2022 Spring
Python standard 2022 Spring
[AI08] 深層学習フレームワーク Chainer × Microsoft で広がる応用
[AI08] 深層学習フレームワーク Chainer × Microsoft で広がる応用
Prosym2012
Prosym2012
pg_bigmを用いた全文検索のしくみ(前編)
pg_bigmを用いた全文検索のしくみ(前編)
さわってみようTOPPERS/SSP
さわってみようTOPPERS/SSP
第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案
PythonによるDeep Learningの実装
PythonによるDeep Learningの実装
Tokyor23 doradora09
Tokyor23 doradora09
Chainerの使い方と自然言語処理への応用
Chainerの使い方と自然言語処理への応用
R言語勉強会#4.pdf
R言語勉強会#4.pdf
2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門
2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門
Introduction of Python
Introduction of Python
競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性
Rを用いたGIS
Rを用いたGIS
第1回 Jubatusハンズオン
第1回 Jubatusハンズオン
第1回 Jubatusハンズオン
第1回 Jubatusハンズオン
Direct xとopenglの隠蔽実装例
Direct xとopenglの隠蔽実装例
DTrace for biginners part(2)
1.
はじめての DTrace(2) “簡単なことからコツコツと” shojih
2.
本日の学習目標 DTrace とはどのようなもの?
DTrace を使うと何が便利? 何から学習するといいだろうか? Dプログラムの紹介 Dプログラムの実例紹介
3.
Dプログラムの紹介
4.
と、その前に参考本の紹介 ●
タイトル/著者 ● DTrace: Dynamic Tra- cing in Oracle Solaris, Mac OSX and FreeBSD ● Brendan Gregg/Jim Mauro ● ISBN-10:0132091518 ● 発売日: 2011/4/1 ● 4,579 (参考Amazon) ● dtracebook.com から本で 紹介されているサンプルDプロ グラムを入手可能
5.
Dプログラムの紹介-特長(1) ●
C言語によく似た言語仕様になっています ● 制御構造のサブセット ● 拡張されたデータ構造 ● 文字列型、連想配列、集積体 ● 組み込み関数、組み込み変数 ● スレッド固有変数、節固有変数 ● 構造体、共用体、多次元配列、ポインタも使用可能です ● 無効なポインタアクセスはDTrace実行環境が検出 ● ANSI C演算子 ● カーネルCデータ型への完全なアクセスが可能です
6.
Dプログラムの紹介-特長(2) ●
バッファー機能 ● トレースアクションがデータを記録 ● trace(式) ● 集積関数 ● 集計を行う際に便利です ● awk(1)やPerlによる後処理が不要になります ● count, sum, avg, min, max, lquantize, quantize ● 結果は集積体に保存します ● @name[ keys ] = aggfunc( args );
7.
Dプログラムの紹介-書式 ●
複数のプローブ節によって構成 ● プローブ節の標準形式 プロバイダ : モジュール : 関数 : 名前 Provider : Module : Function : Name プローブ / 述語 / { アクション文 } ● awk(1)やPerlに似た形式
8.
書式の詳細、変数、組み込 み関数については次回以降 に紹介します。今日は雰囲 気だけご理解ください。
9.
Dプログラムの紹介-超簡単な例 # dtrace -n
BEGIN -n END dtrace: description 'BEGIN' matched 1 probe dtrace: description 'END' matched 1 probe CPU ID FUNCTION:NAME 0 1 :BEGIN ^C 0 2 :END #
10.
Dプログラムの紹介-バッファ使用例 /* Hello.d */ BEGIN { trace(“Hello, world”); } # dtrace s Hello.d dtrace: script 'Hello.d' matched 1 probe CPU ID
FUNCTION:NAME 0 1 :BEGIN Hello, world #
11.
Dプログラムの紹介-書式付き出力(1) /* trussrw.d */ syscall::read:entry,
syscall::write:entry /pid == $1 / { printf(“%s(%d, %x, %d)”, probefunc, arg0, arg1, arg2); } syscall::read:return, syscall::write:return /pid == $1 / { printf(“tt = %dn”, arg1 ); }
12.
Dプログラムの紹介-書式付き出力(2) # dtrace
-q -s trussrw.d 12345 = 1 write(2, 0x8089e48, 1) = 1 read(63, 0x8090a38, 1024) = 0 read(63, 0x8090a38, 1024) = 0 write(2, 0x8089e48, 52) = 52 read(0, 0x8089878, 1) = 1 write(2, 0x8089e48, 1) = 1 read(63, 0x8090a38, 1024) = 0 read(63, 0x8090a38, 1024)^C #
13.
Dプログラムの紹介-集積関数 (さわりだけ。。) @name[keys] =
aggfunc(args); ● '@' keys で集積された結果 ● keys カンマで区切られた D の変数のリスト ● aggfunc の例 ● count() 引数はなく、呼ばれた回数を返す ● sum() 引数で与えられた値の合計値を返す ● avg() 引数で与えられた値の平均値を返す ● min(expr)/max(expr) 引数で与えられた値のうち最小値/最大値を返す ● lquantize() 第1引数で与えられた値を、第2, 3, 4 引数で与えられたリニア(線形)の単位にけて回数を 集計し、結果をグラフで出力 ● quantize() 引数で与えられた値を2の累乗の単位に分けて集計し、結果をグラフで出力
14.
Dプログラムの紹介-集積関数(1) /* quantize.d */ syscall::write:entry {
self->ts = timestamp; } syscall::write:return /self->ts/ { @time[execname] = quantize(timestamp - self- >ts); self->ts = 0; }
15.
Dプログラムの紹介-集積関数(2) vi value Distribution count 8192 | 0 16384 |@@@@@@@@@@@@@@@@@@@@ 1 32768 |@@@@@@@@@@@@@@@@@@@@ 1 65536 | 0 dtrace value Distribution count 32768 | 0 65536 |@@@@@@@@@@@@@@@@@@@@@@@@@ 1 131072 | 0
16.
Dプログラムの紹介-サンプルツール ●
/usr/dtrace/DTT (Oracle Solaris 11 の場合) ● /opt/DTT (OpenIndianaの場合) ● そのまま解析ツールとして使える便利なツールキット集 ● /usr/demo/dtrace (Solaris 10の場合) ● マニュアルに記載されている約80個のDスクリプト ● 文法の解説 ● 各プロバイダの解説 ● システム調査ツールの例として利用可能 ● ユーザープロセスの追跡例
17.
Dプログラム実例紹介 ~ DTrace本と DTrace
Tool Kit(DTT)の サンプルプログラムからDTrace初心者で も開発未経験者でも、ちょっと使って見よう かなと思われそうなDプログラムを実演し ます~
18.
次は何を学習しましょうか?
次回にづづく!
Download now