<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic core cache measurement in P-Series</title>
    <link>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220207#M155</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;Hello Everyone,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;I'm working on replacement of run time function call (which is working fine) and have few questions regarding the e500mc core cache measurement as follows :&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;Are there any tool available to measure the application (user level) L1 (D and I)/l2 cache miss rate? &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;- I have tried with oprofile, but not helping much for my application because trying to track the program which modifies its own program code (Kinda of self modifying). The code which is getting modified during run time is not owned by the main process, which is loaded during run time into the process program memory. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;- Planning to try 'perf' tool very soon though (not sure how much this is gonna help for my case).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;- Not sure, how much CW Development studio will help here, because not able to compile the user space application against the tool chain provided as&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;part of CW suite. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;Is there any provision available to read the I/D cache content ??&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 03 Jan 2013 17:48:38 GMT</pubDate>
    <dc:creator>Simbu</dc:creator>
    <dc:date>2013-01-03T17:48:38Z</dc:date>
    <item>
      <title>core cache measurement</title>
      <link>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220207#M155</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;Hello Everyone,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;I'm working on replacement of run time function call (which is working fine) and have few questions regarding the e500mc core cache measurement as follows :&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;Are there any tool available to measure the application (user level) L1 (D and I)/l2 cache miss rate? &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;- I have tried with oprofile, but not helping much for my application because trying to track the program which modifies its own program code (Kinda of self modifying). The code which is getting modified during run time is not owned by the main process, which is loaded during run time into the process program memory. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;- Planning to try 'perf' tool very soon though (not sure how much this is gonna help for my case).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;- Not sure, how much CW Development studio will help here, because not able to compile the user space application against the tool chain provided as&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;part of CW suite. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 10pt; color: #000000;"&gt;Is there any provision available to read the I/D cache content ??&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Jan 2013 17:48:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220207#M155</guid>
      <dc:creator>Simbu</dc:creator>
      <dc:date>2013-01-03T17:48:38Z</dc:date>
    </item>
    <item>
      <title>Re: core cache measurement</title>
      <link>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220208#M156</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The performance monitor could be helpful to measure cache miss rate, see section 9.11.6 Event Selection in E500MCRM.pdf. &lt;BR /&gt;Cache content could be viewed and modified in CodeWarrior debugger during a debug session. See section 5.2.6 Viewing and modifying Cache Contents in Targeting_PA_Processors.pdf, the document is in the installation directory of codewarrior.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 05 Jan 2013 07:04:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220208#M156</guid>
      <dc:creator>lunminliang</dc:creator>
      <dc:date>2013-01-05T07:04:53Z</dc:date>
    </item>
    <item>
      <title>Re: core cache measurement</title>
      <link>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220209#M157</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Lunmin,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your quick prompt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Maybe I need to think about writing a user space profiler using the PREF MONT registers (time consuming) , so for quick check if in case there is any register setting or tool which can help me to dump the I or D cache content that will be sufficient for my application assessment.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regarding the CW debugger, I'm not sure whether need to buy something new as external connectivity interface or not. BTW, I tried with default USB TAB but not able to establish the connection between debugger and development board.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any further idea on this regard will be helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thx.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 07 Jan 2013 17:48:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220209#M157</guid>
      <dc:creator>Simbu</dc:creator>
      <dc:date>2013-01-07T17:48:56Z</dc:date>
    </item>
    <item>
      <title>Re: core cache measurement</title>
      <link>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220210#M158</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Why do you think you need to write a new profiler?&amp;nbsp; What are you trying to do that perf (or oprofile) can't do?&amp;nbsp; Why does it matter that your application has self-modifying code?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As for reading cache *contents* rather than just determining the miss rate, that can't be done from software.&amp;nbsp; You'll need to use an external debugger for that.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 07 Jan 2013 19:21:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220210#M158</guid>
      <dc:creator>scottwood</dc:creator>
      <dc:date>2013-01-07T19:21:11Z</dc:date>
    </item>
    <item>
      <title>Re: core cache measurement</title>
      <link>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220211#M159</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;EM style="color: #000000; font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;Why do you think you need to write a new profiler?&amp;nbsp; &lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM style="color: #000000; font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;What are you trying to do that perf (or oprofile) can't do?&amp;nbsp; &lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt; color: #000000;"&gt;I'm not trying to do perf or any other application profiler unable to do.Basically, my application executes 'program code' which are not owned by the same application.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt; color: #000000;"&gt;For E.G: &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt; color: #000000;"&gt;Below is the brief process flow :&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt;"&gt;Assuming X as Linux process and Y is the program code of Y process (either a &lt;/SPAN&gt;&lt;SPAN style="color: #000000; font-family: tahoma, arial, helvetica, sans-serif;"&gt;Linux&lt;/SPAN&gt;&lt;SPAN style="color: #000000; font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt;"&gt; process nor elf executable)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt; color: #000000;"&gt;- Launch the X process (execute the main program) &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt; color: #000000;"&gt;- X process will parse the program code file (Y) to get some GB's of instructions and will store in its own memory (X).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt; color: #000000;"&gt;- X will then branch/jump into the start point of Y process instruction (program code).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt;"&gt;By referring the above flow, an existing profiler(s) will be able to capture only the Linux process (X) owned symbolic links and instruction execution and not capturing the program code (PPC instructions) which is loaded during &lt;/SPAN&gt;&lt;SPAN style="color: #000000; font-family: tahoma, arial, helvetica, sans-serif;"&gt;run time&lt;/SPAN&gt;&lt;SPAN style="color: #000000; font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM style="color: #000000; font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;Why does it matter that your application has self-modifying code?&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt;"&gt;For generic profiler, it doesn't matter in terms of code is self modified or originally compiled one. But by referring the above explained flow the tracking/profile code is Y program code and not the one owned by Linux process. In this case, my application needs to have one self profiler to assess the program code (loaded @ &lt;/SPAN&gt;&lt;SPAN style="color: #000000; font-family: tahoma, arial, helvetica, sans-serif;"&gt;run time&lt;/SPAN&gt;&lt;SPAN style="color: #000000; font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt;"&gt;) by X process.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM style="color: #000000; font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;As for reading cache *contents* rather than just determining the miss rate, that can't be done from software.&amp;nbsp; You'll need to use an external debugger for that.&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt; color: #000000;"&gt;External debugger referred in above statement is just a USB TAP or something else need to purchase ?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Jan 2013 13:18:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220211#M159</guid>
      <dc:creator>Simbu</dc:creator>
      <dc:date>2013-01-08T13:18:16Z</dc:date>
    </item>
    <item>
      <title>Re: core cache measurement</title>
      <link>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220212#M160</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Could you elaborate on why the existing profilers care about where the instructions came from?&amp;nbsp; You won't get symbolic information, of course, but you should still be able to read out the counters for everything that happens in process X.&amp;nbsp; There is no "process Y" as far as Linux (and thus its profilers) is concerned; you're just loading "program Y" into "process X" and executing it in the context of "process X".&amp;nbsp; I suspect the problem is with whatever mechanism you're using to view the data, not with the data collection itself.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes, a USB TAP should work for reading cache contents, in conjunction with CodeWarrior.&amp;nbsp; If you're having trouble getting CodeWarrior and your USB TAP working, that should be raised as a separate question.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Jan 2013 17:47:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220212#M160</guid>
      <dc:creator>scottwood</dc:creator>
      <dc:date>2013-01-08T17:47:15Z</dc:date>
    </item>
    <item>
      <title>Re: core cache measurement</title>
      <link>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220213#M161</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;EM&gt;Could you elaborate on why the existing profilers care about where the instructions came from? &lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;You won't get symbolic information, of course, but you should still be able to read out the counters for everything that happens in process X.&amp;nbsp; &lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;There is no "process Y" as far as Linux (and thus its profilers) is concerned; you're just loading "program Y" into "process X" and executing it in the context of "process X". &lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;I can understand the exiting profiler will not and not suppose to capture/track the instruction's (Program Y).&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;I have altered some code whcih will provide good cache performance (miss/hit), but with new code changes also noticing same cache profile. But with your above statement, the counters are incremented for the program Y (within context X). I'm planning to recollect the data samples and will reconfirm the cache rate (miss/hit). &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;I suspect the problem is with whatever mechanism you're using to view the data, not with the data collection itself.&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Yes, a USB TAP should work for reading cache contents, in conjunction with CodeWarrior.&amp;nbsp; If you're having trouble getting CodeWarrior and your USB TAP working, that should be raised as a separate question&lt;/EM&gt;.&lt;/P&gt;&lt;P&gt;Okie..Thanks..&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Jan 2013 14:17:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/P-Series/core-cache-measurement/m-p/220213#M161</guid>
      <dc:creator>Simbu</dc:creator>
      <dc:date>2013-01-11T14:17:57Z</dc:date>
    </item>
  </channel>
</rss>

