diff options
| author | Mahmoud <[email protected]> | 2017-10-25 13:15:44 -0400 |
|---|---|---|
| committer | Mahmoud <[email protected]> | 2017-10-25 13:15:44 -0400 |
| commit | 50b7ac49a78948f61fa685d717de90feaa277b9b (patch) | |
| tree | 668375bfa2f2427a850fa7e691d5ceae347a6491 /src/gpgpu-sim/dram.cc | |
| parent | 07b375cc0c0da2b8a8ca7263f11ecca8ebaf8fe9 (diff) | |
The commits includes:
1- REEAD/WERITE buffer for DRAM
2- Fixing FETCH_ON_WRITE cahce policy bug
Diffstat (limited to 'src/gpgpu-sim/dram.cc')
| -rw-r--r-- | src/gpgpu-sim/dram.cc | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/gpgpu-sim/dram.cc b/src/gpgpu-sim/dram.cc index 5c1ddab..7ed7b6f 100644 --- a/src/gpgpu-sim/dram.cc +++ b/src/gpgpu-sim/dram.cc @@ -149,11 +149,18 @@ dram_t::dram_t( unsigned int partition_id, const struct memory_config *config, m } -bool dram_t::full() const +bool dram_t::full(bool is_write) const { if(m_config->scheduler_type == DRAM_FRFCFS){ if(m_config->gpgpu_frfcfs_dram_sched_queue_size == 0 ) return false; - return m_frfcfs_scheduler->num_pending() >= m_config->gpgpu_frfcfs_dram_sched_queue_size; + if(m_config->seperate_write_queue_enabled){ + if(is_write) + return m_frfcfs_scheduler->num_write_pending() >= m_config->gpgpu_frfcfs_dram_write_queue_size; + else + return m_frfcfs_scheduler->num_pending() >= m_config->gpgpu_frfcfs_dram_sched_queue_size; + } + else + return m_frfcfs_scheduler->num_pending() >= m_config->gpgpu_frfcfs_dram_sched_queue_size; } else return mrqq->full(); } |
