Fuzzy Iterative Averaging Assignment

From CSE231 Wiki
Jump to navigation Jump to search

Previous Studio

Iterative_Averaging

(Optional) Code to Implement

PointToPointPhased

class: PointToPointPhasedParallelIterativeAverager.java Java.png
methods: iterativelyAverage
package: iterativeaveraging.challenge
source folder: student/src/main/java

FuzzyPhased

class: FuzzyPhasedParallelIterativeAverager.java Java.png
methods: iterativelyAverage
package: iterativeaveraging.fuzzy.challenge
source folder: student/src/main/java

method: public double[] iterativelyAverage(double[] originalArray, int iterationCount) Parallel.svg (parallel implementation required)

Which indices must be complete before neighboring tasks can proceed? Which indices have more flexibility?

create phaser
register phaser for each task
parallel loop
    sequential loop
        shared work
        arrive on phaser
        local work
        await advance (must specify the phase) on phaser

FuzzyPointToPointPhased

class: FuzzyPointToPointPhasedParallelIterativeAverager.java Java.png
methods: iterativelyAverage
package: iterativeaveraging.fuzzy.challenge
source folder: student/src/main/java

method: public double[] iterativelyAverage(double[] originalArray, int iterationCount) Parallel.svg (parallel implementation required)

Testing Your Solution

Correctness

class: FuzzyIterativeAveragerTestSuite.java Junit.png
package: iterativeaveraging.fuzzy.challenge
source folder: testing/src/test/java
class: FuzzyPointToPointIterativeAveragerTestSuite.java Junit.png
package: iterativeaveraging.fuzzy.challenge
source folder: testing/src/test/java

Performance

class: IterativeAveragingTiming.java Noun Project stopwatch icon 386232 cc.svg
package: iterativeaveraging.timing
source folder: src/main/java