Mercurial > hg > Members > yuuhi > slide
changeset 16:642a7f5a5bad default tip
add new task...
author | Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 22 Nov 2014 15:42:19 +0900 |
parents | 9683e2b1bbe7 |
children | |
files | s6/blank.html |
diffstat | 1 files changed, 54 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/s6/blank.html Tue Nov 18 18:09:17 2014 +0900 +++ b/s6/blank.html Sat Nov 22 15:42:19 2014 +0900 @@ -141,6 +141,10 @@ <li> <dt>LinuxでCeriumが動くかどうか</dt> </li> + + <li> + <dt>計測用のツール</dt> + </li> </ul> </div> @@ -154,7 +158,10 @@ <ul> <li><dt>affinity(親和度、cpu_set_t)は、そのスレッドが実行を許可されているCPUの集合を決定する <dd>maskにCPUをsetするときは、CPU_SETを使用する(例:CPU_SET(cpu_id,&mask)</dd></dt></li> - <li><dt>スレッドのaffinityマスクを一つのCPUに設定し、スレッドをCPUに括りつけることができる(Man page)</dt></li> + <li><dt>スレッドのaffinityマスクを一つのCPUに設定し、スレッドをCPUに括りつけることができる(Man page) + </dt></li> + + <li><dt>pidでaffinityをsetするthreadを指定するのだが、pid=0にすると呼び出し元のthreadにsetしてくれる</dt></li> </ul> </div> @@ -179,11 +186,57 @@ </div> + <div class='slide'> + <h2>Google Performance Tools</h2> + <ul> + <li><dt><font color="red">CPU Profiler:サンプリングによって各関数の実行時間を計測・表示する</font></dt></li> + <li><dt><font color="red">HeapProfiler:各関数におけるメモリ使用量を計測・表示する</font></dt></li> + <li><dt><font color="red">TCMalloc:Googleの開発した高速malloc</font></dt></li> + <li><dt>HeapChecker:メモリリークを検出する</dt></li> + </ul> + <p>Heap Profilerを使うには、TCMallocを使わないといけないらしい。</p> + <p>結果としては、微妙…</p> + <p>もう少し使い方を調べたら使い物になるかも</p> + </div> <div class='slide'> + <h2>CPU Profiler and Heap Profiler</h2> + + <p>example:word_count</p> + <pre class="code"> +Heap Profile +Total: 6653 objects + 2921 43.9% 43.9% 2921 43.9% 0x00007fff8e01b98d ? + 599 9.0% 52.9% 599 9.0% _class_createInstance ? + 404 6.1% 59.0% 404 6.1% 0x00007fff8e01bdfd ? + 365 5.5% 64.5% 365 5.5% 0x00007fff8e01bed6 ? + 360 5.4% 69.9% 360 5.4% 0x00007fff8a49730b ? + 249 3.7% 73.6% 249 3.7% 0x00007fff8e02b952 ? + 153 2.3% 75.9% 156 2.3% _cache_create ? + 109 1.6% 77.6% 109 1.6% _xpc_get_type ? + 100 1.5% 79.1% 100 1.5% 0x00007fff8a49728d ? + 92 1.4% 80.4% 133 2.0% __Block_copy ?</pre> + <pre class="code"> + CPU Profile +Total: 11 samples + 7 63.6% 63.6% 7 63.6% ___psynch_cvwait + 2 18.2% 81.8% 2 18.2% _semaphore_wait_trap + 1 9.1% 90.9% 1 9.1% 0x00007fff6773c709 + 1 9.1% 100.0% 1 9.1% _write$NOCANCEL + 0 0.0% 100.0% 1 9.1% 0x0000000108d51196 + 0 0.0% 100.0% 1 9.1% 0x0000000108d5144b + 0 0.0% 100.0% 1 9.1% 0x0000000108d530fa + 0 0.0% 100.0% 7 63.6% 0x0000000108d53113 + 0 0.0% 100.0% 7 63.6% 0x0000000108d552cf + 0 0.0% 100.0% 7 63.6% 0x0000000108d55d38</pre> + </div> + + <div class='slide'> <h2>Todo</h2> <ul> + <li><dt>例題(fft,word_count,sort)の見直し</dt></li> + <li><dt>SchedTaskをQueueInfoに</dt></li> <li><dt>sched_setaffinityをCeriumに実装</dt></li> <li><dt>Memory Allocatorの設計と実装</dt></li> </ul>