Hello, Have you compiled your binary statically? I believe dynamically linked executables will only work if the host and the guest are *exactly* the same (e.g., both x86-64 in this case).
Jason On Mon, May 14, 2018 at 7:10 AM Øyvind Harboe <[email protected]> wrote: > I'm getting a "bad_alloc" from the config/examples/se.py script when I try > to run the small C application below that calls clock(). > > Any pointers on what's going on would be most welcome. > > Please find a transcript of how I've tested: > > I first test with 64 bit, then with 32 bit x86. 64 bit x86 works fine. > > $ cd gem5 > $ git describe --tags > copyright_update-7291-gce00e6042 > $ cat test.c > #include <time.h> > > int main(int argc, char **argv) > { > clock(); > return 0; > } > $ gcc ./test.c > $ build/X86/gem5.opt configs/example/se.py -c ./a.out > gem5 Simulator System. http://gem5.org > gem5 is copyrighted software; use the --copyright option for details. > > gem5 compiled May 14 2018 14:59:03 > gem5 started May 14 2018 16:00:16 > gem5 executing on davos, pid 31640 > command line: build/X86/gem5.opt configs/example/se.py -c ./a.out > > Global frequency set at 1000000000000 ticks per second > warn: DRAM device capacity (8192 Mbytes) does not match the address range > assigned (512 Mbytes) > 0: system.remote_gdb: listening for remote gdb on port 7000 > **** REAL SIMULATION **** > info: Entering event queue @ 0. Starting simulation... > warn: ignoring syscall access(...) > warn: ignoring syscall access(...) > warn: ignoring syscall access(...) > warn: ignoring syscall mprotect(...) > warn: ignoring syscall mprotect(...) > warn: ignoring syscall mprotect(...) > warn: ignoring syscall mprotect(...) > Exiting @ tick 91225000 because exiting with last active thread context > > > $ gcc -m32 ./test.c > $ build/X86/gem5.opt configs/example/se.py -c ./a.out > gem5 Simulator System. http://gem5.org > gem5 is copyrighted software; use the --copyright option for details. > > gem5 compiled May 14 2018 14:59:03 > gem5 started May 14 2018 16:00:23 > gem5 executing on davos, pid 31648 > command line: build/X86/gem5.opt configs/example/se.py -c ./a.out > > Global frequency set at 1000000000000 ticks per second > warn: DRAM device capacity (8192 Mbytes) does not match the address range > assigned (512 Mbytes) > 0: system.remote_gdb: listening for remote gdb on port 7000 > **** REAL SIMULATION **** > info: Entering event queue @ 0. Starting simulation... > warn: ignoring syscall access(...) > warn: ignoring syscall access(...) > warn: ignoring syscall access(...) > warn: ignoring syscall mprotect(...) > warn: ignoring syscall mprotect(...) > warn: ignoring syscall mprotect(...) > warn: ignoring syscall mprotect(...) > Traceback (most recent call last): > File "<string>", line 1, in <module> > File "/home/oyvind/gem5/src/python/m5/main.py", line 435, in main > exec filecode in scope > File "configs/example/se.py", line 286, in <module> > Simulation.run(options, root, system, FutureClass) > File "/home/oyvind/gem5/configs/common/Simulation.py", line 712, in run > exit_event = benchCheckpoints(options, maxtick, cptdir) > File "/home/oyvind/gem5/configs/common/Simulation.py", line 268, in > benchCheckpoints > exit_event = m5.simulate(maxtick - m5.curTick()) > File "/home/oyvind/gem5/src/python/m5/simulate.py", line 176, in simulate > return _m5.event.simulate(*args, **kwargs) > MemoryError: std::bad_alloc > > > > -- > Øyvind Harboe, General Manager, Zylin AS, +47 917 86 146 > _______________________________________________ > gem5-users mailing list > [email protected] > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
_______________________________________________ gem5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
