📄 readme.txt
字号:
Eclipse Profiler Plugin
Version 0.5.30
http://eclipsecolorer.sourceforge.net
Copyright (c) 2003 Konstantin Scheglov, scheglov_ke@nlmk.ru
All Rights Reserved
Licensed under the CPL License version 1.0
===================
This is an Eclipse Java IDE plugin providing Java Profiling
tools. It allows the Java developer to tune up the performance of their
Java programs all within the comfort of the Eclipse IDE.
Current version has more or less finished CPU profiling and early version of
heap profiling. I am sure, that lot more features can be added, so feel free
to contact me.
Limitations
-----------
Profiler has compiled native library for Win32 and Linux using gcc 3.2. If you have
Linux system with older gcc or libraries, you will need build native part yourself.
I also tested it with gcc 2.95.3.
Plugin tested with Sun SDK 1.4.1_02-b06 and Eclipse 2.1-Release.
I know, that it does NOT work with IBM JDK 1.3.1, i.e. you will have
problems with this profiler and WSAD 5.0. Well, it already has profiler. ;-)
Installation
------------
- Shutdown Eclipse.
- Unzip the contents of the zip file into the plugins directory of your
Eclipse directory.
- Copy ProfilerDLL.dll from root plugin folder into bin folder of your JRE installation.
- Restart Eclipse.
- Open "Profiler" perspective.
- Create profiler launch configuration.
- Launch it.
- Enjoy. ;-)
[+] Feature added.
[-] Bug fixed.
[*] Change.
30 Nov 2004 - Version 0.5.33
--------------------------
[*] Fix for 3.1 compatibility.
13 Nov 2003 - Version 0.5.30
--------------------------
[*] Fix for 2.1.2 compatibility.
6 Nov 2003 - Version 0.5.29
--------------------------
[*] Compiled and tested with Eclipse Build id: 200311040800.
[*] Added advanced profiler tab in Runtime Workbench profiling.
19 Jul 2003 - Version 0.5.28
--------------------------
[*] BCEL moved to another package because it conflicts with BCEL from JBoss.
[-] Fixed bug with package list for filters in Runtime Workbench profiling.
22 Jul 2003 - Version 0.5.27
--------------------------
[*] Several bugs fixed, tested with WebLogic 8.1 and resin-ee-2.1.10.
16 Jun 2003 - Version 0.5.25
--------------------------
[-] Bug with LDC/LDC_W in BCEL fixed. I hope, that this is reason, why
JVM throws "VerifyError: Illegal constant pool index".
[+] Now you can use doubleclick in Packages/Classes/Methods views to
open method in editor. Context menu was not very convinient way.
[+] "Live" thread call graph. Now it refreshes automatically, as any other
profiler view. "Refresh" button removed.
[+] New filters for thread call graph. You can set, that you want to
see control flows with at least 1% of total time, or 2%, 3%, 5%, 10%.
This allows remove most of not interesting details like methods,
which were called only once, or don't use much time.
[+] "Pause CPU profiling on method leave" option in launch configuration
dialog. When it is on, profiler will stop gathering statistics and
resume when control flow will enter in this method again. This allows
you profile only part of application, without parts, which do other
things, like preparing data for interesting part.
[-] Fixed crash in ProfilerDLL during heap profiling. Does anybody knows
why OptimizeIt 2 times faster when does heap profiling? It seems, that
most slow part is getting allocation trace, and it is in JVM. I don't
know, how to make it faster. :-(
3 Jun 2003 - Version 0.5.24
--------------------------
[-] "An unrecoverable stack overflow has occurred" bug fixed.
27 May 2003 - Version 0.5.23
--------------------------
[+] Profiler tested with Eclipse on Linux (local profiling).
Several bugs fixed.
22 May 2003 - Version 0.5.22
--------------------------
[-] In previous version I've started statistics sender thread in static
section of Trace class. And on some computers JVM throws error:
"Failed to load Main Class:". Fixed.
19 May 2003 - Version 0.5.21
--------------------------
[+] Option "Instrument final methods" added to "Profiler" tab.
This allows you exclude instrumentation of final methods (
or methods in final classes) and reduce in this case overhead.
[*] Options in launch configuration splitted on two pages - generic
and advanced settings.
[+] Option "Start CPU profiling on method execution" added to launch
configuration. When you have application with massive startup process
and don't want to press stop/start, and know, what method will be
executed after startup, you can select class and method, from which
profiling should be started.
[+] Export of 'Inverted thread call tree' to HTML added.
[-] When project uses sources folders, plugin does not shows packages
from them, i.e. you see only packages from attached JAR's, but
not yours.
[*] Profiler will allocate memory for heap profiling directly in
native code, so I hope, that ArrayIndexOutOfBoundsException will be
not generated.
12 May 2003 - Version 0.5.20
--------------------------
[+] Button "Save statistics" added to "Threads" view. It allows you
save current statistics in project (in folder "profiles"). Later
you will able to open them using doubleclick on file. Name of
file constructed from name of launch configuration plus date/time
when save pressed plus extention ".profile". This allows you to
analyze statistics later without incurring the performance penalty of
profiling when you really want to review the stats.
[+] If you profile applications with JDK 1.4+, then when you stop profiling
using "Stop profiling" button on "Threads" view, profiler will avoid
most overhead, so in result application run only 30% slower (!), then
without profiling at all. Same is true if you start profiling with
disabled auto start. I think, that with such low slowdown it is possible
to start applications almost always with profiling and activate it
only when you want to gather statistics. After this you can stop profiling
and your application will work fast again. This is especially usefull for
such long runned applications as Tomcat and JBoss.
Limitation for Java 1.4 is related with method
Throwable.getStackTrace(), without this method I can not restore call
stack and all call stack base statistics (thread call stack, call graph)
will be wrong. So, I decided to disable this feature with JDK lower
than 1.4.
[+] Export thread call graph to GIF/PNG/JPG added.
[+] Export thread call tree in HTML JavaScript tree.
6 May 2003 - Version 0.5.19
--------------------------
[+] Option "Auto start CPU profiling" added to launch configuration.
So, if you want to profile only part of your application, you can
disable auto start, run application under profiler and press "Start"
on "Threads" view in needed moment.
[*] Small change in internal sending thread - if it can not bind socket,
it still will run application. This situation happens, when you start
Tomcat and then use shutdown script to stop it. So, now you will able
to do this.
28 Apr 2003 - Version 0.5.18
--------------------------
[+] "Instrument method" option added to "Profiler" tab of launch
configuration. You can specify, what methods should be instrumented,
and what not. There are fairly much methods, which only pass control
to other methods, or does simple check of some condition. Such simple
and short methods usually can by inlined by JVM and almost don't use
CPU. However if profiler instrument them, they become bigger, more
complex and statistics can be affected. Now you can select, instrument
all methods (for example to look on full thread call graph), or
exclude method not bigger, than 50, 100, etc bytes, which does not
contain back braches (i.e. does not have cycles).
[+] "Profile system classes" option added. As you may be noticed, profiler
shows calls not for all methods and classes, in particilar for core
java classes - String, StringBuffer, etc. Problem is that JVM loads
these classes before profiler can set class load hook. When you turn
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -