This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6747 and fastMath version 2 vs version 3

Other Parts Discussed in Thread: MATHLIB

I would like to know the fixes in fastmath version 3.0.11 vs version 2 C67x FastMath. It is not indicated in the release notes.

I know about the A * sin(0) issue in version 2 which I can replicate.  However other people have reported other issues with sqrt etc in these forums. I use  fastmath version 2 sin, cos, div, sqrt, recip, log10 and exp10 in release code and am seeing occasional NaN and I am wondering if it is related to this library and if I should move to the newer version.

Version 3.0.11 is here http://www.ti.com/tool/mathlib

Version 2 is here http://software-dl.ti.com/dsps/dsps_public_sw/c6000/web/c67_fastmath/latest/index_FDS.html

Thanks,

Fawad

  • Fawad,

    It is recommended to move to the new library as there are some bug fixes with support for newer version of CCS and updated documentation.

    Regards,

    Rahul

  • Rahul,

    Please give me further information and what bugs existed in version 2.  I can't make an assessment of the issues I am seeing until you disclose the full list of issues.

    Thanks,

    Fawad

  • Rahul,

    I debugged further and found exp10 in  version 2 of the mathlib is setting NaN flags in FADCR, FAUCR and FMCR registers.  This happens when I do a vector (exp10sp_v) of values when the vector is greater than 4.  I also found the NaN bits are not set if I compile the mathlib with optimization set to -O1 (default is -O2).  Can you look into this?  At no time did I see a a NaN being returned but NaN bits are set.

    I also noticed there are major differences between ver 2 and ver 3 of exp10 functions.

    I used the exp10 and log10 functions from version 3 and they work fine with no NaN issues.

    Regards,

    Fawad

  • Fawad,

    The fixes that went into MathLib 3.x included work to "fix precision issues and special input, such as NaN and inf, handling". We do not have a more detailed list than that. We re-built the library to be able to work efficiently with our newest C66x architecture and also the C674x and C67x floating point devices.

    Sorry that we do not have more details, but we are glad to hear the new library has fixed your problems.

    Regards,
    RandyP

  • Randy,

    I verified your answer as version 3.0 of the mathlib solves my issues.  I just wish TI would have done more to document issues with version 2.

    Thanks,

    Fawad