Menu

No Neon support on Cortex-A7?

2017-03-24
2017-03-24
  • Palle Dinesen

    Palle Dinesen - 2017-03-24

    I have installed the library on both a 64-bit ARM Cortex-A53 device and a 32-bit Cortex-A7 device. On the 64-bit system the installation was smooth and the test results quite impressive in terms of speed improvement!

    On the 32-bite device I had more trouble: The cmake script reported the device as an 'armv7l' architecture with no rule to make. So I tried to manually override the architecture to 'arm' and was able to run the cmake and build the libraries. However, when running the test suite I was surprised to find no column in the test data for calculations on the NEON co-processor, although the Cortex-A7 is supposed to feature this.

    Any guidance on how to get the NEON support on the Cortex-A7?

    Please keep up the good work, this looks very promising for my application!

     
  • Yermalayeu Ihar

    Yermalayeu Ihar - 2017-03-24

    Hello.

    Are you try to build the library on ARM platform?

    I'vу never tried to do this on ARM platform. I've done it only with using of cross platform toolchain. So I don't know exactly solution of the problem.

    But you can try to do something like this:

    cd ./prj/cmake
    cmake . -DTOOLCHAIN="g++" -DTARGET="arm" -DCMAKE_BUILD_TYPE="Release"
    make
    

    I hope it will be usefull for you.

     
  • Anonymous

    Anonymous - 2017-03-24

    Thanks for your prompt reply. I am not very experienced in cross compiling, but I managed to compile natively on the ARM device by

    cmake . -DTOOLCHAIN="g++" -DTARGET="arm" -DCMAKE_BUILD_TYPE="Release"

    and that did the magic and I was able to run the test which provided the Neon acceleration results, which are quite impressive for the routines I need

    Thanks! and please keep more routines coming!

     

    Last edit: Palle Dinesen 2017-03-24
  • Anonymous

    Anonymous - 2017-07-20

    The problem with compiling on an ARM platform is that the target does not necessarily read "arm", but "armv7l" or similar. You could circumvent this by replacing a line in the cmake from "STREQUAL 'arm'" to "MATCHES '^arm'". I rmeember it occurred two times in the Cmake Script (to add NEON support or sth.) and depending on your arm type you can or cannot replace the second check as well.

     
  • Yermalayeu Ihar

    Yermalayeu Ihar - 2017-07-20

    Ок. I will do it.

     

Anonymous
Anonymous

Add attachments
Cancel





Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.