[sv-ec] 0003139: Need to document which API calls affect random stability

From: Alsop, Thomas R <thomas.r.alsop@intel.com>
Date: Wed Aug 07 2013 - 11:18:27 PDT
Hi sv-ec team,

The UVM committee is trying to document the cases where API's either protect or do not protect against random instability.  In order to do this we need a list of constructs that will change the value of the random state.   The mantis ticket on this is 3139.  In our discussions today, we noted that object construction and forking of processes will impact rand state.  Are there other cases that you know of that we need to look at?

Thanks, -Tom


http://www.eda.org/svdb/view.php?id=3139

The Reference Manual needs to document which methods affect random stability so that the user can take the necessary steps to ensure random stability where they need it.

For example, since set_config_* constructs a configuration object, is uses up a RNG for the current thread. For the user to code around that, the need to do something like

process p;
string s;
      p = process::self();
      s = p.get_randstate();
      set_config_int(...);
      p.set_randstate(s);

If the standard say that an API method does not affect random stability, then the implementer will have to do something similar inside the method to insure that guarantee.

Dave

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Wed Aug 7 11:19:14 2013

This archive was generated by hypermail 2.1.8 : Wed Aug 07 2013 - 11:19:36 PDT