ronniec95 / black_scholes

A SIMD based black scholes pricer using the http://crates.io/wide crate
https://mushfaqueronniechowdhury.medium.com/probably-the-fastest-black-scholes-pricer-in-world-34103e97f7eb
64 stars 7 forks source link

beautiful code and beautiful article about it #1

Open omac777 opened 4 years ago

omac777 commented 4 years ago

I just read your article about: https://medium.com/@mushfaqueronniechowdhury/probably-the-fastest-black-scholes-pricer-in-world-34103e97f7eb

Thank you for enlightening me with some math I otherwise wouldn't be able to understand without your article.

You are a super-hero.

ronniec95 commented 4 years ago

Thanks man. I'm going to write a few more articles on simd coding as it's quite a mystery topic for a lot of people and I think the wide library makes a bit more accesible

brandonros commented 1 year ago

Dumb question: what's SIMD support like for the instructions you use on Apple M1/M2 (aarch64/ARM64)? This is all x86_64 optimized/specific right?

ronniec95 commented 1 year ago

Unfortunately not. I used the "wide" library (for which I contributed all the transcendental functions used in this lib) but only for x64. If "wide" lib in upgraded to M1 intrinsics then this will benefit automatically.

Sorry about that.

In the mean time, the API still works on ARM chips but depends on the compiler to vectorise

On Sat, 26 Nov 2022, 20:52 Brandon Ros, @.***> wrote:

Dumb question: what's SIMD support like for the instructions you use on Apple M1/M2 (aarch64/ARM64)? This is all x86_64 optimized/specific right?

— Reply to this email directly, view it on GitHub https://github.com/ronniec95/black_scholes/issues/1#issuecomment-1328112297, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAGY5WACAOUEZZAOFAX5TULWKJZ73ANCNFSM4QTWQ6QA . You are receiving this because you commented.Message ID: @.***>

bitbugprime commented 5 months ago

Dumb question: what's SIMD support like for the instructions you use on Apple M1/M2 (aarch64/ARM64)? This is all x86_64 optimized/specific right?

Assuming we're talking about Lokathor/wide the current README implies it can use aarch64 intrinsics now.