= 2010-06-07 = == Profiling / Profiler == * Java * [http://www.eclipse.org/tptp/ Eclipse Test & Performance Tools Platform Project (TPTP)] - Eclipse 的 Profiling 工具 * [http://www.eclipse.org/tptp/home/documents/tutorials/profilingtool/profilingexample_32.html An introduction to profiling Java applications] * [http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.tptp.platform.doc.user/concepts/ceproftl.htm Overview of the Profiling Tool] - Eclipse 說明文件有蠻詳細的 Monitoring and profiling applications 觀念與操作步驟介紹 * [http://profiler.netbeans.org/ Netbean Java Profiler] - CPU, memory and threads profiling - 搭配 Netbean * [http://www.ej-technologies.com/company/profile.html JProfiler] - [http://en.wikipedia.org/wiki/JProfiler 維基百科] - 搭配 Eclipse * [http://www.khelekore.org/jmp/tijmp/ jmp] * [http://packages.debian.org/tijmp Debian 套件 tijmp] - Profiler for Java to trace object and method timings * [http://packages.debian.org/jmp Debian 套件 jmp] * Runtime Profiler * http://profiler4j.sourceforge.net/ - 看起來不錯,不過大約 2006 之後就比較少更新了。 * Monitoring - JMX * [http://klaas.homeip.net/mcs/jmeasurement/ JMeasurement] - 支援 JMX 的 Profiler * [http://xdprof.sourceforge.net/ xdprof] - a cross-platform tool that captures and analyzes stack traces sent at a fixed interval from Java Virtual Machines in a distributed system - 因為是針對分散式系統的 profiler,所以有可能可以用在 Hadoop 效能分析上 * C - check [raw-attachment:wiki:jazz/10-06-07:Advanced_C_Programming_Pro?ling.pdf slides of "Advanced C Programming - Pro?ling"] * [http://www.gnu.org/software/binutils/ gprof] - 屬於 GNU binutils 的一部分 - [http://packages.debian.org/binutils Debian 套件 - binutils] * [http://blog.superd.org/index.php/2004/11/02/39/ gprof 看performance分析…] * gcov * [http://valgrind.org/ valgrind] - [http://packages.debian.org/valgrind Debian 套件 - valgrind] - ([wiki:jazz/10-03-04 2010-03-04]) * [http://daydreamer.idv.tw/rewrite.php/read-18.html 檢查程式記憶體的小工具-valgrind] * [http://www.jeffhung.net/blog/articles/jeffhung/1007/ Detecting C/C++ memory leaks with valgrind] * 在 [raw-attachment:wiki:jazz/10-06-07:Advanced_C_Programming_Pro?ling.pdf slides of "Advanced C Programming - Pro?ling"] 投影片介紹中,有三個主要工具 memcheck、cachegrind、callgrind * cachegrind - 模擬 L1/L2 Cache, 找出 cache misses * [http://packages.debian.org/kcachegrind Debian 套件 kcachegrind] - visualisation tool for valgrind profiling output * [http://packages.debian.org/kcachegrind-converters Debian 套件 kcachegrind-converters] - format converters for KCachegrind profiling visualisation tool * callgrind - 紀錄函數呼叫圖(call graph) * [http://oprofile.sourceforge.net oprofile] - a system-wide profiler for Linux systems, capable of profiling all running code at low overhead. * 有 [http://packages.debian.org/oprofile Debian 套件 - oprofile] {{{ #!sh ~# opcontrol --init # to load module and daemon ~# opcontrol -s # to start sampling ~# opcontrol -t # to stop sampling ~# opcontrol --dump # ?ushes the event log ~# opcontrol --list-events # shows available performance counters ~# opreport -l prog-name # gives breakdown of samples per function in prog-name }}} * Perl * [http://search.cpan.org/dist/Devel-Profile/ Devel::Profile] - [http://packages.debian.org/libdevel-profile-perl Debian 套件 - libdevel-profile-perl] - a Perl code profiler * PHP - references for armorize * [http://www.linuxjournal.com/article/7213 PHP Performance Profiling] * [http://www.php-editors.com/php-tools/php-profiler.php php-profiler] * Python * [http://packages.debian.org/python-profiler Debian 套件 python-profiler] - deterministic profiling of any Python programs * Ruby * [http://packages.debian.org/ruby-prof Debian 套件 ruby-prof] - A fast code profiler for Ruby * C# / Mono * [http://packages.debian.org/mono-profiler mono-profiler] - Mono profiler - [http://packages.debian.org/mono-profiler 有 Debian 套件 mono-profiler] == Microcontroller (MCU, PIC) == * 先前來演講的 Xavi 談到要徵人幫忙把 * [http://sdcc.sf.net/ SDCC - Small Device C Compiler] - [http://packages.debian.org/sdcc Debian 套件 sdcc] * [http://piklab.sourceforge.net/devices.php Piklab - IDE for PIC microcontrollers] - an integrated development environment (IDE) for applications based on Microchip PIC and dsPIC microcontrollers similar to the MPLAB environment. - 類似 Microchip 官方 MPLAB 的整合開發環境 - 有 [http://packages.debian.org/piklab piklab 的 Debian 套件] * [http://gpsim.sf.net gpsim] - Simulator for Microchip's PIC microcontrollers - [http://packages.debian.org/gpsim Debian 套件 gpsim] * [http://gputils.sf.net gputils] - [http://packages.debian.org/gputils Debian 套件 gputils] - utilities for the Microchip PIC microcontrollers family contain an assembler (compatible with MPASM), a disassembler, and other tools. * [http://www.freertos.org/ FreeRTOS] - a portable, open source, royalty free, mini Real Time Kernel - 先前就有紀錄過用單晶片上執行 linux 系統,這個專案也是可以執行在很多家的單晶片上。