Hi Rizwana, There should be no stats changes at all on the trunk. The regression runs from yesterday confirms this as well. Are you sure you ran with a clean repo?
Andreas From: Rizwana Begum <[email protected]<mailto:[email protected]>> Date: Tuesday, 3 February 2015 15:44 To: Andreas Hansson <[email protected]<mailto:[email protected]>> Cc: gem5 users mailing list <[email protected]<mailto:[email protected]>> Subject: Re: [gem5-users] DRAMCtrl auto precharge logic simplification Hello Andreas, Yes, the condition will still consider bank conflicts for open-adaptive policy. I made the fix and ran quick regression tests for ARM. All of the tests passed, however there are some errors(in % difference) in results. Here is the output before and after the fix (grep for error): gem5-dev tip (before fix): Maximum error magnitude: +68.750000% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +89.743590% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +9999.000000% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +9999.000000% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +68.750000% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +0.000000% Maximum error magnitude: +0.000000% Maximum error magnitude: +0.000000% Maximum error magnitude: +0.000000% Maximum error magnitude: +0.000000% Maximum error magnitude: +0.000000% With fix: Maximum error magnitude: +6.666667% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +9999.000000% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +9999.000000% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +9999.000000% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +38.862333% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +68.750000% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +89.743590% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +9999.000000% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +9999.000000% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +68.750000% [... showing top 20 errors only, additional errors omitted ...] Maximum error magnitude: +0.000000% Maximum error magnitude: +0.000000% Maximum error magnitude: +0.000000% Maximum error magnitude: +0.000000% Maximum error magnitude: +0.000000% Maximum error magnitude: +0.000000% Is this a concern? or can I ignore these errors? PS: Attached full output of quick regression tests. Thank you, -Rizwana On Tue, Feb 3, 2015 at 3:57 AM, Andreas Hansson <[email protected]<mailto:[email protected]>> wrote: Hi Rizwana, I look forward to see the patch. Note that open-adaptive and closed-adaptive behave differently. In the open case we only close if there is no hit, and there is a bank conflict. For the closed one we close if there are no hits (ignoring if there are conflicts or not). If this is till captured then by all means go ahead and simplify the code. Perhaps add some more comments to make this more clear. Andreas From: Rizwana Begum via gem5-users <[email protected]<mailto:[email protected]>> Reply-To: Rizwana Begum <[email protected]<mailto:[email protected]>>, gem5 users mailing list <[email protected]<mailto:[email protected]>> Date: Tuesday, 3 February 2015 05:01 To: gem5 users mailing list <[email protected]<mailto:[email protected]>> Subject: [gem5-users] DRAMCtrl auto precharge logic simplification Hello All, I think the if condition that's checking to find the right condition for auto-precharge in doDRAMAccess() can be simplified Original : while (!(got_more_hits && (got_bank_conflict || pageMgmt == Enums::close_adaptive)) && p != queue.end()) { Simplified: while (!got_more_hits && p != queue.end()) { The above simplification comes as both close-adaptive and open-adaptive policies keep row open if a hit is found. Otherwise the search for a hit continues until the end of the queue and during the search got_bank_conflict gets updated anyways. I am planning to put this simplification on reviewboard (along with another bug fix that I have). I would appreciate it if anyone using DRAM controller has any comments regarding this simplification. Thank you, -Rizwana -- IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you. ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in England & Wales, Company No: 2557590 ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in England & Wales, Company No: 2548782 -- IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you. ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in England & Wales, Company No: 2557590 ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in England & Wales, Company No: 2548782
_______________________________________________ gem5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
