Re: [Gems-users] Tracing TLB Misses


Date: Mon, 20 Nov 2006 10:19:17 -0600 (CST)
From: Luke Yen <lyen@xxxxxxxxxxx>
Subject: Re: [Gems-users] Tracing TLB Misses
Hi Nikolas,

  The way to do this is to register an exception callback so that Simics
can inform you whenever it is about to take an exception, and when
the exception completes:

    SIM_hap_register_callback("Core_Exception", (cb_func_no_t)
ctrl_exception_start, (void *) NULL);
  SIM_hap_register_callback("Core_Exception_Return", (cb_func_no_t)
ctrl_exception_done, (void *) NULL);

   You can do this using a Python script (independent of Opal or Ruby,
useful if you just want to profile without loading those modules). or do
this using C code in Ruby or Opal.

  Then Simics will call ctrl_exception_start() before each exception (including TLB),
and ctrl_exception_done() after each exception completes.  Arguments for
the callback functions are:

  void ctrl_exception_start(void* desc, void* cpu, integer_t val)

  where val is the exception number.  Again you can implement the callback
functions in python or C code.

  Regards,
  Luke

On Mon, 20 Nov 2006 nikolaos@xxxxxxxxxx wrote:

>
>
> Hi all,
>
> I need to trace TLB misses (both D-TLB and I-TLB), and searching through the
> source code I found the pseq_t::postException function. Would it be correct to
> use this function to trace when the Fast_Data_Access_MMU_Miss (0x68) and
> Fast_Instruction_Access_MMU_Miss (0x64) exceptions happen? Is postException
> called for all exceptions that happen in Opal-Ruby?
>
> Thanks a lot,
>
> Nikolas Galanis
> _______________________________________________
> Gems-users mailing list
> Gems-users@xxxxxxxxxxx
> https://lists.cs.wisc.edu/mailman/listinfo/gems-users
> Use Google to search the GEMS Users mailing list by adding "site:https://lists.cs.wisc.edu/archive/gems-users/"; to your search.
>
[← Prev in Thread] Current Thread [Next in Thread→]