Re: [gem5-users] EmulatedDriver in SE mode: initialize the driver

2018-08-09 Thread Jason Lowe-Power
Hi Joao,

I'm not sure exactly what the problem is because I haven't used this code
in quite some time. However, I would start by making sure the code here (
https://gem5.googlesource.com/public/gem5/+/master/src/sim/syscall_emul.hh#691)
is executing. That's what's going to call your emulated driver's "open"
function.

You may also want to use the "SyscallVerbose" DPRINTF flag.

Jason

On Tue, Aug 7, 2018 at 5:14 AM João Miguel Morgado Pereira Vieira <
joaomiguelvie...@tecnico.ulisboa.pt> wrote:

> Hi guys,
>
> I am just starting using gem5 to integrate an accelerator with an ARM
> core. My work is inspired by powerjg’s
>  accelerator,
> and one of the things that he does to allow communication between the
> processor and the accelerator is to implement an EmulatedDriver. The
> EmulatedDriver is needed to have information about the ThreadContext, that
> is required to perform address translation from the accelerator side. The
> driver requires two methods to be implemented: open (that initializes the
> ThreadContext) and ioctl (that I am not going to use). I also need to do
> that, however I cannot manage to pass the ThreadContext to the accelerator
> (that is set when the method ::open() is called upon the driver object).
>
> I was wondering if I have to initialize something from the software side
> (the program running in the ARM core), but unfortunately I cannot find any
> relevant documentation about this… I am using the SE mode. Do some of you
> guys ever came across such a problem?
>
> Thanks in advance,
>
> Best,
> Joao Vieira
>
> ___
> gem5-users mailing list
> gem5-users@gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

[gem5-users] Checkpoint Creation in SE mode

2018-08-09 Thread Sakshi Tiwari
Hi,

I am running gem5 in se mode and I am using SPEC2006 test suite for my
experiments. To run the representative section of each of the SPEC
benchmark I created simpoints. I have a few questions now:

1) Is it necessary to create checkpoints? Or is there any other way to
simply fast forward the simulation on a multi-core system?

2) If it is necessary to create checkpoints then can someone please confirm
if the following commands are correct. I am able to follow step (a) and (b)
but most of the SPEC benchmarks are failing when I run step (c).
 (a) Create checkpoint for each of the simpoint:
build/X86/gem5.opt configs/example/se.py
--take-simpoint-checkpoint=m5out/simpoints/libq/libq.simpoint,m5out/simpoints/libq/libq.weight,300,1000
--cmd="benchmarks/ben/libquantum_base.amd64-m64-gcc43-nn" --options="1397
8" --cpu-type=DerivO3CPU --l1d_size=32kB --l1i_size=32kB --l2_size=256kB
--caches --l2cache --l3cache --l3_size=8MB --num-cpus=1 --mem-size=8192MB
(b) Run checkpoint_aggregator script to aggregate the checkpoints which
would run on 4 different cores (I am running the same checkpoint on all the
4 cores):
python util/checkpoint_aggregator.py -o
/home/sakshi/workspace2/gem5-63325e5b0a9d-modified/m5out/libq_cpt/cpt.None.4
-c --cpts
/home/sakshi/workspace2/gem5-63325e5b0a9d-modified/m5out/libq_cpt/cpt.simpoint_03_inst_11_weight_0.069900_interval_300_warmup_1000/
/home/sakshi/workspace2/gem5-63325e5b0a9d-modified/m5out/libq_cpt/cpt.simpoint_03_inst_11_weight_0.069900_interval_300_warmup_1000/
/home/sakshi/workspace2/gem5-63325e5b0a9d-modified/m5out/libq_cpt/cpt.simpoint_03_inst_11_weight_0.069900_interval_300_warmup_1000/
/home/sakshi/workspace2/gem5-63325e5b0a9d-modified/m5out/libq_cpt/cpt.simpoint_03_inst_11_weight_0.069900_interval_300_warmup_1000/
--memory-size 8589934592
(c) Run the simulation in atomic mode and restore it to the normal mode
(i.e. Timing+O3) from the aggregated checkpoint:
build/X86/gem5.opt configs/example/se.py --at-instruction
--checkpoint-restore=4 --restore-with-cpu=detailed --checkpoint-dir
/home/sakshi/workspace2/gem5-63325e5b0a9d-modified/m5out/libq_cpt/
--cmd="benchmarks/ben/libquantum_base.amd64-m64-gcc43-nn;benchmarks/ben/libquantum_base.amd64-m64-gcc43-nn;benchmarks/ben/libquantum_base.amd64-m64-gcc43-nn;benchmarks/ben/libquantum_base.amd64-m64-gcc43-nn"
--options="1397 8;1397 8;1397 8;1397 8" --cpu-type=DerivO3CPU
--l1d_size=32kB --l1i_size=32kB --l2_size=256kB --caches --l2cache
--l3cache --l3_size=8MB --num-cpus=4 --mem-size=8192MB -I 1

Regards,
Sakshi
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

[gem5-users] Checkpoints Available for SPEC2006 Benchmarks

2018-08-09 Thread Sakshi Tiwari
Hi,
Are there any checkpoints available for the SPEC2006 benchmarks (with the
ref input set) which can be easily used with gem5?

Regards,
Sakshi
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users