odelaneau / shapeit5

Segmented HAPlotype Estimation and Imputation Tool
https://odelaneau.github.io/shapeit5/
MIT License
61 stars 9 forks source link

Needs of AVX2 #13

Closed LouisLeNezet closed 1 year ago

LouisLeNezet commented 1 year ago

Hi,

As I'm working on the integration of SHAPEIT5 in nf-core, I was wondering which modules of SHAPEIT5 needs AVX2 to work. Unfortunately their is no fallback possible in your code to run SHAPEIT5 and GLIMPSE2 on host without the AVX2 feature available.

So I added some test in the nf-core process to check if AVX2 is available or not, before running.

Could you tell me which functions needs AVX2 ? phase_rare and phase_common seems to need it.

Thanks

odelaneau commented 1 year ago

Yes both phase_rare and phase_common need AVX as HMM computations are easy to vectorize. AVX is available on all CPU since 2012 and speeds up analyses so much that it would be such a waste to not use it. Is there any way to use AVX in nf-core?

LouisLeNezet commented 1 year ago

Yeah, I have written a short test at the start of each process that needed it. Everything is fine now 👍