Use float-abi=hard to speed up performance on development board

Since libORBBEC.so is not open source, can the Orbbec team provide a compiled libORBBEC.so with -mfloat-abi=hard instead of -mfloat-abi=softfp

This can be changed by editing
$(OPENNI_DIR)/ThirdParty/PSCommon/BuildSystem/CommonCppMakefile
line 85
LDFLAGS += -Wl,–no-undefined -mfloat-abi=hard -mfpu=neon

and
$(OPENNI_DIR)/ThirdParty/PSCommon/BuildSystem/Platform.Arm
line 4
CFLAGS += -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard

I want to test if this would speed up the orbbec driver if the driver is doing a lot of floating point calculations since the default -mfloat-abi=softfp generate a lot of overhead, because the current CPU usage to just grab the frames is too high for my application.

I doubt that the softfp is the culprit here. This thread has some information:

You should use a profiler and see which functions are eating up your CPU.

Hi Rafael, thanks for the information!

I am just using OpenCV to display the images right now, and its running at ~0.5FPS if most of the scene has depth information, near 20 FPS if I cover up the cameras and there is no depth information.
If I run depth at 320x240, I get ~30FPS, and I get 30FPS if I scale it to 640x480, so I’m pretty sure its not the code displaying the image.

what kind of FPS are you getting with the Astra on the dev board? I don’t have a profiler handy because I’m having trouble connecting to school’s enterprise WIFI network.