Yang Zhang [Mon, 30 Jun 2014 07:45:47 +0000 (15:45 +0800)]
add temp buffer allocation and scaling by 2 for rfft
- add temp buffer allocation in init function
- add scaling by 2 for C, NEON assembly and intrinsic version
Change-Id: I7e46f327f43664e06700089f4d38f0d868d44f3e
Yang Zhang [Thu, 19 Jun 2014 09:21:01 +0000 (17:21 +0800)]
update the FFT implementation
- add scaling by nfft in IFFT
- add temp buffer to protect the source data
- change the interface for passing temp buffer
- add intrinsic version of FFT
- indent the code
Change-Id: I35f46e60bb88070127eb59281ddbd3a72f6b8e7d
Matthew DuPuy [Wed, 18 Jun 2014 05:03:46 +0000 (22:03 -0700)]
ignore *.so and *.prefs
Matthew DuPuy [Wed, 18 Jun 2014 04:58:26 +0000 (21:58 -0700)]
Minor semantic update to demo
Matthew DuPuy [Wed, 18 Jun 2014 03:31:30 +0000 (20:31 -0700)]
cfft and rfft test modules removed
NE10_TEST_DSP could no longer build with cfft and rfft test modules
removed.
Yang Zhang [Fri, 13 Jun 2014 06:59:51 +0000 (14:59 +0800)]
optimize int32/int16 complex FFT
The performance result is as follows:
toolchain: gcc 4.8 at -O2
omx fft's execute time is the base. The ratio is less, the performance is better.
int32 FFT
A9:
| |16 |32 |64 |128 |256 |512 |1024 |2048 |4096 |
|Ne10 |73.24%|99.95%|95.78%|96.04%|97.97%|97.57%|99.51%|97.87%|98.12%|
|omx |100% |100% |100% |100% |100% |100% |100% |100% |100% |
A15:
| |16 |32 |64 |128 |256 |512 |1024 |2048 |4096 |
|Ne10 |84.89%|98.62%|89.33%|100.7%|99.28%|103.9%|101.7%|105.1%|96.67%|
|omx |100% |100% |100% |100% |100% |100% |100% |100% |100% |
int16 FFT
A9:
| |16 |32 |64 |128 |256 |512 |1024 |2048 |4096 |
|Ne10 |109.2%|97.81%|100.3%|97.20%|101.3%|99.01%|103.4%|103.5%|94.67%|
|omx |100% |100% |100% |100% |100% |100% |100% |100% |100% |
A15:
| |16 |32 |64 |128 |256 |512 |1024 |2048 |4096 |
|Ne10 |112.6%|95.78%|104.3%|101.7%|112.3%|111.5%|102.3%|105.1%|99.78%|
|omx |100% |100% |100% |100% |100% |100% |100% |100% |100% |
Change-Id: I7290ae5f9abfd3d04f8ca501f5ecbff452973d4b
Yang Zhang [Fri, 30 May 2014 11:36:23 +0000 (19:36 +0800)]
optimize float complex FFT
1. To optimize FFT, the algorithm is changed. Bit reversal is removed and radix 8 is added.
2. After test, the optimized FFT show the best performance, so that the old implementations are removed.
The performance result is as follows:
toolchain: gcc 4.8 at -O2
omx fft's execute time is the base. The ratio is less, the performance is better.
panda board A9:
| |16 |32 |64 |128 |256 |512 |1024 |2048 |4096 |
|Ne10 |84.27%|89.57%|85.63%|85.79%|87.89%|87.91%|83.51%|97.08%|92.68%|
|omx |100% |100% |100% |100% |100% |100% |100% |100% |100% |
nexus10 A15:
| |16 |32 |64 |128 |256 |512 |1024 |2048 |4096 |
|Ne10 |84.88%|98.43%|89.46%|101.0%|99.24%|103.2%|93.80%|105.1%|97.44%|
|omx |100% |100% |100% |100% |100% |100% |100% |100% |100% |
Change-Id: I363ee1602f08532e566d3a5a4f3d7a99972a1283
Zhongwei Yao [Thu, 15 May 2014 06:20:15 +0000 (14:20 +0800)]
extend copyright year and add the extend script.
Change-Id: Ice948d88f2dc6122b562bf479aea53c060181345
Zhongwei Yao [Mon, 2 Dec 2013 05:27:20 +0000 (13:27 +0800)]
add box filter to image processing module.
Matthew DuPuy [Tue, 22 Apr 2014 21:11:17 +0000 (14:11 -0700)]
Create Acknowledgements.md
Matthew DuPuy [Wed, 12 Mar 2014 21:31:46 +0000 (14:31 -0700)]
Create LICENSE
Requested for clarification of license in code file headers.
Yang Zhang [Wed, 19 Feb 2014 09:59:14 +0000 (17:59 +0800)]
make changes as follows:
-optimize float/int32 fft for 4-4096
-add unscaled/scaled implementation for int32 fft
-add neon intrinsic version for float/int32 fft
Matthew DuPuy [Fri, 14 Feb 2014 20:49:48 +0000 (12:49 -0800)]
Call for use cases
Help us track Ne10 usage since downloads are not a great metric and didn't even exist in GitHub till 2014.
Yang Zhang [Fri, 24 Jan 2014 09:48:51 +0000 (17:48 +0800)]
make the following changes
-add 3 functions for collision detection
-add test cases and doc
-update the ReleaseNote
Zhongwei Yao [Mon, 16 Dec 2013 06:04:06 +0000 (14:04 +0800)]
add following changes:
- add MIN_IOS_VER configuration for iOS platform building
- add new added FFT functions' iOS support
- remove resize function's assembly version, only keep the intrinsics version
- refine the smoke test case for resize function
Yang Zhang [Mon, 9 Dec 2013 04:11:46 +0000 (12:11 +0800)]
add hard float support for Linux/Andriod
Yang Zhang [Wed, 20 Nov 2013 08:15:11 +0000 (16:15 +0800)]
add the new FFT features
- c2c FFT/IFFT(float/int32/int16) with 2^N size
- r2c FFT(float/int32/int16) with 2^N size
- c2rIFFT(float/int32/int16) with 2^N size
- test cases and doc
Zhongwei Yao [Thu, 24 Oct 2013 10:55:12 +0000 (18:55 +0800)]
Make following changes:
- update cmake config script and doc due to Xcode upgrade
- add compiler switch(-mthumb) for android and ubuntu to make sure generated code is thumb code.
- change the log output buffer size to get around the bug in sfft test.
Yang Zhang [Mon, 2 Sep 2013 10:06:45 +0000 (18:06 +0800)]
Make the following changes
- Add C implementations, doc and test cases for image resize/rotate
- fix the bug in NEON version of image resize
- add a header file for external macro definitions
Zhongwei Yao [Thu, 22 Aug 2013 06:21:58 +0000 (14:21 +0800)]
update build script to enable building under Mac OS for Android development.
Zhongwei Yao [Thu, 22 Aug 2013 06:20:18 +0000 (14:20 +0800)]
add benchmark result to Android and iOS demo.
Fang Bao [Wed, 26 Jun 2013 07:39:30 +0000 (15:39 +0800)]
Add NEON intrinsic implementation of resize.
NOTE:
The gcc 4.7 is the minimum version advocated for compiling NEON intrinsics.
The intrinsic version will not be compilied because there is a NEON assembly version already.
To enable it, you should:
* Uncommenting the line including NE10_resize.neon.c in modules/CMakeLists.txt
* Commenting the line including NE10_resize.neon.s in modules/CMakeLists.txt
Zhongwei Yao [Tue, 25 Jun 2013 10:21:36 +0000 (18:21 +0800)]
- fix a bug when run command line tests
- add a reasonable check when add platform demo macro in Cmake script
Zhongwei Yao [Mon, 17 Jun 2013 04:19:49 +0000 (12:19 +0800)]
add android demo.
Zhongwei Yao [Sat, 8 Jun 2013 03:04:29 +0000 (11:04 +0800)]
add iOS demo.
Zhongwei Yao [Mon, 3 Jun 2013 04:16:25 +0000 (12:16 +0800)]
add iOS support.
Zhongwei Yao [Fri, 24 May 2013 02:32:41 +0000 (19:32 -0700)]
Merge pull request #53 from projectNe10/dev/zhongwei/android_support_review
update building system to add android support.
Zhongwei Yao [Sun, 7 Apr 2013 03:31:48 +0000 (11:31 +0800)]
update building system to add android support.
yangzhang [Fri, 26 Apr 2013 11:59:28 +0000 (04:59 -0700)]
Merge pull request #52 from projectNe10/dev/yangzhang/imageRotate
add the NEON functions for image rotate
yang01 [Mon, 1 Apr 2013 02:42:37 +0000 (10:42 +0800)]
use ne10 style data types to replace commom style
yang01 [Fri, 29 Mar 2013 08:51:05 +0000 (16:51 +0800)]
add image rotate function(NEON)
yangzhang [Mon, 18 Mar 2013 03:20:28 +0000 (20:20 -0700)]
Merge pull request #48 from projectNe10/dev/yangzhang/imageResizeZoomIn
fix the bug for image zoom in
yang01 [Mon, 18 Mar 2013 03:17:51 +0000 (11:17 +0800)]
fix the bug for image zoom in
yangzhang [Tue, 26 Feb 2013 03:26:28 +0000 (19:26 -0800)]
Merge pull request #47 from projectNe10/dev/yangzhang/imageResize
add image resize functions(NEON version)
yang [Tue, 26 Feb 2013 03:18:07 +0000 (11:18 +0800)]
add image resize functions(NEON version)
yangzhang [Wed, 9 Jan 2013 03:58:24 +0000 (19:58 -0800)]
Merge pull request #42 from projectNe10/dev/yangzhang/documents
build documentation with doxygen
yang [Tue, 8 Jan 2013 05:59:21 +0000 (13:59 +0800)]
change the URL for New BSD License
yang [Tue, 18 Dec 2012 10:47:14 +0000 (18:47 +0800)]
move information of USAGE.txt to documentations of doxygen
yang [Tue, 18 Dec 2012 08:33:59 +0000 (16:33 +0800)]
add notes and image for doxygen
yang [Wed, 12 Dec 2012 08:35:53 +0000 (16:35 +0800)]
build the frame work of documents with doxygen
yang [Wed, 12 Dec 2012 02:49:09 +0000 (10:49 +0800)]
Merge branch 'master' of git://github.com/projectNe10/Ne10 into documents
yang [Wed, 12 Dec 2012 02:46:39 +0000 (10:46 +0800)]
add doxygen files
yangzhang [Tue, 11 Dec 2012 10:26:33 +0000 (02:26 -0800)]
Merge pull request #41 from projectNe10/dev/yangzhang/seatest
build test environment with seatest
yang [Tue, 11 Dec 2012 10:23:35 +0000 (18:23 +0800)]
Merge remote-tracking branch 'origin/master' into seatest
yang [Tue, 11 Dec 2012 10:18:18 +0000 (18:18 +0800)]
remove extra spaces
yangzhang [Tue, 11 Dec 2012 03:52:43 +0000 (19:52 -0800)]
Merge pull request #40 from projectNe10/dev/yangzhang/documents
add functions list to doc
yang [Tue, 11 Dec 2012 03:20:36 +0000 (11:20 +0800)]
add license for seatest files
yang [Mon, 10 Dec 2012 03:44:31 +0000 (11:44 +0800)]
add functions list to doc
yang [Fri, 7 Dec 2012 05:53:33 +0000 (13:53 +0800)]
indent the source code
yang [Fri, 30 Nov 2012 09:05:45 +0000 (17:05 +0800)]
build test environment with seatest
yangzhang [Fri, 23 Nov 2012 05:51:59 +0000 (21:51 -0800)]
Merge pull request #39 from projectNe10/dev/yangzhang/finetune_dsp
Dev/yangzhang/finetune dsp
yang [Fri, 23 Nov 2012 04:02:46 +0000 (12:02 +0800)]
modified the interface of CIFFT for precision
yang [Thu, 22 Nov 2012 02:41:45 +0000 (10:41 +0800)]
modify push operations for stack aligned
yang [Tue, 20 Nov 2012 10:11:07 +0000 (18:11 +0800)]
fine tune dsp functions
1. fine tune FIR function
2. keep stack 8 bytes aligned
3. save D8-15 register
yangzhang [Mon, 29 Oct 2012 08:55:25 +0000 (01:55 -0700)]
Merge pull request #38 from projectNe10/dev/yangzhang/filter
add FIR/IIR functions
1. FIR
2. FIR decimate
3. FIR interpolate
4. FIR lattice
5 FIR sparse
6. IIR lattice
yang [Mon, 29 Oct 2012 08:44:23 +0000 (16:44 +0800)]
add notes " these functions aren't for hard vfpv3 ABI yet"
yang [Mon, 29 Oct 2012 08:38:05 +0000 (16:38 +0800)]
Merge branch 'master' of git://github.com/projectNe10/Ne10
yangzhang [Mon, 29 Oct 2012 07:46:51 +0000 (00:46 -0700)]
Merge pull request #37 from projectNe10/bsd_license
preserve the 2011-12 notice on the files which had this before
yang [Mon, 29 Oct 2012 03:23:28 +0000 (11:23 +0800)]
update the 2011-12 notice
yang [Mon, 29 Oct 2012 02:55:17 +0000 (10:55 +0800)]
preserve the 2011-12 notice on the files which had this before
yang [Fri, 26 Oct 2012 09:53:29 +0000 (17:53 +0800)]
change license headers
yang [Fri, 26 Oct 2012 09:40:35 +0000 (17:40 +0800)]
format accordding to code review
yang [Fri, 26 Oct 2012 06:07:53 +0000 (14:07 +0800)]
Merge branch 'master' of git://github.com/projectNe10/Ne10
yang [Fri, 26 Oct 2012 03:39:33 +0000 (11:39 +0800)]
change compile option to "-O2"
yangzhang [Fri, 26 Oct 2012 03:34:19 +0000 (20:34 -0700)]
Merge pull request #36 from projectNe10/function_rename
add prefix "ne10_" to all the functions
yang [Fri, 26 Oct 2012 03:29:42 +0000 (11:29 +0800)]
add prefix "ne10_" to all the functions
yangzhang [Wed, 24 Oct 2012 08:41:03 +0000 (01:41 -0700)]
Merge pull request #35 from projectNe10/dev/yangzhang/bsd_license
change the license to New BSD License
yang [Wed, 24 Oct 2012 08:34:56 +0000 (16:34 +0800)]
Merge branch 'master' of git://github.com/projectNe10/Ne10 into license
Conflicts:
README.txt
yang [Wed, 24 Oct 2012 07:10:36 +0000 (15:10 +0800)]
remove redundant space
mdupuy [Tue, 23 Oct 2012 22:25:03 +0000 (15:25 -0700)]
Dual license BSD 3 clause
Updating Readme.txt to dual license with BSD 3 clause
yang [Fri, 19 Oct 2012 07:20:39 +0000 (15:20 +0800)]
change the license to New BSD License
yang [Fri, 19 Oct 2012 03:02:42 +0000 (11:02 +0800)]
add fir and iir filter function:
1. fir
2. fir decimate
3. fir interpolate
4. fir lattice
5. fir sparse
6. iir lattice
yangzhang [Wed, 10 Oct 2012 07:05:30 +0000 (00:05 -0700)]
Merge pull request #33 from projectNe10/dev/yangzhang/fft
add complex/real fft functions
yang [Wed, 10 Oct 2012 06:48:18 +0000 (14:48 +0800)]
modified ne10_init function
yang [Wed, 10 Oct 2012 06:29:59 +0000 (14:29 +0800)]
modify macro definition in mask table
yang [Wed, 10 Oct 2012 06:20:54 +0000 (14:20 +0800)]
make the following modification
1. removed arm assembly in C file
2. modified the interface of rfft
yang [Fri, 28 Sep 2012 08:53:15 +0000 (16:53 +0800)]
add notes
yang [Thu, 27 Sep 2012 09:33:17 +0000 (17:33 +0800)]
add CFFT/CIFFT and RFFT/RIFFT functions
yang [Wed, 19 Sep 2012 08:01:02 +0000 (16:01 +0800)]
remove the compile warnings
yang [Thu, 30 Aug 2012 09:50:08 +0000 (17:50 +0800)]
fix issues about Android.mk
yang [Thu, 2 Aug 2012 05:57:50 +0000 (13:57 +0800)]
reorganize the code directory
yang [Tue, 24 Jul 2012 06:40:53 +0000 (14:40 +0800)]
fix bugs in mulcmatvec
yang [Tue, 24 Jul 2012 02:52:04 +0000 (10:52 +0800)]
fix bugs in invmat
yang [Mon, 23 Jul 2012 10:24:57 +0000 (18:24 +0800)]
fix bugs in detmat
yang [Fri, 20 Jul 2012 03:50:26 +0000 (11:50 +0800)]
fix bugs in sub
yang [Fri, 20 Jul 2012 02:58:03 +0000 (10:58 +0800)]
fix bugs in mul
yang [Thu, 19 Jul 2012 09:48:38 +0000 (17:48 +0800)]
fix bugs in dot
yang [Thu, 19 Jul 2012 06:25:27 +0000 (14:25 +0800)]
fix bugs in div
yang [Thu, 19 Jul 2012 03:01:12 +0000 (11:01 +0800)]
fix bug in cross
yang [Thu, 19 Jul 2012 01:49:51 +0000 (09:49 +0800)]
fix bugs in add
yang [Wed, 18 Jul 2012 07:16:31 +0000 (15:16 +0800)]
fix the bugs in abs
1. typo error
2. logic error
yang [Mon, 25 Jun 2012 03:30:48 +0000 (11:30 +0800)]
Merge branch 'master' of github.com:projectNe10/Ne10 into cplusplus
Conflicts:
ReleaseNote.txt
yang [Thu, 21 Jun 2012 06:22:49 +0000 (14:22 +0800)]
allow the NE10 to be used in cplusplus programs
yang [Thu, 21 Jun 2012 02:20:53 +0000 (10:20 +0800)]
use the CMake to implement build system
1. added the CMakeLists.txt for cmake build system
2. added the config.cmake for cross-compiling
3. copy the NE10_test.c to ./test/ directory for test sample
4. updated ReleaseNote
Matthew DuPuy [Thu, 24 May 2012 06:56:30 +0000 (23:56 -0700)]
Merge pull request #21 from projectNe10/dev/raminzaghi-arm/patch0004_03_ABS_bug_fix
Dev/raminzaghi arm/patch0004 03 abs bug fix
Ramin Zaghi [Fri, 11 May 2012 13:13:14 +0000 (13:13 +0000)]
ABS bug fix...
Ramin Zaghi [Wed, 9 May 2012 13:52:20 +0000 (13:52 +0000)]
applied review #127.
Ramin Zaghi [Tue, 8 May 2012 13:06:47 +0000 (13:06 +0000)]
DST==SRC test corrections.
Ramin Zaghi [Tue, 8 May 2012 12:37:02 +0000 (12:37 +0000)]
added the new DST==SRC test case to the cross routine.
Ramin Zaghi [Tue, 8 May 2012 12:28:06 +0000 (12:28 +0000)]
Added header files for cross and dot that were not added to the public repo initially.