Difference between revisions of "Iced Cakes Pipeline"
Jump to navigation
Jump to search
Line 20: | Line 20: | ||
# What are my tasks? | # What are my tasks? | ||
# What work does each task need to do? | # What work does each task need to do? | ||
− | # | + | # What, if anything, does each task depend upon? That is: what does each task have to wait for before it may proceed? |
=Code To Implement= | =Code To Implement= |
Revision as of 08:18, 2 April 2018
Contents
Motivation
Pipelines can increase throughput when processing a stream of data.
Backgroud
Code To Use
Cakes
Looping
Phasers
class Phaser (Guide to the Java Phaser)
Questions To Ask Yourself
- What are my tasks?
- What work does each task need to do?
- What, if anything, does each task depend upon? That is: what does each task have to wait for before it may proceed?
Code To Implement
class: | CakePipeline.java | |
methods: | mixBakeAndIceCakes | |
package: | pipeline.cake.studio | |
source folder: | student/src/main/java |
method: public static IcedCake[] mixBakeAndIceCakes(Mixer mixer, Baker baker, Icer icer, int cakeCount)
(parallel implementation required)
Testing Your Solution
Visualization
class: | CakePipelineVizApp.java | VIZ |
package: | leggedrace.viz | |
source folder: | student/src//java |
Click on the buttons on the right to visualize your solutions when you have implemented them.
Correctness
class: | CakePipelineTestSuite.java | |
package: | pipeline.cake.viz | |
source folder: | testing/src/test/java |
class: | PartialCreditLeggedRaceTestSuite.java | |
package: | leggedrace.studio | |
source folder: | testing/src/test/java |
When you are passing the tests and your visualization looks good, demo it to an instructor.