Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ramulator make -j errors #1

Open
rachmadvwp opened this issue Jun 15, 2019 · 9 comments
Open

Ramulator make -j errors #1

rachmadvwp opened this issue Jun 15, 2019 · 9 comments

Comments

@rachmadvwp
Copy link

rachmadvwp commented Jun 15, 2019

Hi,
I was trying out the simulator, but got errors when running make -j for Ramulator. Following are the errors:

$ make -j
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/Controller.o   -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/Controller.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/LogicLayer.o   -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/LogicLayer.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/Processor.o   -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/Processor.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/MemoryFactory.o   -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/MemoryFactory.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/Refresh.o   -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/Refresh.cpp
In file included from src/Memory.h:7:0,
                 from src/MemoryFactory.h:9,
                 from src/MemoryFactory.cpp:1:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
 #include "libdrampower/LibDRAMPower.h"
                                       ^
compilation terminated.
In file included from src/Controller.cpp:1:0:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
 #include "libdrampower/LibDRAMPower.h"
                                       ^
compilation terminated.
In file included from src/Refresh.cpp:13:0:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
 #include "libdrampower/LibDRAMPower.h"
                                       ^
compilation terminated.
Makefile:55: recipe for target 'obj/MemoryFactory.o' failed
make: *** [obj/MemoryFactory.o] Error 1
make: *** Waiting for unfinished jobs....
Makefile:55: recipe for target 'obj/Controller.o' failed
make: *** [obj/Controller.o] Error 1
Makefile:55: recipe for target 'obj/Refresh.o' failed
make: *** [obj/Refresh.o] Error 1
In file included from src/HMC_Controller.h:12:0,
                 from src/LogicLayer.h:6,
                 from src/LogicLayer.cpp:4:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
 #include "libdrampower/LibDRAMPower.h"
                                       ^
compilation terminated.
In file included from src/Memory.h:7:0,
                 from src/Processor.h:6,
                 from src/Processor.cpp:1:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
 #include "libdrampower/LibDRAMPower.h"
                                       ^
compilation terminated.
Makefile:55: recipe for target 'obj/LogicLayer.o' failed
make: *** [obj/LogicLayer.o] Error 1
Makefile:55: recipe for target 'obj/Processor.o' failed
make: *** [obj/Processor.o] Error 1

FYI: I have a standalone Ramulator in separate folder because I have used it for some time, and it is still running fine.
For this pim simulator, i use the integrated package given, but I wonder why the Ramulator which come within, is giving the error when I run make -j.
Thanks in advance.

@rachmadvwp rachmadvwp changed the title Ramulator make errors Ramulator make -j errors Jun 15, 2019
@rachmadvwp
Copy link
Author

rachmadvwp commented Jun 17, 2019

Hi,
When I look back, when I run $ sh compile.sh, I got this notification:

make[1]: Leaving directory '/home/ramulator-pim/zsim-ramulator/libconfig'
scons: Reading SConscript files ...
Building opt zsim at build/opt
File "../../misc/list_syscalls.py", line 9
print '"' + '",\n"'.join(denseList) + '"'
^
SyntaxError: invalid syntax
scons: done reading SConscript files.
scons: Building targets ...
scons: `.' is up to date.
scons: done building targets.

I'm not sure whether it is related to the previous problem or no, but maybe useful to mention it here.
Thanks in advance. Best regards

@yacymelo
Copy link

Have you solved this problem? I think there may be a mistake in the makefile.

@rachmadvwp
Copy link
Author

rachmadvwp commented Jun 25, 2019

Not yet

Now it looks like the zsim-ramulator setup is fine, since I got:

...
scons: done building targets.

But, the make -j for ramulator still gives errors:

g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/Controller.o -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/Controller.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/LogicLayer.o -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/LogicLayer.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/Processor.o -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/Processor.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/MemoryFactory.o -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/MemoryFactory.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/Refresh.o -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/Refresh.cpp
In file included from src/Memory.h:7:0,
from src/Processor.h:6,
from src/Processor.cpp:1:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
#include "libdrampower/LibDRAMPower.h"
^
In file included from src/Refresh.cpp:13:0:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
#include "libdrampower/LibDRAMPower.h"
^
In file included from src/HMC_Controller.h:12:0,
from src/LogicLayer.h:6,
from src/LogicLayer.cpp:4:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
#include "libdrampower/LibDRAMPower.h"
^
In file included from src/Controller.cpp:1:0:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
#include "libdrampower/LibDRAMPower.h"
^
In file included from src/Memory.h:7:0,
from src/MemoryFactory.h:9,
from src/MemoryFactory.cpp:1:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
#include "libdrampower/LibDRAMPower.h"
^
compilation terminated.
compilation terminated.
compilation terminated.
compilation terminated.
compilation terminated.
Makefile:55: recipe for target 'obj/MemoryFactory.o' failed
make: *** [obj/MemoryFactory.o] Error 1
make: *** Waiting for unfinished jobs....
Makefile:55: recipe for target 'obj/Controller.o' failed
make: *** [obj/Controller.o] Error 1
Makefile:55: recipe for target 'obj/LogicLayer.o' failed
make: *** [obj/LogicLayer.o] Error 1
Makefile:55: recipe for target 'obj/Processor.o' failed
make: *** [obj/Processor.o] Error 1
Makefile:55: recipe for target 'obj/Refresh.o' failed
make: *** [obj/Refresh.o] Error 1

It looks like directory path issues and I have tried to solve them. But I ended up with other issue directing to missing include #include <xercesc/sax2/DefaultHandler.hpp> in XMLHandler.h.
Could you please give more hints on how to solve it? Thanks in advance

@Nitesh8998
Copy link

I have seen these files before, I suppose gem5 too has similar files -- libdrampower directory.
so I tried building it after including all the src files from the drampower /src directory of gem5.
I ended up getting a new error:

In file included from src/HMC_Controller.h:12:0,
                 from src/LogicLayer.h:6,
                 from src/LogicLayer.cpp:4:
src/Controller.h:31:37: fatal error: xmlparser/MemSpecParser.h: No such file or directory
 #include "xmlparser/MemSpecParser.h"
                                     ^
compilation terminated.
Makefile:55: recipe for target 'obj/LogicLayer.o' failed
make: *** [obj/LogicLayer.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from src/Memory.h:7:0,
                 from src/Processor.h:6,
                 from src/Processor.cpp:1:
src/Controller.h:31:37: fatal error: xmlparser/MemSpecParser.h: No such file or directory
 #include "xmlparser/MemSpecParser.h"
                                     ^
compilation terminated.
Makefile:55: recipe for target 'obj/Processor.o' failed
make: *** [obj/Processor.o] Error 1
In file included from src/Controller.cpp:1:0:
src/Controller.h:31:37: fatal error: xmlparser/MemSpecParser.h: No such file or directory
 #include "xmlparser/MemSpecParser.h"
                                     ^
compilation terminated.
In file included from src/Memory.h:7:0,
                 from src/MemoryFactory.h:9,
                 from src/MemoryFactory.cpp:1:
src/Controller.h:31:37: fatal error: xmlparser/MemSpecParser.h: No such file or directory
 #include "xmlparser/MemSpecParser.h"
                                     ^
compilation terminated.
Makefile:55: recipe for target 'obj/Controller.o' failed
make: *** [obj/Controller.o] Error 1
Makefile:55: recipe for target 'obj/MemoryFactory.o' failed
make: *** [obj/MemoryFactory.o] Error 1

Was the approach wrong?

If it's not, please help me with the location of the xmlparser/MemSpecParser.h file.

@yacymelo
Copy link

Please try to modify
CXXFLAGS := -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src into CXXFLAGS := -O3 -std=c++11 -g -w -Wall -I../common/DRAMPower/src -L../common/DRAMPower/src in ./ramulator/Makefile.

But I get a new error after running
./ramulator --config Configs/pim.cfg --disable-perf-scheduling true --mode=cpu --stats pim.stats --trace sample_traces/pim/pim-rodiniaBFS --core-org=outOrder --number-cores=4 --trace-format=zsim --split-trace=true terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<std::logic_error> >' what(): character conversion failed Aborted (core dumped) in the version of boost-1.58.

@pkarthik88
Copy link

Hello,
Nitesh and I have fixed the aforementioned compilation issues. We have raised a pull request. You can review and accept it if you find the changes to be appropriate.

-Prasanna Karthik

@soumitraghosh388
Copy link

Hi,

I have taken the latest code and tried to build it. For ramulator-pim build is successful but for ramulator its showing error -

make -j
g++ -O3 -std=c++11 -g -w -Wall -I../common/DRAMPower/src -L../common/DRAMPower/src -DRAMULATOR -o ramulator src/Main.cpp obj/WideIO2.o obj/LPDDR3.o obj/Controller.o obj/LPDDR4.o obj/HBM.o obj/MemoryFactory.o obj/LogicLayer.o obj/WideIO.o obj/Cache.o obj/ALDRAM.o obj/Config.o obj/TLDRAM.o obj/GDDR5.o obj/SALP.o obj/DDR4.o obj/DSARP.o obj/HMC.o obj/StatType.o obj/DDR3.o obj/Processor.o obj/Packet.o obj/Refresh.o -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/Main.cpp:17:10: fatal error: boost/program_options.hpp: No such file or directory #include <boost/program_options.hpp> ^~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. Makefile:44: recipe for target 'ramulator' failed make: *** [ramulator] Error 1
I have checked there is no directory called "boost" and no file named "program_options.hpp" anywhere. Please help.

@soumitraghosh388
Copy link

Hi,

I have taken the latest code and tried to build it. For ramulator-pim build is successful but for ramulator its showing error -

make -j
g++ -O3 -std=c++11 -g -w -Wall -I../common/DRAMPower/src -L../common/DRAMPower/src -DRAMULATOR -o ramulator src/Main.cpp obj/WideIO2.o obj/LPDDR3.o obj/Controller.o obj/LPDDR4.o obj/HBM.o obj/MemoryFactory.o obj/LogicLayer.o obj/WideIO.o obj/Cache.o obj/ALDRAM.o obj/Config.o obj/TLDRAM.o obj/GDDR5.o obj/SALP.o obj/DDR4.o obj/DSARP.o obj/HMC.o obj/StatType.o obj/DDR3.o obj/Processor.o obj/Packet.o obj/Refresh.o -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/Main.cpp:17:10: fatal error: boost/program_options.hpp: No such file or directory #include <boost/program_options.hpp> ^~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. Makefile:44: recipe for target 'ramulator' failed make: *** [ramulator] Error 1
I have checked there is no directory called "boost" and no file named "program_options.hpp" anywhere. Please help.

The issue is resolved - it needed boost installation. After I installed boost it has compiled successfully.

@GowthamD909
Copy link

Hi, I was trying out the simulator, but got errors when running make -j for Ramulator. Following are the errors:

$ make -j
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/Controller.o   -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/Controller.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/LogicLayer.o   -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/LogicLayer.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/Processor.o   -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/Processor.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/MemoryFactory.o   -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/MemoryFactory.cpp
g++-6 -O3 -std=c++11 -g -w -Wall -I../../common/DRAMPower/src -L../../common/DRAMPower/src -DRAMULATOR -c -o obj/Refresh.o   -lboost_program_options -ldrampowerxml -ldrampower -lxerces-c src/Refresh.cpp
In file included from src/Memory.h:7:0,
                 from src/MemoryFactory.h:9,
                 from src/MemoryFactory.cpp:1:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
 #include "libdrampower/LibDRAMPower.h"
                                       ^
compilation terminated.
In file included from src/Controller.cpp:1:0:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
 #include "libdrampower/LibDRAMPower.h"
                                       ^
compilation terminated.
In file included from src/Refresh.cpp:13:0:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
 #include "libdrampower/LibDRAMPower.h"
                                       ^
compilation terminated.
Makefile:55: recipe for target 'obj/MemoryFactory.o' failed
make: *** [obj/MemoryFactory.o] Error 1
make: *** Waiting for unfinished jobs....
Makefile:55: recipe for target 'obj/Controller.o' failed
make: *** [obj/Controller.o] Error 1
Makefile:55: recipe for target 'obj/Refresh.o' failed
make: *** [obj/Refresh.o] Error 1
In file included from src/HMC_Controller.h:12:0,
                 from src/LogicLayer.h:6,
                 from src/LogicLayer.cpp:4:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
 #include "libdrampower/LibDRAMPower.h"
                                       ^
compilation terminated.
In file included from src/Memory.h:7:0,
                 from src/Processor.h:6,
                 from src/Processor.cpp:1:
src/Controller.h:30:39: fatal error: libdrampower/LibDRAMPower.h: No such file or directory
 #include "libdrampower/LibDRAMPower.h"
                                       ^
compilation terminated.
Makefile:55: recipe for target 'obj/LogicLayer.o' failed
make: *** [obj/LogicLayer.o] Error 1
Makefile:55: recipe for target 'obj/Processor.o' failed
make: *** [obj/Processor.o] Error 1

FYI: I have a standalone Ramulator in separate folder because I have used it for some time, and it is still running fine. For this pim simulator, i use the integrated package given, but I wonder why the Ramulator which come within, is giving the error when I run make -j. Thanks in advance.

Is this issue solved , Im facing the same error with ramulation-pim , make -j command

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants