Hi everyone,

The fixed-latency memory model has been renamed to SimpleMemory as already 
pointed out, and it inherits from an AbstractMemory that is encapsulating the 
fundamental "memory" behaviour of reading and writing data. A high-level DRAM 
controller model is in currently work-in-progress and will be posted on the 
gem5 review board once it is ready for public scrutiny. This model will also 
inherit from AbstractMemory and users can choose to have the 
fast-and-not-so-accurate SimpleMemory, or the more detailed, but slower 
SimpleDRAM.

Andreas

From: [email protected] [mailto:[email protected]] On 
Behalf Of Tao Zhang
Sent: 13 May 2012 20:12
To: gem5 users mailing list
Subject: Re: [gem5-users] What happened to DRAM model?

Hi Mahmood,

The SimpleMemory extends the AbstractMemory and is used in the latest version 
of gem5. It just generates a random memory latency rather than cycle-accurate 
simulation. In my opinion, it can NOT be used at all due to the inaccuracy. 
Alternatively, you can use the DRAMSim2 patch in an old version. Or, you may 
improve the simple memory model to get more confidence.

"...The bottom line: unless you are working with simple systems, you can no 
longer fake the memory system in your performance simulations (i.e., you cannot 
use a simplistic model), because doing so is guaranteed to produce garbage in, 
garbage out results..." from Bruce Jacob, <The memory systems: you can't avoid 
it, you can't ignore it, you can't fake it>

Tao

On 05/13/2012 02:56 PM, Mahmood Naderan wrote:

the PhysicalMemory is now called AbstractMemory



The DRAM model was a definition like this:

class DRAMMemory(PhysicalMemory):

    type = 'DRAMMemory'

    # Many of these should be observed from the configuration

    cpu_ratio = Param.Int(5,"ratio between CPU speed and memory bus speed")

    mem_type = Param.String("SDRAM", "Type of DRAM (DRDRAM, SDRAM)")

    mem_actpolicy = Param.String("open", "Open/Close policy")

    memctrladdr_type = Param.String("interleaved", "Mapping

interleaved or direct")

    bus_width = Param.Int(16, "")

    act_lat = Param.Latency("2ns", "RAS to CAS delay")

    cas_lat = Param.Latency("1ns", "CAS delay")

    war_lat = Param.Latency("2ns", "write after read delay")

    pre_lat = Param.Latency("2ns", "precharge delay")

    dpl_lat = Param.Latency("2ns", "data in to precharge delay")

    trc_lat = Param.Latency("6ns", "row cycle delay")

    num_banks = Param.Int(4, "Number of Banks")

    num_cpus = Param.Int(4, "Number of CPUs connected to DRAM")



But seems that it has been removed. So it is no longer possible to set

some DRAM parameters.



On 5/13/12, Tao Zhang 
<[email protected]><mailto:[email protected]> wrote:

They have been replaced with "abstract_mem.cc" and "simple_mem.cc".



-Tao



On 05/13/2012 01:13 PM, Mahmood Naderan wrote:

Hi

There were some physicalmemory.py , dram.cc and dram.hh files in

previous releases. But seems that they are no longer available.



Appreciate any comment.

_______________________________________________

gem5-users mailing list

[email protected]<mailto:[email protected]>

http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users







-- 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.
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to