Skip navigation links

Package hw5

Homework 5 assignment: Do-It-Yourself.

See: Description

Package hw5 Description

Homework 5 assignment: Do-It-Yourself. In this assignment, you will apply the parallel programming concepts that you've learned in the Habanero-Java library and apply them to Java's built-in classes.

This entire assignment is test-based. That means that after you finish each part of this assignment, you can (and should) test it with a JUnit test case. These tests can be found in the hw5.test subpackages. You should not modify any of the test files, but feel free to take a look at them and try to understand what they're doing. Note that passing a test does not guarantee that your code is bug-free; the tests are there as a guide.

Here are the parts of this assignment that you need to complete in the order that you should complete and test them:

  1. Nucleobase counting
    1. NucleobaseCounter (test with ASequentialNucleobaseCountTest)
    2. Slice (test with BSliceTest)
    3. ThreadNucleobaseCounter (test with CThreadNucleobaseCountTest)
    4. ExecutorNucleobaseCounter (test with DExecutorNucleobaseCountTest)
  2. Quicksort
    1. Quicksorter (test with ASequentialQuicksortTest)
    2. ThreadQuicksorter (test with BThreadQuicksortTest)
    3. ExecutorQuicksorter (test with CExecutorTest)
  3. Write your own finish and async
    1. ThreadFramework and ThreadFinishContext (test with AThreadFrameworkAsyncFinishTest)
    2. ExecutorFramework and ExecutorFinishContest (test with BExecutorFrameworkAsyncFinishTest)
    3. FinishContext (test with CFrameworkForAsyncTest)
    4. Framework (test with DFrameworkForAllTest)
  4. Use your own finish and async
    1. FrameworkNucleobaseCounter (test with AFrameworkNucleobaseCounterTest)
    2. FrameworkQuicksorter (test with BFrameworkQuicksortTest)
  5. Jalapeno
Dennis Cosgrove (, Finn Voichick
Skip navigation links