m4rs-mt / ILGPU

ILGPU JIT Compiler for high-performance .Net GPU programs
http://www.ilgpu.net
Other
1.38k stars 117 forks source link

Higher precision float (decimal) support? #1143

Open chrisaliotta opened 10 months ago

chrisaliotta commented 10 months ago

@m4rs-mt and team, excellent work on the library! Is it currently possible to support higher precision floats (128bit) with the current library?

Is this something we can implement: https://developer.nvidia.com/blog/implementing-high-precision-decimal-arithmetic-with-cuda-int128/

I would like to help, but I have no idea where to start. I could certainly work on a DMath helper library, but as for compiling to PTX and implementing to the __int128 data type, l lack sufficient knowledge.

Thanks. Chris

m4rs-mt commented 9 months ago

Hi @chrisaliotta, welcome to the ILGPU community and a happy new year! This would be really amazing to have and we would love assisting you with integrating these types. As for the PTX-lowering part, this is something @MoFtZ and I can focus on.

IsaMorphic commented 7 months ago

Hi @chrisaliotta !! I'm happy to let you know that my software implementation of IEEE 754 binary128 for .NET Core now fully supports ILGPU! I've even successfully used it with my own Mandelbrot fractal rendering library, also written in C#.

Check it out! https://github.com/IsaMorphic/QuadrupleLib