From dadb44ad16727623476a1e6947453da81ed682c7 Mon Sep 17 00:00:00 2001 From: "Andrew M. B. Boktor" Date: Mon, 2 Jul 2012 22:11:33 -0800 Subject: Adding a two level scheduler as described in the ISCA 2012 tutorial [git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 13261] --- src/gpgpu-sim/scoreboard.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/gpgpu-sim/scoreboard.h') diff --git a/src/gpgpu-sim/scoreboard.h b/src/gpgpu-sim/scoreboard.h index e6d54c8..8559131 100644 --- a/src/gpgpu-sim/scoreboard.h +++ b/src/gpgpu-sim/scoreboard.h @@ -47,6 +47,7 @@ public: bool checkCollision(unsigned wid, const inst_t *inst) const; bool pendingWrites(unsigned wid) const; void printContents() const; + const bool islongop(unsigned warp_id, unsigned regnum); private: void reserveRegister(unsigned wid, unsigned regnum); @@ -55,6 +56,8 @@ private: // keeps track of pending writes to registers // indexed by warp id, reg_id => pending write count std::vector< std::set > reg_table; + //Register that depend on a long operation (global, local or tex memory) + std::vector< std::set > longopregs; }; -- cgit v1.3