Difference between revisions of "Atomic K-Mer"
Jump to navigation
Jump to search
(Created page with "=Motivation= With many more buckets than processors there is reason to be optimistic. Dramatic performance improvements can be achieved by using atomics to ensure thread safe...") |
|||
Line 4: | Line 4: | ||
=Background= | =Background= | ||
[https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicReferenceArray.html AtomicReferenceArray] | [https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicReferenceArray.html AtomicReferenceArray] | ||
+ | |||
[http://tutorials.jenkov.com/java-concurrency/volatile.html volatile] | [http://tutorials.jenkov.com/java-concurrency/volatile.html volatile] | ||
Latest revision as of 15:19, 25 April 2018
Contents
Motivation
With many more buckets than processors there is reason to be optimistic. Dramatic performance improvements can be achieved by using atomics to ensure thread safety instead of locks.
Background
Code To Implement
class: | OptimisticConcurrencyKMerCounter.java | |
methods: | parse | |
package: | kmer.extracredit | |
source folder: | student/src/main/java |
method: public KMerCount parse(List<byte[]> sequences, int k)
(parallel implementation required)
Testing Your Solution
Correctness
class: | OpenEndedKMerTestSuite.java | |
package: | kmer.extracredit | |
source folder: | testing/src/test/java |
Performance
class: | ExtraCreditKMerTiming.java | |
package: | kmer.extracredit | |
source folder: | src/main/java |