-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.gem5.org/r/2220/
-----------------------------------------------------------

(Updated April 3, 2014, 11:44 p.m.)


Review request for Default.


Changes
-------

Applied suggested changes. This change no longer breaks old checkpoints, but 
having the correct block-size serialized in the checkpoint will not cause 
surprises when changing the block-size; I assume the user will be aware of 
potential issues when they see the unmissable outdated-checkpoint warning.

Tested again: migrating old checkpoint, take checkpoint, restore checkpoint.


Repository: gem5


Description (updated)
-------

ruby: recorder: Fix (de-)serializing with different cache block-sizes

Upon aggregating records, serialize system's cache-block size, as the
cache-block size can be different when restoring from a checkpoint. This way,
we can correctly read all records when restoring from a checkpoints, even if
the cache-block size is different.

Note, that it is only possible to restore from a checkpoint if the
desired cache-block size is smaller or equal to the cache-block size
when the checkpoint was taken; we can split one larger request into
multiple small ones, but it is not reliable to do the opposite.


Diffs (updated)
-----

  src/mem/ruby/recorder/CacheRecorder.cc 52c552138ba1 
  src/mem/ruby/recorder/CacheRecorder.hh 52c552138ba1 
  src/mem/ruby/system/System.cc 52c552138ba1 
  src/sim/serialize.hh 52c552138ba1 
  util/cpt_upgrader.py 52c552138ba1 

Diff: http://reviews.gem5.org/r/2220/diff/


Testing
-------

Created a Ruby checkpoint with the default config. Restore from checkpoint with 
default config (64 byte block-size) and varying block-sizes (32, 16, 8).


Thanks,

Marco Elver

_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to