Changelog

From Msim

(Difference between revisions)
Jump to: navigation, search
 
(48 intermediate revisions not shown)
Line 1: Line 1:
-
This page details changes since the relase of Version 3.0 of M-sim. Information about the changes is provided in case mistakes were made and to provide greater understanding of the simulator.
+
This page details changes since the relase of Version 3.0 of M-sim. Information about the changes is provided in case mistakes were made and to provide greater understanding of the simulator. As of 9/8/09, versions will use a version number instead of a date.  
-
=== Upcoming ===
+
== Upcoming: Release 3.0.22 ==
-
A file handler class for both debugging as well as creating accurate and portable checkpoints.<br>
+
[[3.0.22]]<br>
-
[[New-Syscalls|Syscalls]] OSF_SYS_getgroups and OSF_SYS_mkdir are now supported.<br>
+
 
 +
== Release 3.0.21: Jan 18th 2016 ==
 +
Minor fixes to be compatible with gcc 4.9.2. Fix linkage in memory.h and lack of virtual destructor in dram.h.<br>
 +
 
 +
== Release 3.0.20: Sep 3rd 2010 ==
 +
Changes to cacti did not propagate to release version.<br>
 +
 
 +
== Release 3.0.19: Aug 4th 2010 ==
 +
[[3.0.19]]<br>
 +
 
 +
== Release 3.0.18: Jun 8th 2010 ==
 +
Fast forwarding has been updated. Values from the .arg file were not being respected by the code. Cleanup of the code for a nicer implementation. (sim-outorder.c: continue_fastfwd(...), changes in sim_main()).
 +
 
 +
== Release 3.0.17: Apr 21st 2010 ==
 +
options.c no longer uses strrchr (caused problems for g++ 4.4+).<br>
 +
rob.c provides more complete initialization for ROB_entry.<br>
 +
eio.c uses now fgets return value.<br>
 +
loader.c now (by default) now reduces the number of entries in envp and uses some pre-determined values. Disable "ENVP_REDUCE" and "FORCE_CONSISTENT" in loader.c to disable this. This provides for more deterministic results.<br>
 +
dlite.c fixed to avoid complaints from g++ 4.4+. This included some changes in pointer usage. Some char[] replaced with std::string.<br>
 +
symbol.c fixed to avoid complaints from g++ 4.4+ regarding usage of fread.<br>
 +
sysprobe.c fixed to use %lu when referring to sizeof.<br>
 +
mystrrchr has been removed.<br>
 +
Bug report: Benchmarks that use getdirentries on an nfs may experience a read error.<br>
 +
 
 +
== Release 3.0.16b: Mar 23st 2010 ==
 +
Added "break;" to the end of the SSI_IEEE_IP_CONTROL switch case for getsysinfo in syscall.c. This was incorrectly causing this system call option to be reported as unsupported.
 +
 
 +
== Release 3.0.16: Mar 21st 2010 ==
 +
Added some conditional compilation (using __LP64__) to deal with compilation on 32-bit machines that can not handle large constants. For the same reason this was done, a warning message has not been added to indicate this.<br>
 +
 
 +
== Release 3.0.15: Feb 19th 2010 ==
 +
[[3.0.15|View changes here.]]<br>
 +
 
 +
== Release 3.0.14: Feb 1st 2010 ==
 +
[[3.0.14|View changes here.]]<br>
 +
 
 +
== Release 3.0.13: Dec 8th 2009 ==
 +
[[3.0.13#EIO_4|New EIO version]].<br>
 +
[[3.0.13#New-Syscalls|Syscalls]]<br>
 +
[[Dynamic Loading]]<br>
 +
 
 +
== Release 3.0.12: Oct 27th 2009 ==
 +
Various [[3.0.10#Floating Point|floating point]] issues fixed.<br>
 +
Removal of argc parameter in [[3.0.10#Argc|ld_load_prog]] (argv is already a vector and argc can be extracted from it).<br>
 +
 
 +
== Release 3.0.11: Oct 5th 2009 ==
 +
[[Rollback]] overhaul - Severe problems (update recommended)<br>
 +
 
 +
== Release 3.0.10: Sep 19th 2009 ==
 +
[[Rollback]] Fix - Severe problem (update recommended)<br>
 +
[[Command Line Args#Quote Problem|Fixed quote handling in .arg files]]<br>
 +
[[TIOCISATTY|ioctl(TIOCISATTY)]] didn't work as expected and is now fixed.<br>
 +
 
 +
== Release 3.0.09: July 20th 2009 ==
 +
[[Store Conditional Bug|Store Conditional]] did not set its physical register to REG_WB nor set ready times for the result.<br>
 +
A [[file handler|file handler]] for both debugging as well as creating accurate and portable checkpoints.<br>
 +
[[07-20-09-New-Syscalls|Syscalls]] getgroups, mkdir, readlink, ioctl(winsize), ioctl(istty) are now supported. Kill is very partially supported.<br>
[[Conditional Memory|Conditional Memory]] support is being added.<br>
[[Conditional Memory|Conditional Memory]] support is being added.<br>
[[Issue_Inorder#Fixes|Issue_Inorder]] has been fixed.<br>
[[Issue_Inorder#Fixes|Issue_Inorder]] has been fixed.<br>
Line 9: Line 65:
[[07-13-09-Regs_t|regs_t]] now supports input operator for replacing libexo (regs.[hc]).<br>
[[07-13-09-Regs_t|regs_t]] now supports input operator for replacing libexo (regs.[hc]).<br>
[[07-13-09-Mem_t|mem_t]] now supports input operator for replacing libexo (memory.[hc]).<br>
[[07-13-09-Mem_t|mem_t]] now supports input operator for replacing libexo (memory.[hc]).<br>
 +
[[07-13-09-Cache|Tagset error]] has been corrected.<br>
 +
[[07-13-09-Redirection|Redirection]] of stderr has been updated for a few potential redirection operators.<br>
 +
[[LDS#Correction|Incorrect single precision handling]] through the LDS instruction has been dealt with.<br>
 +
[[07-17-09_Fetch|Fetch Cache Misses]] were not stopping the current fetch.<br>
-
== June 16th 2009 ==
+
== Release 3.0.08: June 16th 2009 ==
[[06-16-09-Machine_Def|Machine.def]] updates (RPCC, STQ_C, STL_C, Comments).<br>
[[06-16-09-Machine_Def|Machine.def]] updates (RPCC, STQ_C, STL_C, Comments).<br>
[[06-16-09-Loader|Loader]] issues related to gcc 4.3.2 support.<br>
[[06-16-09-Loader|Loader]] issues related to gcc 4.3.2 support.<br>
Line 26: Line 86:
Corrected incorrect == instead of != in [[06-16-09-Syscalls#OSF_SYS_MMAP|mmap]]. Improved overall behavior but still not full support (syscall.c).<br>
Corrected incorrect == instead of != in [[06-16-09-Syscalls#OSF_SYS_MMAP|mmap]]. Improved overall behavior but still not full support (syscall.c).<br>
-
== May 12th 2009 ==
+
== Release 3.0.07: May 12th 2009 ==
[[05-12-09-Write_Buffer|Write Buffer]] emergency patch issued. Could get caught in an infinite loop trying to remove elements from an empty write buffer.
[[05-12-09-Write_Buffer|Write Buffer]] emergency patch issued. Could get caught in an infinite loop trying to remove elements from an empty write buffer.
-
== May 5th 2009 ==
+
== Release 3.0.06: May 5th 2009 ==
[[05-05-09-Cache|Cache]] fixes made. Correction made to the usage of bus_free. A write buffer (from processor to first level cache) is now implemented per core - this resolves the bzip2 and gzip problem without having to use the "read data block" hack.
[[05-05-09-Cache|Cache]] fixes made. Correction made to the usage of bus_free. A write buffer (from processor to first level cache) is now implemented per core - this resolves the bzip2 and gzip problem without having to use the "read data block" hack.
-
== April 24th 2009 ==
+
== Release 3.0.05: April 24th 2009 ==
Main.c now properly includes fstream (#include<fstream>).  
Main.c now properly includes fstream (#include<fstream>).  
-
== April 20th 2009 ==
+
== Release 3.0.04: April 20th 2009 ==
[[04-20-09-Num_Cores|Num_Cores]] not being handled correctly through a config file has been fixed. Also, MAX_LINE_ARGS in options.c has been increased to handle the large number of options required for CMP.<br>
[[04-20-09-Num_Cores|Num_Cores]] not being handled correctly through a config file has been fixed. Also, MAX_LINE_ARGS in options.c has been increased to handle the large number of options required for CMP.<br>
-
== April 4th 2009 ==
+
== Release 3.0.03: April 4th 2009 ==
[[04-04-09-Options_C|Options.c]] is updated to handle newly created config files from dumpconfig. Minor code adjustment.<br>
[[04-04-09-Options_C|Options.c]] is updated to handle newly created config files from dumpconfig. Minor code adjustment.<br>
[[04-04-09-Dram|Dram]] bug with accesses across two banks is fixed, other minor tweaks.<br>
[[04-04-09-Dram|Dram]] bug with accesses across two banks is fixed, other minor tweaks.<br>
Line 46: Line 106:
[[04-04-09-Opti|Optimizations]] done in sim-outorder.c.<br>
[[04-04-09-Opti|Optimizations]] done in sim-outorder.c.<br>
-
== March 6th 2009 ==
+
== Release 3.0.02: March 6th 2009 ==
Added -max:cycles support - would be nice to avoid the check each cycle though.<br>
Added -max:cycles support - would be nice to avoid the check each cycle though.<br>
[[Dram|Dram]] modeling support is now available - the default is the old chunk style method.<br>
[[Dram|Dram]] modeling support is now available - the default is the old chunk style method.<br>
Memory bus width is now 4 bytes by default.
Memory bus width is now 4 bytes by default.
-
== February 12th 2009 ==
+
== Release 3.0.01: February 12th 2009 ==
mem_access_latency (defined in cmp.h) now takes 4 parameters (address, size, when, context_id) compared to just size. This is intended for DRAM access modeling. This affects cmp.c, cmp.h and sim-outorder.c<br>
mem_access_latency (defined in cmp.h) now takes 4 parameters (address, size, when, context_id) compared to just size. This is intended for DRAM access modeling. This affects cmp.c, cmp.h and sim-outorder.c<br>
OSF_SYS_write is removed from machine.h and replaced in syscall.c<br>
OSF_SYS_write is removed from machine.h and replaced in syscall.c<br>
[[02-12-09-Opti|Optimization]]: When checking the LSQ for a store forward, the for loop was not used effectively.<br>
[[02-12-09-Opti|Optimization]]: When checking the LSQ for a store forward, the for loop was not used effectively.<br>
-
== January 24th 2009 ==
+
== Release 3.0.00: January 24th 2009 ==
Trivial: Removed commented out lines from main.c<br>
Trivial: Removed commented out lines from main.c<br>
Trivial: Re-enabled fclose(outfile) in context desructor in smt.c - fixes ~1K mem leak<br>
Trivial: Re-enabled fclose(outfile) in context desructor in smt.c - fixes ~1K mem leak<br>
[[01-24-09-Bug 1|Bug 1]]: Fixed "issued inst not spec ready" for floating point insts (actually affected all, but only mattered in floating point cases)<br>
[[01-24-09-Bug 1|Bug 1]]: Fixed "issued inst not spec ready" for floating point insts (actually affected all, but only mattered in floating point cases)<br>
[[01-24-09-Bug 2|Bug 2]]: Commit now looks at the correct list of remaining contexts.<br>
[[01-24-09-Bug 2|Bug 2]]: Commit now looks at the correct list of remaining contexts.<br>

Latest revision as of 17:22, 18 January 2016

This page details changes since the relase of Version 3.0 of M-sim. Information about the changes is provided in case mistakes were made and to provide greater understanding of the simulator. As of 9/8/09, versions will use a version number instead of a date.

Contents

Upcoming: Release 3.0.22

3.0.22

Release 3.0.21: Jan 18th 2016

Minor fixes to be compatible with gcc 4.9.2. Fix linkage in memory.h and lack of virtual destructor in dram.h.

Release 3.0.20: Sep 3rd 2010

Changes to cacti did not propagate to release version.

Release 3.0.19: Aug 4th 2010

3.0.19

Release 3.0.18: Jun 8th 2010

Fast forwarding has been updated. Values from the .arg file were not being respected by the code. Cleanup of the code for a nicer implementation. (sim-outorder.c: continue_fastfwd(...), changes in sim_main()).

Release 3.0.17: Apr 21st 2010

options.c no longer uses strrchr (caused problems for g++ 4.4+).
rob.c provides more complete initialization for ROB_entry.
eio.c uses now fgets return value.
loader.c now (by default) now reduces the number of entries in envp and uses some pre-determined values. Disable "ENVP_REDUCE"