Re: [Gems-users] misses at main memory


Date: Wed, 11 Aug 2010 03:00:53 -0500
From: Philip Garcia <pcgarcia@xxxxxxxx>
Subject: Re: [Gems-users] misses at main memory
There would be no way for ruby to handle main memory "misses" (directly), as ruby handles physical memory address requests.  If an application is running on gems, and causes a page fault a series of steps will occur.  First, the address will miss in the TLB.  The ultrasparc processor will trip to the TLB miss handler, where it will attempt to look up the address in the TSB.  Failing that, the trap will attempt to walk the page table to find the address.  On a page fault, there is no virtual to physical memory translation in the page table, so the OS will have to load in the appropriate page (either from disk, on demand page loading, etc).  No specific physical memory request will get send to gems to handle this, and the OS does the appropriate action.  I do not know offhand how to adjust disk latency etc, that isn't modeled within GEMs though.

If you wanted to "catch" those memory misses, there is likely some handler in simics that can be called back on a page fault.  I don't know the best way to find this offhand though.  I imagine you'd have better luck checking the simics manual, and asking a similar question on the simics forum.  The other option is to add magic instructions into the OS code where page faults are handles ....  It might also be possible to tell simics to break when the PC is equal to a particular address.  In that case, you just need the address of the page fault handler in the kernel itself.

Phil
On Aug 10, 2010, at 11:30 PM, Miray Kas wrote:

Hi everyone,
I am new to gems and I have two questions about simulating memory and opal.
1-)How can I set the main memory miss latency? I see that memory response time is set to 160(158) in default configurations, assuming this is a hit.
How can I set the latency of a corresponding miss?

2-) I need to catch these memory misses (not L1, not L2 but only misses main memory; namely the page faults) at Opal and trigger some events accordingly.
Do you know if this is possible or how can it be done?

Any help would be appreciated:)
Thanks!
Miray

_______________________________________________
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→]