Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 81060 Details for
Bug 200251
[enh] Add support for "application" mode in the Java 1.5+ (JVMTI) Profiler
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
Oct. 24 Description Document
hf_200251.html (text/html), 17.58 KB, created by
Alexander N. Alexeev
on 2007-10-24 09:59:39 EDT
(
hide
)
Description:
Oct. 24 Description Document
Filename:
MIME Type:
Creator:
Alexander N. Alexeev
Created:
2007-10-24 09:59:39 EDT
Size:
17.58 KB
patch
obsolete
><html xmlns:v="urn:schemas-microsoft-com:vml" >xmlns:o="urn:schemas-microsoft-com:office:office" >xmlns:w="urn:schemas-microsoft-com:office:word" >xmlns="http://www.w3.org/TR/REC-html40"> > ><head> ><meta http-equiv=Content-Type content="text/html; charset=windows-1251"> ><meta name=ProgId content=Word.Document> ><meta name=Generator content="Microsoft Word 11"> ><meta name=Originator content="Microsoft Word 11"> ><link rel=File-List href="hf_200251_files/filelist.xml"> ><title>"application" mode support</title> ><!--[if gte mso 9]><xml> > <o:DocumentProperties> > <o:Author>Alexander N. Alexeev</o:Author> > <o:LastAuthor>Alexander N. Alexeev</o:LastAuthor> > <o:Revision>31</o:Revision> > <o:TotalTime>1706</o:TotalTime> > <o:Created>2007-10-03T20:45:00Z</o:Created> > <o:LastSaved>2007-10-24T13:53:00Z</o:LastSaved> > <o:Pages>1</o:Pages> > <o:Words>500</o:Words> > <o:Characters>2850</o:Characters> > <o:Company>Intel Corporation</o:Company> > <o:Lines>23</o:Lines> > <o:Paragraphs>6</o:Paragraphs> > <o:CharactersWithSpaces>3344</o:CharactersWithSpaces> > <o:Version>11.8122</o:Version> > </o:DocumentProperties> ></xml><![endif]--><!--[if gte mso 9]><xml> > <w:WordDocument> > <w:GrammarState>Clean</w:GrammarState> > <w:PunctuationKerning/> > <w:ValidateAgainstSchemas/> > <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> > <w:IgnoreMixedContent>false</w:IgnoreMixedContent> > <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> > <w:Compatibility> > <w:BreakWrappedTables/> > <w:SnapToGridInCell/> > <w:WrapTextWithPunct/> > <w:UseAsianBreakRules/> > <w:DontGrowAutofit/> > </w:Compatibility> > <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> > </w:WordDocument> ></xml><![endif]--><!--[if gte mso 9]><xml> > <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> > </w:LatentStyles> ></xml><![endif]--> ><style> ><!-- > /* Style Definitions */ > p.MsoNormal, li.MsoNormal, div.MsoNormal > {mso-style-parent:""; > margin:0in; > margin-bottom:.0001pt; > mso-pagination:widow-orphan; > font-size:12.0pt; > font-family:"Times New Roman"; > mso-fareast-font-family:"Times New Roman";} >h1 > {mso-margin-top-alt:auto; > margin-right:0in; > mso-margin-bottom-alt:auto; > margin-left:0in; > mso-pagination:widow-orphan; > mso-outline-level:1; > font-size:24.0pt; > font-family:"Times New Roman"; > font-weight:bold;} >h2 > {mso-margin-top-alt:auto; > margin-right:0in; > mso-margin-bottom-alt:auto; > margin-left:0in; > mso-pagination:widow-orphan; > mso-outline-level:2; > font-size:18.0pt; > font-family:"Times New Roman"; > font-weight:bold;} >h3 > {mso-style-next:Normal; > margin-top:12.0pt; > margin-right:0in; > margin-bottom:3.0pt; > margin-left:0in; > mso-pagination:widow-orphan; > page-break-after:avoid; > mso-outline-level:3; > font-size:13.0pt; > font-family:Arial; > font-weight:bold;} >h4 > {mso-margin-top-alt:auto; > margin-right:0in; > mso-margin-bottom-alt:auto; > margin-left:0in; > mso-pagination:widow-orphan; > mso-outline-level:4; > font-size:12.0pt; > font-family:"Times New Roman"; > font-weight:bold;} >a:link, span.MsoHyperlink > {color:blue; > text-decoration:underline; > text-underline:single;} >a:visited, span.MsoHyperlinkFollowed > {color:purple; > text-decoration:underline; > text-underline:single;} >p > {mso-margin-top-alt:auto; > margin-right:0in; > mso-margin-bottom-alt:auto; > margin-left:0in; > mso-pagination:widow-orphan; > font-size:12.0pt; > font-family:"Times New Roman"; > mso-fareast-font-family:"Times New Roman";} >code > {font-family:"Courier New"; > mso-ascii-font-family:"Courier New"; > mso-fareast-font-family:"Times New Roman"; > mso-hansi-font-family:"Courier New"; > mso-bidi-font-family:"Courier New";} >span.resultoftext > {mso-style-name:resultoftext;} >span.GramE > {mso-style-name:""; > mso-gram-e:yes;} >@page Section1 > {size:8.5in 11.0in; > margin:1.0in 1.25in 1.0in 1.25in; > mso-header-margin:.5in; > mso-footer-margin:.5in; > mso-paper-source:0;} >div.Section1 > {page:Section1;} >--> ></style> ><!--[if gte mso 10]> ><style> > /* Style Definitions */ > table.MsoNormalTable > {mso-style-name:"Table Normal"; > mso-tstyle-rowband-size:0; > mso-tstyle-colband-size:0; > mso-style-noshow:yes; > mso-style-parent:""; > mso-padding-alt:0in 5.4pt 0in 5.4pt; > mso-para-margin:0in; > mso-para-margin-bottom:.0001pt; > mso-pagination:widow-orphan; > font-size:10.0pt; > font-family:"Times New Roman"; > mso-ansi-language:#0400; > mso-fareast-language:#0400; > mso-bidi-language:#0400;} >table.MsoTableGrid > {mso-style-name:"Table Grid"; > mso-tstyle-rowband-size:0; > mso-tstyle-colband-size:0; > border:solid windowtext 1.0pt; > mso-border-alt:solid windowtext .5pt; > mso-padding-alt:0in 5.4pt 0in 5.4pt; > mso-border-insideh:.5pt solid windowtext; > mso-border-insidev:.5pt solid windowtext; > mso-para-margin:0in; > mso-para-margin-bottom:.0001pt; > mso-pagination:widow-orphan; > font-size:10.0pt; > font-family:"Times New Roman"; > mso-ansi-language:#0400; > mso-fareast-language:#0400; > mso-bidi-language:#0400;} ></style> ><![endif]--><!--[if gte mso 9]><xml> > <o:shapedefaults v:ext="edit" spidmax="4098"/> ></xml><![endif]--><!--[if gte mso 9]><xml> > <o:shapelayout v:ext="edit"> > <o:idmap v:ext="edit" data="1"/> > </o:shapelayout></xml><![endif]--> ></head> > ><body lang=EN-US link=blue vlink=purple style='tab-interval:.5in'> > ><div class=Section1> > ><h1>TPTP feature: 200251</h1> > ><table class=MsoNormalTable border=0 cellpadding=0 style='mso-cellspacing:1.5pt; > mso-padding-alt:1.5pt 1.5pt 1.5pt 1.5pt'> > <tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes'> > <td width=100 style='width:75.0pt;padding:1.5pt 1.5pt 1.5pt 1.5pt'> > <p class=MsoNormal>Author:</p> > </td> > <td style='padding:1.5pt 1.5pt 1.5pt 1.5pt'> > <p class=MsoNormal>Alexander N. Alexeev</p> > </td> > </tr> > <tr style='mso-yfti-irow:1'> > <td width=100 style='width:75.0pt;padding:1.5pt 1.5pt 1.5pt 1.5pt'> > <p class=MsoNormal>email:</p> > </td> > <td style='padding:1.5pt 1.5pt 1.5pt 1.5pt'> > <p class=MsoNormal><a href="mailto:alexander.n.alexeev@intel.com">alexander.n.alexeev@intel.com</a></p> > </td> > </tr> > <tr style='mso-yfti-irow:2;mso-yfti-lastrow:yes'> > <td width=100 style='width:75.0pt;padding:1.5pt 1.5pt 1.5pt 1.5pt'> > <p class=MsoNormal>Last updated:</p> > </td> > <td style='padding:1.5pt 1.5pt 1.5pt 1.5pt'> > <p class=MsoNormal><span style='mso-no-proof:yes'>10/24/2007</span></p> > </td> > </tr> ></table> > ><p class=MsoNormal><br> ><span style='color:red'>Rough workload estimate in person weeks:</span> </p> > ><table class=MsoNormalTable border=1 cellpadding=0 style='mso-cellspacing:1.5pt; > mso-padding-alt:0in 5.4pt 0in 5.4pt'> > <tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes'> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal align=center style='text-align:center'><b>Process<o:p></o:p></b></p> > </td> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal align=center style='text-align:center'><b>Sizing<o:p></o:p></b></p> > </td> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal align=center style='text-align:center'><b>Names of people > doing the work<o:p></o:p></b></p> > </td> > </tr> > <tr style='mso-yfti-irow:1'> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>Design</p> > </td> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>1ww</p> > </td> > <td rowspan=4 style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>Igor Alelekov</p> > </td> > </tr> > <tr style='mso-yfti-irow:2'> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>Code</p> > </td> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>2ww</p> > </td> > </tr> > <tr style='mso-yfti-irow:3'> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>Test</p> > </td> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>1ww</p> > </td> > </tr> > <tr style='mso-yfti-irow:4'> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>Documentation</p> > </td> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>1wd</p> > </td> > </tr> > <tr style='mso-yfti-irow:5'> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>Build and infrastructure</p> > </td> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>1wd</p> > </td> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>Igor Alelekov</p> > </td> > </tr> > <tr style='mso-yfti-irow:6'> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>Code review & other committer work <br> > (e.g. check-in, contribution tracking) <br> > if this is to be contributed by someone who <br> > is not a committer in the component </p> > </td> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>3wd</p> > </td> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal>N/A will be done by committer</p> > </td> > </tr> > <tr style='mso-yfti-irow:7;mso-yfti-lastrow:yes'> > <td style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal><b><span style='color:red'>Total</span></b></p> > </td> > <td colspan=2 style='padding:.75pt .75pt .75pt .75pt'> > <p class=MsoNormal><b><span style='color:red'>5ww</span></b></p> > </td> > </tr> ></table> > ><p class=MsoNormal><o:p> </o:p></p> > ><h2>Requirement summary</h2> > ><p style='margin-left:.25in'>Add support for "application" mode in >the Java 1.5+ (JVMTI) Profiler. <span class=GramE>Based on: 200251, 203415, <a >href="http://dev.eclipse.org/newslists/news.eclipse.tptp/msg04823.html">http://dev.eclipse.org/newslists/news.eclipse.tptp/msg04823.html</a> >, also related to 142986.</span> </p> > ><p class=MsoNormal style='text-indent:.25in'>General meaning of this feature is >to allow user have fine grained control mechanism over profiling process. This >function already was implemented in PI agent and can be considered as resolving >compatibility issue of PI and TI agent.</p> > ><p class=MsoNormal style='text-indent:.25in'><a >href="http://help.eclipse.org/help33/topic/org.eclipse.tptp.platform.doc.user/tasks/teprofsa.htm">http://help.eclipse.org/help33/topic/org.eclipse.tptp.platform.doc.user/tasks/teprofsa.htm</a></p> > ><p class=MsoNormal style='text-indent:.25in'><a >href="http://archive.eclipse.org/tptp/4.2.0/javadoc/Platform/public/org/eclipse/hyades/collection/profiler/Profiler.html">http://archive.eclipse.org/tptp/4.2.0/javadoc/Platform/public/org/eclipse/hyades/collection/profiler/Profiler.html</a> ></p> > ><p class=MsoNormal style='text-indent:.25in'><span >style='mso-spacerun:yes'> </span></p> > ><h2>Design summary</h2> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>org.eclipse.hyades.collection.profiler.Profiler</span> >is a singleton class with some native methods implemented in piAgent. This is >autonomous and it doesnt extend any common class or implement any interface. >Hence application mode support for <span class=GramE>TI<span >style='mso-spacerun:yes'> </span>will</span> have interface which resembles >interface of class from original PI application mode support.</p> > ><p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> > ><p class=MsoNormal style='text-indent:.25in'>New TI agent management class >Profiler is placed in org.eclipse.tptp.platform.jvmti.runtime.profiler.</p> > ><p class=MsoNormal style='text-indent:.25in'>It implements following methods >taken from PI version:</p> > ><p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> >static Profiler getProfiler();</p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> >void setMode(int mode);<span style='mso-spacerun:yes'> </span></p> > ><p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> > ><p class=MsoNormal style='text-indent:.25in'>Supported mode is:</p> > ><p class=MsoNormal style='text-indent:.25in'>PROFILER_EXECUTION_CG call >graph,</p> > ><p class=MsoNormal style='text-indent:.25in'>PROFILER_EXECUTION_AGG >aggregated execution statistics,</p> > ><p class=MsoNormal style='text-indent:.25in'>PROFILER_HEAP_STAT heap >statistics,</p> > ><p class=MsoNormal style='text-indent:.25in'>PROFILER_HEAP_ALLOCSITE heap >statistics with allocation site,</p> > ><p class=MsoNormal style='text-indent:.25in'>PROFILER_THREAD thread >profiling.</p> > ><p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> >void startProfiling();</p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> >void stopProfiling();</p> > ><p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> >void disableGC();</p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> >void enableGC();</p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> >void runGC();</p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> >static int emitXMLFragment(String xmlFragment);</p> > ><p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> > ><p class=MsoNormal style='text-indent:.25in'>This two methods <span >class=GramE>dont<span style='mso-spacerun:yes'> </span>exist</span> in PI >version and should be introduced in TI.</p> > ><p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> >void pauseProfiling();</p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> >void resumeProfiling();</p> > ><p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> > ><p class=MsoNormal style='text-indent:.25in'>Potential extension for API (stretch >goal):</p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void >setFilter(String[] filters);</p> > ><p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void >setOption(String key, String value);</p> > ><p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> > ><table class=MsoTableGrid border=1 cellspacing=0 cellpadding=0 > style='border-collapse:collapse;border:none;mso-border-alt:solid windowtext .5pt; > mso-yfti-tbllook:480;mso-padding-alt:0in 5.4pt 0in 5.4pt;mso-border-insideh: > .5pt solid windowtext;mso-border-insidev:.5pt solid windowtext'> > <tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes'> > <td width=295 valign=top style='width:221.4pt;border:solid windowtext 1.0pt; > mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'> > <p class=MsoNormal><b style='mso-bidi-font-weight:normal'>Key<o:p></o:p></b></p> > </td> > <td width=295 valign=top style='width:221.4pt;border:solid windowtext 1.0pt; > border-left:none;mso-border-left-alt:solid windowtext .5pt;mso-border-alt: > solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'> > <p class=MsoNormal><b style='mso-bidi-font-weight:normal'>Values<o:p></o:p></b></p> > </td> > </tr> > <tr style='mso-yfti-irow:1'> > <td width=295 valign=top style='width:221.4pt;border:solid windowtext 1.0pt; > border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt; > padding:0in 5.4pt 0in 5.4pt'> > <p class=MsoNormal>PROFILER_BINARY_OUTPUT</p> > </td> > <td width=295 valign=top style='width:221.4pt;border-top:none;border-left: > none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt; > mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt; > mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'> > <p class=MsoNormal>true/false or on/of</p> > </td> > </tr> > <tr style='mso-yfti-irow:2'> > <td width=295 valign=top style='width:221.4pt;border:solid windowtext 1.0pt; > border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt; > padding:0in 5.4pt 0in 5.4pt'> > <p class=MsoNormal>PROFILER_HEAP_ALLOCSITES</p> > </td> > <td width=295 valign=top style='width:221.4pt;border-top:none;border-left: > none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt; > mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt; > mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'> > <p class=MsoNormal>true/false or on/of<o:p></o:p></p> > </td> > </tr> > <tr style='mso-yfti-irow:3;mso-yfti-lastrow:yes'> > <td width=295 valign=top style='width:221.4pt;border:solid windowtext 1.0pt; > border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt; > padding:0in 5.4pt 0in 5.4pt'> > <p class=MsoNormal>PROFILER_CG_EXECDETAILS</p> > </td> > <td width=295 valign=top style='width:221.4pt;border-top:none;border-left: > none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt; > mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt; > mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'> > <p class=MsoNormal>true/false or on/of<o:p></o:p></p> > </td> > </tr> ></table> > ><p class=MsoNormal style='text-indent:.25in'>Values can be case insensitive.</p> > ><p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> > ><p class=MsoNormal style='text-indent:.25in'>Difference between them and >start/stop methods the next, start/stop methods working like attach/detach and >add/remove BCI from profiled application, while pause/resume just stop events >sending to the channel and continues to handle incoming events and to update >internal data structures. </p> > ><p class=MsoNormal><o:p> </o:p></p> > ></div> > ></body> > ></html>
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"> <head> <meta http-equiv=Content-Type content="text/html; charset=windows-1251"> <meta name=ProgId content=Word.Document> <meta name=Generator content="Microsoft Word 11"> <meta name=Originator content="Microsoft Word 11"> <link rel=File-List href="hf_200251_files/filelist.xml"> <title>"application" mode support</title> <!--[if gte mso 9]><xml> <o:DocumentProperties> <o:Author>Alexander N. Alexeev</o:Author> <o:LastAuthor>Alexander N. Alexeev</o:LastAuthor> <o:Revision>31</o:Revision> <o:TotalTime>1706</o:TotalTime> <o:Created>2007-10-03T20:45:00Z</o:Created> <o:LastSaved>2007-10-24T13:53:00Z</o:LastSaved> <o:Pages>1</o:Pages> <o:Words>500</o:Words> <o:Characters>2850</o:Characters> <o:Company>Intel Corporation</o:Company> <o:Lines>23</o:Lines> <o:Paragraphs>6</o:Paragraphs> <o:CharactersWithSpaces>3344</o:CharactersWithSpaces> <o:Version>11.8122</o:Version> </o:DocumentProperties> </xml><![endif]--><!--[if gte mso 9]><xml> <w:WordDocument> <w:GrammarState>Clean</w:GrammarState> <w:PunctuationKerning/> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:Compatibility> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> </w:LatentStyles> </xml><![endif]--> <style> <!-- /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} h1 {mso-margin-top-alt:auto; margin-right:0in; mso-margin-bottom-alt:auto; margin-left:0in; mso-pagination:widow-orphan; mso-outline-level:1; font-size:24.0pt; font-family:"Times New Roman"; font-weight:bold;} h2 {mso-margin-top-alt:auto; margin-right:0in; mso-margin-bottom-alt:auto; margin-left:0in; mso-pagination:widow-orphan; mso-outline-level:2; font-size:18.0pt; font-family:"Times New Roman"; font-weight:bold;} h3 {mso-style-next:Normal; margin-top:12.0pt; margin-right:0in; margin-bottom:3.0pt; margin-left:0in; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:3; font-size:13.0pt; font-family:Arial; font-weight:bold;} h4 {mso-margin-top-alt:auto; margin-right:0in; mso-margin-bottom-alt:auto; margin-left:0in; mso-pagination:widow-orphan; mso-outline-level:4; font-size:12.0pt; font-family:"Times New Roman"; font-weight:bold;} a:link, span.MsoHyperlink {color:blue; text-decoration:underline; text-underline:single;} a:visited, span.MsoHyperlinkFollowed {color:purple; text-decoration:underline; text-underline:single;} p {mso-margin-top-alt:auto; margin-right:0in; mso-margin-bottom-alt:auto; margin-left:0in; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} code {font-family:"Courier New"; mso-ascii-font-family:"Courier New"; mso-fareast-font-family:"Times New Roman"; mso-hansi-font-family:"Courier New"; mso-bidi-font-family:"Courier New";} span.resultoftext {mso-style-name:resultoftext;} span.GramE {mso-style-name:""; mso-gram-e:yes;} @page Section1 {size:8.5in 11.0in; margin:1.0in 1.25in 1.0in 1.25in; mso-header-margin:.5in; mso-footer-margin:.5in; mso-paper-source:0;} div.Section1 {page:Section1;} --> </style> <!--[if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} table.MsoTableGrid {mso-style-name:"Table Grid"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; border:solid windowtext 1.0pt; mso-border-alt:solid windowtext .5pt; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-border-insideh:.5pt solid windowtext; mso-border-insidev:.5pt solid windowtext; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} </style> <![endif]--><!--[if gte mso 9]><xml> <o:shapedefaults v:ext="edit" spidmax="4098"/> </xml><![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext="edit"> <o:idmap v:ext="edit" data="1"/> </o:shapelayout></xml><![endif]--> </head> <body lang=EN-US link=blue vlink=purple style='tab-interval:.5in'> <div class=Section1> <h1>TPTP feature: 200251</h1> <table class=MsoNormalTable border=0 cellpadding=0 style='mso-cellspacing:1.5pt; mso-padding-alt:1.5pt 1.5pt 1.5pt 1.5pt'> <tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes'> <td width=100 style='width:75.0pt;padding:1.5pt 1.5pt 1.5pt 1.5pt'> <p class=MsoNormal>Author:</p> </td> <td style='padding:1.5pt 1.5pt 1.5pt 1.5pt'> <p class=MsoNormal>Alexander N. Alexeev</p> </td> </tr> <tr style='mso-yfti-irow:1'> <td width=100 style='width:75.0pt;padding:1.5pt 1.5pt 1.5pt 1.5pt'> <p class=MsoNormal>email:</p> </td> <td style='padding:1.5pt 1.5pt 1.5pt 1.5pt'> <p class=MsoNormal><a href="mailto:alexander.n.alexeev@intel.com">alexander.n.alexeev@intel.com</a></p> </td> </tr> <tr style='mso-yfti-irow:2;mso-yfti-lastrow:yes'> <td width=100 style='width:75.0pt;padding:1.5pt 1.5pt 1.5pt 1.5pt'> <p class=MsoNormal>Last updated:</p> </td> <td style='padding:1.5pt 1.5pt 1.5pt 1.5pt'> <p class=MsoNormal><span style='mso-no-proof:yes'>10/24/2007</span></p> </td> </tr> </table> <p class=MsoNormal><br> <span style='color:red'>Rough workload estimate in person weeks:</span> </p> <table class=MsoNormalTable border=1 cellpadding=0 style='mso-cellspacing:1.5pt; mso-padding-alt:0in 5.4pt 0in 5.4pt'> <tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal align=center style='text-align:center'><b>Process<o:p></o:p></b></p> </td> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal align=center style='text-align:center'><b>Sizing<o:p></o:p></b></p> </td> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal align=center style='text-align:center'><b>Names of people doing the work<o:p></o:p></b></p> </td> </tr> <tr style='mso-yfti-irow:1'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>Design</p> </td> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>1ww</p> </td> <td rowspan=4 style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>Igor Alelekov</p> </td> </tr> <tr style='mso-yfti-irow:2'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>Code</p> </td> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>2ww</p> </td> </tr> <tr style='mso-yfti-irow:3'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>Test</p> </td> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>1ww</p> </td> </tr> <tr style='mso-yfti-irow:4'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>Documentation</p> </td> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>1wd</p> </td> </tr> <tr style='mso-yfti-irow:5'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>Build and infrastructure</p> </td> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>1wd</p> </td> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>Igor Alelekov</p> </td> </tr> <tr style='mso-yfti-irow:6'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>Code review & other committer work <br> (e.g. check-in, contribution tracking) <br> if this is to be contributed by someone who <br> is not a committer in the component </p> </td> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>3wd</p> </td> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal>N/A will be done by committer</p> </td> </tr> <tr style='mso-yfti-irow:7;mso-yfti-lastrow:yes'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><b><span style='color:red'>Total</span></b></p> </td> <td colspan=2 style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><b><span style='color:red'>5ww</span></b></p> </td> </tr> </table> <p class=MsoNormal><o:p> </o:p></p> <h2>Requirement summary</h2> <p style='margin-left:.25in'>Add support for "application" mode in the Java 1.5+ (JVMTI) Profiler. <span class=GramE>Based on: 200251, 203415, <a href="http://dev.eclipse.org/newslists/news.eclipse.tptp/msg04823.html">http://dev.eclipse.org/newslists/news.eclipse.tptp/msg04823.html</a> , also related to 142986.</span> </p> <p class=MsoNormal style='text-indent:.25in'>General meaning of this feature is to allow user have fine grained control mechanism over profiling process. This function already was implemented in PI agent and can be considered as resolving compatibility issue of PI and TI agent.</p> <p class=MsoNormal style='text-indent:.25in'><a href="http://help.eclipse.org/help33/topic/org.eclipse.tptp.platform.doc.user/tasks/teprofsa.htm">http://help.eclipse.org/help33/topic/org.eclipse.tptp.platform.doc.user/tasks/teprofsa.htm</a></p> <p class=MsoNormal style='text-indent:.25in'><a href="http://archive.eclipse.org/tptp/4.2.0/javadoc/Platform/public/org/eclipse/hyades/collection/profiler/Profiler.html">http://archive.eclipse.org/tptp/4.2.0/javadoc/Platform/public/org/eclipse/hyades/collection/profiler/Profiler.html</a> </p> <p class=MsoNormal style='text-indent:.25in'><span style='mso-spacerun:yes'> </span></p> <h2>Design summary</h2> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>org.eclipse.hyades.collection.profiler.Profiler</span> is a singleton class with some native methods implemented in piAgent. This is autonomous and it doesnt extend any common class or implement any interface. Hence application mode support for <span class=GramE>TI<span style='mso-spacerun:yes'> </span>will</span> have interface which resembles interface of class from original PI application mode support.</p> <p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> <p class=MsoNormal style='text-indent:.25in'>New TI agent management class Profiler is placed in org.eclipse.tptp.platform.jvmti.runtime.profiler.</p> <p class=MsoNormal style='text-indent:.25in'>It implements following methods taken from PI version:</p> <p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> static Profiler getProfiler();</p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void setMode(int mode);<span style='mso-spacerun:yes'> </span></p> <p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> <p class=MsoNormal style='text-indent:.25in'>Supported mode is:</p> <p class=MsoNormal style='text-indent:.25in'>PROFILER_EXECUTION_CG call graph,</p> <p class=MsoNormal style='text-indent:.25in'>PROFILER_EXECUTION_AGG aggregated execution statistics,</p> <p class=MsoNormal style='text-indent:.25in'>PROFILER_HEAP_STAT heap statistics,</p> <p class=MsoNormal style='text-indent:.25in'>PROFILER_HEAP_ALLOCSITE heap statistics with allocation site,</p> <p class=MsoNormal style='text-indent:.25in'>PROFILER_THREAD thread profiling.</p> <p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void startProfiling();</p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void stopProfiling();</p> <p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void disableGC();</p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void enableGC();</p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void runGC();</p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> static int emitXMLFragment(String xmlFragment);</p> <p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> <p class=MsoNormal style='text-indent:.25in'>This two methods <span class=GramE>dont<span style='mso-spacerun:yes'> </span>exist</span> in PI version and should be introduced in TI.</p> <p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void pauseProfiling();</p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void resumeProfiling();</p> <p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> <p class=MsoNormal style='text-indent:.25in'>Potential extension for API (stretch goal):</p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void setFilter(String[] filters);</p> <p class=MsoNormal style='text-indent:.25in'><span class=GramE>public</span> void setOption(String key, String value);</p> <p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> <table class=MsoTableGrid border=1 cellspacing=0 cellpadding=0 style='border-collapse:collapse;border:none;mso-border-alt:solid windowtext .5pt; mso-yfti-tbllook:480;mso-padding-alt:0in 5.4pt 0in 5.4pt;mso-border-insideh: .5pt solid windowtext;mso-border-insidev:.5pt solid windowtext'> <tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes'> <td width=295 valign=top style='width:221.4pt;border:solid windowtext 1.0pt; mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'> <p class=MsoNormal><b style='mso-bidi-font-weight:normal'>Key<o:p></o:p></b></p> </td> <td width=295 valign=top style='width:221.4pt;border:solid windowtext 1.0pt; border-left:none;mso-border-left-alt:solid windowtext .5pt;mso-border-alt: solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'> <p class=MsoNormal><b style='mso-bidi-font-weight:normal'>Values<o:p></o:p></b></p> </td> </tr> <tr style='mso-yfti-irow:1'> <td width=295 valign=top style='width:221.4pt;border:solid windowtext 1.0pt; border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt; padding:0in 5.4pt 0in 5.4pt'> <p class=MsoNormal>PROFILER_BINARY_OUTPUT</p> </td> <td width=295 valign=top style='width:221.4pt;border-top:none;border-left: none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt; mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt; mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'> <p class=MsoNormal>true/false or on/of</p> </td> </tr> <tr style='mso-yfti-irow:2'> <td width=295 valign=top style='width:221.4pt;border:solid windowtext 1.0pt; border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt; padding:0in 5.4pt 0in 5.4pt'> <p class=MsoNormal>PROFILER_HEAP_ALLOCSITES</p> </td> <td width=295 valign=top style='width:221.4pt;border-top:none;border-left: none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt; mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt; mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'> <p class=MsoNormal>true/false or on/of<o:p></o:p></p> </td> </tr> <tr style='mso-yfti-irow:3;mso-yfti-lastrow:yes'> <td width=295 valign=top style='width:221.4pt;border:solid windowtext 1.0pt; border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt; padding:0in 5.4pt 0in 5.4pt'> <p class=MsoNormal>PROFILER_CG_EXECDETAILS</p> </td> <td width=295 valign=top style='width:221.4pt;border-top:none;border-left: none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt; mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt; mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'> <p class=MsoNormal>true/false or on/of<o:p></o:p></p> </td> </tr> </table> <p class=MsoNormal style='text-indent:.25in'>Values can be case insensitive.</p> <p class=MsoNormal style='text-indent:.25in'><o:p> </o:p></p> <p class=MsoNormal style='text-indent:.25in'>Difference between them and start/stop methods the next, start/stop methods working like attach/detach and add/remove BCI from profiled application, while pause/resume just stop events sending to the channel and continues to handle incoming events and to update internal data structures. </p> <p class=MsoNormal><o:p> </o:p></p> </div> </body> </html>
View Attachment As Raw
Actions:
View
Attachments on
bug 200251
: 81060 |
87048
|
87410
|
89022
|
89110