-
Notifications
You must be signed in to change notification settings - Fork 298
khmer multiprocessing VS test/simplify (seqan) #656
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
camillescott
wants to merge
119
commits into
test/simplify
Choose a base branch
from
feature/threading_seqan
base: test/simplify
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
119 commits
Select commit
Hold shift + click to select a range
9ad1353
Initial naive openmp test
camillescott 5638bb1
Add extra_link_args for -lgomp
camillescott 1e0274c
Add spinlock to CountingHash::count, enable openmp in Hashtable::cons…
camillescott 6cd58a7
Add _parallel methods
camillescott 5746aa5
Remove lock for testing purposes
camillescott ecd657c
Thread output
camillescott 0be7209
first pass seqan impl
mr-c 4eb7247
add the seqan headers
mr-c 50fd998
point to the seqan headers
mr-c 954a8b0
Add new test, new data
camillescott 237ad2c
remove impl specific assert
mr-c fa33b81
Evidently NoMoreReadsAvailable was never thrown before?
mr-c 83436ca
update tests for early failure mode
mr-c 1b51eeb
restore these files; remove later
mr-c e338ee1
remove unneeded library link
mr-c 8220c08
Expose consume_async to python land
camillescott 5e4f198
Add consume_async to counting
camillescott b6be309
Add consume_async to Hashtable
camillescott d138b79
Add async_hash and threadsafe queue
camillescott 63c760a
Add async flag to normalize by median
camillescott ced8ccc
proper build deps for new objects
camillescott cb14c0e
Add test for async consume
camillescott bbd33c9
Merge branch 'master' into feature/threading
camillescott ac399a5
cleanup includes
mr-c d70443c
Revert "cleanup includes"
mr-c 63428ce
remove Hasher and other unused code
mr-c 99e41f5
clean up makefile, PEP8
mr-c e262b2d
omit seqan from coverage report
mr-c 6f07fd4
bye bye thread_id_map
mr-c b12089c
goodbye khmer_config
mr-c 80cf52e
pep8
mr-c dd483e2
salut unused files
mr-c e760a37
exception pruning
mr-c a88e3f3
restore fast cppcheck
mr-c 13da559
two more unused members to go
mr-c f99a735
more nits
mr-c ee75ac3
document Seqan PR
mr-c 2875b70
Add async threaded hashing, include Boost::Lockfree, update setup.py …
camillescott e4b43aa
Fix improper async shutdown; add consume_fasta_async
camillescott 4d672ff
Begin defining general Async classes
camillescott 08d4511
Add AsyncDiginorm
camillescott 54b9292
Fix mismatched include guards, remove deprecated register specificati…
17c0474
Add necessary semaphore/fcntl includes to system_sema.h. Add c++98/c…
81bf2b0
Add proposed fix to seqan build problems under os x 10.10; untested o…
c32906c
Some fixes to AsyncDiginorm cpython
camillescott 8e0c619
Merge pull request #646 from ged-lab/test/fix_seqan_warns
mr-c bda50d1
update known issues
mr-c 9f3080b
switch to a pthread mutex to avoid c++11 for now
mr-c 6d660c2
First round of interface-driven AsyncSequenceProcessor implementation
camillescott c8a600e
drop c++0x for now
mr-c dff2316
Fix std::system error by checking join status, fix Read memory leak
camillescott 4f4c026
Promote all general functions from AsyncDiginorm up to AsyncSequenceP…
camillescott 254bd61
drop -stdlib=c++
mr-c 07977d3
Add a writer that accepts whole sequences
camillescott 8f0c09d
Merge in SeqAn; fix thread stopping; expose getters in Python; fix se…
camillescott e1bac4f
Add tests for getters, asyncdiginorm
camillescott 6cd3067
Rip out async_hash prototypes
camillescott c18d5a8
Rip out rest of async_hash; add virtual iter_stop method to AsyncSequ…
camillescott c581ef9
Begin moving stuff to header file from _khmermodule.cc
camillescott b5562cb
Complete adding async module; fix setup.py for proper child module na…
camillescott 84ce02f
Many linking / structure changes...
camillescott 3ebc4ca
Revert to separate modules
camillescott ace6e33
Proof of concept: separate cc and hh for async, no submodule. WORKING.
camillescott 0e4a2a4
Remove all openmp stuff; remove last bits of multimodule testing
camillescott 616c61d
Remove _khmerasyncmodule from Makefile
camillescott e2b3dd5
Revert some unneccesary changes cluttering up the diff (whitespace, etc)
camillescott 25dc910
Make async submodule in python-land
camillescott 1e40b89
Implement basic threaded exception handling machinery
camillescott b11ca84
add the seqan headers
mr-c b9b9f7b
Fix mismatched include guards, remove deprecated register specificati…
b4c227b
Add necessary semaphore/fcntl includes to system_sema.h. Add c++98/c…
adc7775
first pass seqan impl
mr-c ed099b1
Implement AsyncExceptionHandler, update other classes to use it, and …
camillescott c7eea6e
Add cscope files to gitignore
camillescott 127c3d7
Improve structure of Async model by introducing AsyncConsumer, AsyncP…
camillescott 96bc918
Implement batched mode properly, promote batchsize to Async, finish p…
camillescott 526f057
Reduce memory footprint of ReadBatch using array
camillescott a99dad2
Add test for paired diginorm
camillescott aa35d32
Add test of culling reads properly in paired mode, simplify logic for…
camillescott 2ca6b41
Add dummy AsyncSequenceProcessor class for testing purposes, tests
camillescott e614347
Merge in rebased seqan branch
camillescott 82085b1
Fix import error
camillescott 842952a
Error handling changes
camillescott 745d990
Fix memory corruption caused by pushing to output queue before sequen…
camillescott 4773f19
Fix bug in AsyncSequenceProcessorTester consume() function; remove ti…
camillescott 068aae4
Add normalize-by-median-async script
camillescott 9329324
Move some output to stderr
camillescott 053cd4e
Typo
camillescott 3c0f9fd
Add some macros for timing
camillescott e111c81
First pass doing hashing in consume() threads
camillescott 6d10f9d
Fix memory leak
camillescott 763f3d1
Add getters for queue loads
camillescott 7a0afe6
Revert bundled hash writer; add threadsafe counter to hashtable
camillescott f802c8a
Update AsyncDiginorm to use new threadsafe hashtable writing
camillescott 8f0ce70
Add potional writer wait timing
camillescott 50a9321
Remove a memory leak
camillescott c527dbf
Async file restructuring
camillescott 6380b0e
Change includes, structure of async files
camillescott cfd7232
Fix cppcheck rule in Makefile; static inline timediff function to res…
camillescott eccefe5
Make use of typedef'd ReadPtr
camillescott e725fdb
Fix normalize-by-median-async for fasta output
camillescott 71f3a05
Implement control over locking block size
camillescott ca94d90
Change timing output:
camillescott e47409e
Add global timing counters
camillescott e418084
Turn off timing, begin round robin model
camillescott 6837e0b
Additional work on RR producer
camillescott ed97e8a
Merge pull request #642 from ged-lab/test/simplify
mr-c 9878215
Comment out RR model
camillescott 21a80b0
Add XDECREF for returned read tuple in ReadParser.read_pair_iterator()
camillescott 83d2bca
Merge in master
camillescott 0ad7a35
Fix memory leak in read iterator; fix output for number and perc kept…
camillescott 71c926d
Add output for acquiring stdout lock when in verbose mode
camillescott 9a4ff5e
Add a packaged boost::lockfree to third-party.
camillescott e9bdd82
Add header for async parser
camillescott b7f449f
Add async_parser object; begin transitition to state-based operation …
camillescott 58c5acf
Finish transition to state based system; fix hangup bug
camillescott 661dc30
Major cleanup: remove async_writers, fix some tests, fix one deadlock…
camillescott 4697c76
Switch ordering of some exception handling
camillescott a16709b
Add exception propagation from async_parser
camillescott File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -41,3 +41,5 @@ third-party/zlib/zlib.pc | |
| pip-log.txt | ||
| sphinx-contrib | ||
| compile_commands.json | ||
| cscope.out | ||
| tags | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That'll be gone for merge. Necessary to make nose work with my config (either a Ubuntu 14.04 bug or anaconda bug, haven't been bothered to figure it out)