vcflib
vcflib copied to clipboard
Illegal instruction
Only bug reports!
The C++ version of VCFLIB is in maintenance mode. Use the github issue tracker to report bugs only. For comments, questions and features, please use the google group mailing list as stated on the README!
Describe the bug
Hello, when running vcfwave
on a VCF generated by minigraph-cactus
, it returns the VCF header followed by
vcfwave 1.0.9 processing...
Illegal instruction
To Reproduce
vcfwave -t 4 -L 1000000 test.vcf
I can upload a simplified version of the test.vcf file if needed.
Expected behavior
Unclear but I would expect a VCF?
Thanks very much for your time, Jonah.
What processor do you have? Did you compile vcflib on the same machine that you are running it on, or install vcflib from compiled binaries somewhere?
Thanks for your response! I installed vcflib via Bioconda (mamba install -c bioconda vcflib
). I tend to use mamba
as opposed to conda
but I'm happy to try a different way if you see fit.
I have encountered the same issue using the output of minigraph-cactus, using vcflib 1.0.9 installed via miniconda3.
@jonahcullen and what model of processor are you running it on?
I believe that this is happening because you are running it on a CPU with fewer features than vcflib was compiled for in Bioconda. I need to look at the bioconda recipe and see if it's building with -march=native
, because if so, it will only run on processors supporting all the same features as bioconda's build machine.
The safest solution for you is to compile vcflib yourself, but the bioconda recipe should also be fixed.
Hi @pettyalex , yes I’m trying to run this on an HPC with mostly AMD and Intel processors.
If the bioconda recipe is fixed, I’ll try that again but if not I’m happy to compile it myself.
Thanks again for your patience and help here, I am fully aware that this can sometimes be a thankless task and I very much appreciate it.
Don't thank me, I've barely contributed to vcflib but I've worked w/ packaging it. The bioconda recipe is not fixed but I might get around to it shortly.
The binary that you already have would also probably run in your environment if you exclusively target recent Intel processors with your scheduler.
This PR should fix this: https://github.com/bioconda/bioconda-recipes/pull/50564
I think that "-march=native" should be disabled to get a generic executable by default https://github.com/vcflib/vcflib/blob/382ae661fa19cfde6de56a8b3d7109d542373345/CMakeLists.txt#L73C20-L73C33