Skip to content
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

Feature request: k-mer length >32 with -large version included #6

Closed
karel-brinda opened this issue Jan 8, 2024 · 2 comments · Fixed by #15
Closed

Feature request: k-mer length >32 with -large version included #6

karel-brinda opened this issue Jan 8, 2024 · 2 comments · Fixed by #15

Comments

@karel-brinda
Copy link
Member

The program should choose the corresponding datatype based on the params, it should be the same executable. In particular:

If I remember correctly, __uint128_t is a software emulation, see the following comparison:

$ time ./kmercamel -k 31 -a local -c -p "/Users/karel/github/my/rase-db-spneumoniae-sparc/isolates/ZXPKH.fa" > /dev/null 

real	0m0.507s
user	0m0.475s
sys	0m0.016s

$ time ./kmercamel-large -k 31 -a local -c -p "/Users/karel/github/my/rase-db-spneumoniae-sparc/isolates/ZXPKH.fa" > /dev/null 

real	0m0.713s
user	0m0.653s
sys	0m0.025s
@karel-brinda
Copy link
Member Author

The way to achieve this with KHASH: macros. The program creates hash tables for individual data types, but uses only the one corresponding to the selected data type.

@karel-brinda
Copy link
Member Author

Might require having multiple instances of the same function pseudotemplates

@OndrejSladky OndrejSladky linked a pull request Mar 21, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant