-
Notifications
You must be signed in to change notification settings - Fork 34
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
Question about gap open penalty for different vectorizations. #64
Comments
I have confirmed the behavior but haven't looked at it in any detail yet. I don't believe I regularly verified where the gap open penalty was smaller than the gap extend penalty as in your case here. These are the gap {open,extend} penalties I regularly tested:
If you're building with the configure script and Makefile, you can run
Is it common for the gap open penalty to be smaller than the gap extend penalty? |
One more thing. Can you provide the correct score and traceback for these particular settings using a different tool so that I might verify it against parasail? |
@jeffdaily Many thanks for the quick reply! This isn't a serious issue for us, it arose as I was putting together some tests for Cython wrappers that I had written, and the case where the gap open penalty was larger than the gap extend came up as a corner case. Still, it would be good to understand this a little deeper. I ran the tests that you proposed:
|
I will look for an external tool that can produce the "correct" alignment. |
Side question(s): Did you use cython to wrap the entire parasail C API or perhaps just a handful of the ones you need? When I started the https://github.com/jeffdaily/parasail-python repo, I initially used cython. But I had little experience with cython on windows, so I switched to ctypes. Does parasail-python not meet your needs such that you needed your own cython bindings? |
To answer your side question: we already had some Cython code (independent of Parasail) so it was easier to continue along that road than to add a new dependency. Starting from scratch I'd probably use parasail-python. In fact, I started making a Conda package for parasail-python, but I got bogged down with build issues (with the Conda build system, not with parasail-python). |
A gap open penalty that is smaller than the gap extend penalty is not supported. I will note this in the readme. I appreciate the question/discussion! Thanks for being a user. |
Thanks @jeffdaily ! Congrats on the new release. |
The following came up while trying to debug why Parasail would return different results on different machines (more specifically, a fairly recent laptop (i7) and a Travis VM). I narrowed things down to one version of the code dispatching to the AVX2 implementation, and another one to the SSE4 implementation. Surprisingly, while the remainder of the code is exactly the same, the two different vectorizations give different results. There's probably something that I've overlooked, but what could cause this?
The code snippet below reproduces the problem for me (with Parasail master). On my machine, it prints the following:
Note how the alignments, the score, and the number of matches are different.
The text was updated successfully, but these errors were encountered: