ledatelescope / bifrost

A stream processing framework for high-throughput applications.
BSD 3-Clause "New" or "Revised" License
64 stars 29 forks source link

BFMap does not work with half precision floats #238

Open dentalfloss1 opened 1 month ago

dentalfloss1 commented 1 month ago

BFMap fails without good debugging information when trying to use half precision floats. Minimal example:


from bifrost import map as BFMap
import numpy as np
import traceback
for dtype in ['f8','f4','f2','i8','i4','i2']:
    print("Using dtype",dtype)
    try:
        A = BFArray(np.arange(2000,dtype=dtype),space='cuda')
        B = BFArray(np.arange(2000,dtype=dtype),space='cuda')
        C = BFArray(np.arange(2000,dtype=dtype),space='cuda')
        BFMap("""C(i)=A(i)*B(i)""",{'C':C,'B':B,'A':A},axis_names=('i'),shape=(2000,))

        out = C.copy('system')
    except Exception:
        print(traceback.format_exc())```
jaycedowell commented 1 month ago

Sounds like it is similar to this: https://github.com/ledatelescope/bifrost/issues/130