Changes between Version 6 and Version 7 of Things To Do


Ignore:
Timestamp:
01/28/10 22:46:23 (16 years ago)
Author:
Stephen Siegel
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Things To Do

    v6 v7  
    4444    * Interestingly, the parallel version is not necessarily correct when the number of cells is less than the number of processes.   It is possible for there to be a process  "gap" between two consecutive cells.  But you need at least 5 procs in order to see this.   Added {{{Diffusion_5_2_5_Test.java}}} to demonstrate this.  The fix: just change the way the neighbor ranks are computed (left/right, upper/lower).  These should be computed using the {{{owner}}} function to find out the rank of the process that owns the row next to you, instead of just assuming this will be your rank +/- 1.
    4545
     46== Parameters ==
     47
     48We need a notion of a ''parametrized model''.   So we only have to write a single model {{{laplace}}} (for example), and not {{{laplace_2_2}}}, {{{laplace_2_3}}}, etc.
     49
     50Should the parameters be dealt with like pre-processor directives ({{{#define N 3}}})?
     51
     52A parametrized model should basically be a function which takes some parameter values and returns a {{{ModelIF}}}.    It could have a method
     53
     54{{{ModelIF instantiate(Map<P,V> parameterValues);}}}
     55
     56or something like that, where the map assigns a value to each parameter.  The MiniMP representation might look something like:
     57
     58{{{
     59parameter int N = 7; /* default value */
     60parameter bool BLACK;
     61#ifdef BLACK
     62...
     63#endif
     64}}}
    4665
    4766
     67