ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/test/loops/Integrate.java
(Generate patch)

Comparing jsr166/src/test/loops/Integrate.java (file contents):
Revision 1.9 by jsr166, Mon Sep 20 20:42:37 2010 UTC vs.
Revision 1.17 by jsr166, Thu Jan 15 18:34:19 2015 UTC

# Line 1 | Line 1
1   /*
2   * Written by Doug Lea with assistance from members of JCP JSR-166
3   * Expert Group and released to the public domain, as explained at
4 < * http://creativecommons.org/licenses/publicdomain
4 > * http://creativecommons.org/publicdomain/zero/1.0/
5   */
6  
7   import java.util.concurrent.*;
# Line 11 | Line 11 | import java.util.concurrent.*;
11   * This version uses a simplified hardwired function.  Inspired by a
12   * <A href="http://www.cs.uga.edu/~dkl/filaments/dist.html">
13   * Filaments</A> demo program.
14 *
14   */
15   public final class Integrate {
16  
# Line 25 | Line 24 | public final class Integrate {
24      static int forkPolicy = DYNAMIC;
25      static String forkArg = "dynamic";
26  
27 <    // the function to integrate
28 <    static double computeFunction(double x)  {
27 >    /** the function to integrate */
28 >    static double computeFunction(double x) {
29          return (x * x + 1.0) * x;
30      }
31  
32      static final double start = 0.0;
33      static final double end = 1536.0;
34 <    /*
34 >
35 >    /**
36       * The number of recursive calls for
37       * integrate from start to end.
38       * (Empirically determined)
# Line 63 | Line 63 | public final class Integrate {
63      }
64  
65      static void oneTest(int procs) {
66 <        ForkJoinPool g = procs == 0? new ForkJoinPool() :
66 >        ForkJoinPool g = (procs == 0) ? new ForkJoinPool() :
67              new ForkJoinPool(procs);
68          System.out.println("Number of procs=" + g.getParallelism());
69          System.out.println("Integrating from " + start + " to " + end +
# Line 90 | Line 90 | public final class Integrate {
90          g.shutdown();
91      }
92  
93
93      // Sequential version
94      static final class SQuad extends RecursiveAction {
95          static double computeArea(ForkJoinPool pool, double l, double r) {
# Line 169 | Line 168 | public final class Integrate {
168              q.fork();
169              ar = recEval(c, r, fc, fr, ar);
170              if (!q.tryUnfork()) {
172                //                q.quietlyHelpJoin();
171                  q.quietlyJoin();
172                  return ar + q.area;
173              }
# Line 218 | Line 216 | public final class Integrate {
216                  (q = new DQuad(l, c, al)).fork();
217              ar = recEval(c, r, fc, fr, ar);
218              if (q != null && !q.tryUnfork()) {
221                //                q.quietlyHelpJoin();
219                  q.quietlyJoin();
220                  return ar + q.area;
221              }
# Line 228 | Line 225 | public final class Integrate {
225      }
226  
227   }
231
232

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines