Copy env path in bson_env

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Fix a typo in qemu sconstruct

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Fix small bug in creating simpoint

simpoint at 0 instruction count was causing issues which is now resolved.

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Merge branch 'features' of github.com:avadhpatel/marss into features
Added option -n --num-insts to run_bench.py

Instead of specifying multiple disk images in configuration now run_bench.py
uses -snapshot qemu option by default and provides new cmd-line option to
specify number of simulation instances to run in parallel.

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Changed from SafeConfigParser to ConfigParser

To enable recursive interpolation. This helps a lot to reduce the size of run
configuration file.

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Added recursive str interpolation support to simconfig

In run_bench.py now users can specify simconfig parameters in cfg files with
multiple string interpolation support.

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Optimized request handling in cache controller

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Check for successful import of Graphs module in mstats

Added a check while importing Graphs module to mstats.
Also disabled graph support when Graphs is not imported.

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Added a dependency check in access_fast_path

To be more accurate if there is any pending request for same line in L1 cache
from lower cache or other L1 cache then do not perform fast path access.

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Code improvement - variables/function renamed

Following variables are renamed:
* total_user_insns_committed -> total_insns_committed
* stop_at_user_insns -> stop_at_insns
* stop_at_user_insns_relative -> stop_at_insns_relative
* last_printed_status_at_user_insn -> last_printed_status_at_insn

Following function is renamed:
* Context::copy_from_user -> Context::copy_from_vm

Added a check for python version requirement.

Fix a typo in default.conf file.

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Fix: Switch to simulation now follows immediately after ptlcall
Merge pull request #10 from stefanneumann/features

Fix: Switch to simulation now follows immediately after ptlcall
New Feature: Fast-Fwd N instruction before starting simulation

To fast-forward by N number of instructions specify follwoing simconfig option:

    -fast-fwd-insns N

This will emulate N number of instructions and then switch to simulation mode.

For multicore mode N number of instructions are equally divided between
existiting cores in system.  If core is halted/idle mode then its allocated
instructions will be shared among other cores that are active.

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Bug fix in reallocating dnyarray data

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Merge branch 'features' of github.com:avadhpatel/marss into features
Disabled timer offset update on direct simulation runs

When user load checkpoint and directly start simulation mode then by default
qemu was updating clock ticks offset with host ticks.  This patch disables
updating clock offset when '-run' is specified in simconfig file.  This makes
sure that we start simulation with same clock offset when checkpoint was
created.

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Merge branch 'features' into qemu
New Options in Fast-Fowarding support

New simconfig options added:

* -fast-fwd-user-insns N : Fast forward N user level instructions
* -fast-fwd-checkpoint CHK_NAME : Create a checkpoint after fast-fwding

Signed-off-by: Avadh Patel <avadh4all@gmail.com>
Merge branch 'features' into qemu