Only use DRAMSysRecorable when recording is enabled
This commit is contained in:
@@ -74,7 +74,15 @@ int sc_main(int argc, char **argv)
|
||||
if (!configuration.tracesetup.has_value())
|
||||
SC_REPORT_FATAL("Simulator", "No traffic initiators specified");
|
||||
|
||||
DRAMSys::DRAMSysRecordable dramSys("DRAMSys", configuration);
|
||||
std::unique_ptr<DRAMSys::DRAMSys> dramSys;
|
||||
if (configuration.simconfig.DatabaseRecording)
|
||||
{
|
||||
dramSys = std::make_unique<DRAMSys::DRAMSysRecordable>("DRAMSys", configuration);
|
||||
}
|
||||
else
|
||||
{
|
||||
dramSys = std::make_unique<DRAMSys::DRAMSys>("DRAMSys", configuration);
|
||||
}
|
||||
|
||||
MemoryManager memoryManager(false);
|
||||
|
||||
@@ -99,8 +107,8 @@ int sc_main(int argc, char **argv)
|
||||
|
||||
for (auto const &initiator_config : configuration.tracesetup.value())
|
||||
{
|
||||
uint64_t memorySize = dramSys.getConfig().memSpec->getSimMemSizeInBytes();
|
||||
unsigned int dataLength = dramSys.getConfig().memSpec->defaultBytesPerBurst;
|
||||
uint64_t memorySize = dramSys->getConfig().memSpec->getSimMemSizeInBytes();
|
||||
unsigned int dataLength = dramSys->getConfig().memSpec->defaultBytesPerBurst;
|
||||
|
||||
auto initiator = std::visit(
|
||||
[=, &memoryManager](auto &&config) -> std::unique_ptr<Initiator>
|
||||
@@ -163,7 +171,7 @@ int sc_main(int argc, char **argv)
|
||||
|
||||
totalTransactions += initiator->totalRequests();
|
||||
|
||||
initiator->bind(dramSys.tSocket);
|
||||
initiator->bind(dramSys->tSocket);
|
||||
initiators.push_back(std::move(initiator));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user