Thanks for the reply, Paul.
- Bhushan


On Wed, Oct 24, 2012 at 9:40 AM, Paul Rosenfeld <[email protected]>wrote:

> Looking at the code, it looks like the CPU controller simply clears it's
> own pending entries for that request (i.e., so that when it comes back from
> the cache, it will see that it is no longer pending and will simply be
> tossed). In other words, I don't think it searches through the cache
> hierarchy to try to stop a request in progress.

 You are right that the CPU controller simply clears it's own entry and
when the request comes back the controller just ignores it.

>
>
When you say that CacheController::annul_request is never called, are you
> sure you're looking at the right file? IIRC, there are a
> few CacheController objects in different namespaces (Memory::CoherentCache
> in coherentCache.cpp and plain Memory:: in cacheController.cpp).
>
> Yes, the only code that could call CacheController::annul_request is in
CPUController::annul but it has been commented out. I tried walking through
the pending entries of requests at each controller and invalidate such
requests but it kinda doesnt work. Still figuring out why, but the main
reason why I want to actively walk through the pending requests and annul
them is that I am trying to minimize memory accesses that can be passed
around the memory hierarchy.  Please do let me know if I should be aware of
any pitfalls if I actively annul requests in the controller.

It's been a while since I've rummaged through the code so hopefully I'm not
> telling you the wrong thing.
>
> -Paul
>
> On Sat, Oct 20, 2012 at 10:37 PM, Vidyabhushan Mohan <
> [email protected]> wrote:
>
>> Hi,
>> I am trying to understand how memory requests are being annuled. The code
>> in MemoryHierarchy::annul_request is almost commented out except for
>> annuling request in the cpu controller. So, if there is a load/store that
>> needs to be annuled (the core issues a annul request) and if the request is
>> currently being serviced by the L3 cache (say), then how does it get
>> annuled? I see there is a CacheController::annul_request but it never gets
>> called. So, could someone share the thoughts on how such requests are
>> annuled?
>>
>> Thanks much,
>> - Bhushan
>>
>>
>> _______________________________________________
>> http://www.marss86.org
>> Marss86-Devel mailing list
>> [email protected]
>> https://www.cs.binghamton.edu/mailman/listinfo/marss86-devel
>>
>>
>
_______________________________________________
http://www.marss86.org
Marss86-Devel mailing list
[email protected]
https://www.cs.binghamton.edu/mailman/listinfo/marss86-devel

Reply via email to