SMAUG
Simulating Machine Learning Applications on gem5-Aladdin
globals.h
Go to the documentation of this file.
1 
6 #ifndef _CORE_GLOBALS_H_
7 #define _CORE_GLOBALS_H_
8 
9 namespace smaug {
10 
11 class ThreadPool;
12 
16 extern bool runningInSimulation;
17 
19 extern bool fastForwardMode;
20 
25 constexpr const int maxNumAccelerators = 8;
26 
30 extern int numAcceleratorsAvailable;
31 
35 extern ThreadPool* threadPool;
36 
42 
43 } // namespace smaug
44 
45 #endif
smaug::threadPool
ThreadPool * threadPool
The user-space thread pool used by SMAUG to run multithreaded tasks.
Definition: globals.cpp:7
smaug::numAcceleratorsAvailable
int numAcceleratorsAvailable
The actual number of accelerator complexes currently in use.
Definition: globals.cpp:6
smaug::useSystolicArrayWhenAvailable
bool useSystolicArrayWhenAvailable
If true, uses the systolic array for applicable operators when backend support exists.
Definition: globals.cpp:8
smaug::maxNumAccelerators
constexpr const int maxNumAccelerators
The maximum number of accelerators an operator's work can be split across.
Definition: globals.h:25
smaug::fastForwardMode
bool fastForwardMode
True if we are simulating in fast-forward mode.
Definition: globals.cpp:5
smaug::runningInSimulation
bool runningInSimulation
This is true if the user chooses to run the network in gem5 simulation.
Definition: globals.cpp:4
smaug
The smaug namespace is the parent namespace of all C++ code in SMAUG.
Definition: backend.cpp:38
smaug::ThreadPool
A user-space cooperatve thread pool implementation designed for gem5 in SE mode.
Definition: thread_pool.h:23