We have moved to a new Sailfish OS Forum. Please start new discussions there.
1 | initial version | posted 2016-05-16 15:07:25 +0200 |
If your app heavily relies on Vector / Matrix/ FFT operations (single precision) then you are able to use the NEON instruction set for this. But if you don't like to use inline assembler and/or you would like your app to run on an non NEON chip (like Snapdragon 212 in Intex Aquafish) too, you'll need a solution.
ProjectNe10 shows a way to get rid of this problems. It's easy to complile it on SFOS:
unpack the tarball and in the new created folder
mkdir build && cd build
export NE10_LINUX_TARGET_ARCH=armv7
cmake -DGNULINUX_PLATFORM=ON -DNE10_BUILD_SHARED=ON ..
make
then you get the static and shared version. In the new created samples folder you should see two executables called NE10_test_static and NE10_test_dynamic with which you are able to check if the steps above had worked. The output should be Going to initialze NE10...\n NE10 has been initialized
Now you are able to use SIMD in your apps:
#include <stdio.h>
#include <stdlib.h>
#include "NE10.h"
then you are able to call the NE10_ functions in your C source code...
If your app heavily relies on Vector / Matrix/ FFT operations (single precision) then you are able to use the NEON instruction set for this. But if you don't like to use inline assembler and/or you would like your app to run on an non NEON chip (like Snapdragon 212 in Intex Aquafish) too, you'll need a solution.
ProjectNe10 shows a way to get rid of this problems. It's easy to complile it on SFOS:
unpack the tarball and in the new created folder
mkdir build && cd build
export NE10_LINUX_TARGET_ARCH=armv7
cmake -DGNULINUX_PLATFORM=ON -DNE10_BUILD_SHARED=ON ..
make
then you get the static and shared version. In the new created samples folder you should see two executables called NE10_test_static and NE10_test_dynamic with which you are able to check if the steps above had worked. The output should be Going to initialze NE10...\n NE10 has been initialized
Now you are able to use SIMD in your apps:
#include <stdio.h>
#include <stdlib.h>
#include "NE10.h"
then you are able to call the NE10_ functions in your C source code...