Displaying 20 results from an estimated 42 matches for "opus_arm_neon_intr".
2014 Dec 10
2
[RFC PATCH v3] cover: armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
...floating point.
Changes from RFCv2:
- Changes recommended by Timothy for celt_neon_intr.c
everything except, left the unrolled loop still unrolled
- configure.ac
- use AC_LINK_IFELSE instead of AC_COMPILE_IFELSE
- Moved compile flags into Makefile.am
- OPUS_ARM_NEON_INR --> typo --> OPUS_ARM_NEON_INTR
Viswanath Puttagunta (1):
armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
Makefile.am | 12 ++
celt/arm/arm_celt_map.c | 15 ++-
celt/arm/celt_neon_intr.c | 256 +++++++++++++++++++++++++++++++++++++++
celt/arm/pitch_arm.h | 13 +-
cel...
2015 May 15
0
[RFC V3 4/8] aarch64: Enable intrinsics for aarch64
...+++++++++----------------------
12 files changed, 67 insertions(+), 67 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 3a75740..8bd7447 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -47,7 +47,7 @@ if CPU_ARM
CELT_SOURCES += $(CELT_SOURCES_ARM)
SILK_SOURCES += $(SILK_SOURCES_ARM)
-if OPUS_ARM_NEON_INTR
+if HAVE_ARM_NEON_INTR
CELT_SOURCES += $(CELT_SOURCES_ARM_NEON_INTR)
endif
@@ -286,7 +286,7 @@ SSE4_1_OBJ = $(CELT_SOURCES_SSE4_1:.c=.lo) \
$(SSE4_1_OBJ) $(OPT_UNIT_TEST_OBJ): CFLAGS += $(OPUS_X86_SSE4_1_CFLAGS)
endif
-if OPUS_ARM_NEON_INTR
+if HAVE_ARM_NEON_INTR
CELT_ARM_NEON_INTR_OBJ = $...
2015 Nov 07
0
[Aarch64 03/11] Rename OPUS_ARM_NEON_INTR AM_CONDITIONAL as HAVE_ARM_NEON_INTR, for consistency with x86.
....am | 4 ++--
configure.ac | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 4d3a888..d256b45 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -47,7 +47,7 @@ if CPU_ARM
CELT_SOURCES += $(CELT_SOURCES_ARM)
SILK_SOURCES += $(SILK_SOURCES_ARM)
-if OPUS_ARM_NEON_INTR
+if HAVE_ARM_NEON_INTR
CELT_SOURCES += $(CELT_SOURCES_ARM_NEON_INTR)
endif
@@ -294,7 +294,7 @@ SSE4_1_OBJ = $(CELT_SOURCES_SSE4_1:.c=.lo) \
$(SSE4_1_OBJ) $(OPT_UNIT_TEST_OBJ): CFLAGS += $(OPUS_X86_SSE4_1_CFLAGS)
endif
-if OPUS_ARM_NEON_INTR
+if HAVE_ARM_NEON_INTR
CELT_ARM_NEON_INTR_OBJ = $...
2015 Nov 21
0
[Aarch64 v2 03/18] Rename OPUS_ARM_NEON_INTR AM_CONDITIONAL as HAVE_ARM_NEON_INTR, for consistency with x86.
....am | 4 ++--
configure.ac | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 4d3a888..d256b45 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -47,7 +47,7 @@ if CPU_ARM
CELT_SOURCES += $(CELT_SOURCES_ARM)
SILK_SOURCES += $(SILK_SOURCES_ARM)
-if OPUS_ARM_NEON_INTR
+if HAVE_ARM_NEON_INTR
CELT_SOURCES += $(CELT_SOURCES_ARM_NEON_INTR)
endif
@@ -294,7 +294,7 @@ SSE4_1_OBJ = $(CELT_SOURCES_SSE4_1:.c=.lo) \
$(SSE4_1_OBJ) $(OPT_UNIT_TEST_OBJ): CFLAGS += $(OPUS_X86_SSE4_1_CFLAGS)
endif
-if OPUS_ARM_NEON_INTR
+if HAVE_ARM_NEON_INTR
CELT_ARM_NEON_INTR_OBJ = $...
2014 Nov 21
0
[RFC PATCHv1] armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
...| 4 +-
13 files changed, 205 insertions(+), 25 deletions(-)
create mode 100644 celt/arm/celt_neon_intr.c
diff --git a/Makefile.am b/Makefile.am
index e20f7b4..0e9e120 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -38,6 +38,12 @@ CELT_SOURCES += $(CELT_SOURCES_SSE)
endif
endif
+if OPUS_ARM_NEON_INTR
+noinst_LTLIBRARIES = libarmneon.la
+libarmneon_la_SOURCES = $(CELT_SOURCES_ARM_NEON_INTR)
+libarmneon_la_CPPFLAGS = $(OPUS_ARM_NEON_INTR_CPPFLAGS) -I$(top_srcdir)/include
+endif
+
if CPU_ARM
CELT_SOURCES += $(CELT_SOURCES_ARM)
SILK_SOURCES += $(SILK_SOURCES_ARM)
@@ -59,6 +65,9 @@ include opus_h...
2014 Dec 19
2
[PATCH v1] cover: armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
Hi,
Optimizes celt_pitch_xcorr for ARM NEON floating point.
Changes from RFCv3:
- celt_neon_intr.c
- removed warnings due to not having constant pointers
- Put simpler loop to take care of corner cases. Unrolling using
intrinsics was not really mapping well to what was done
in celt_pitch_xcorr_arm.s
- Makefile.am
Removed explicit -O3 optimization
- test_unit_mathops.c,
2014 Nov 21
4
[RFC PATCHv1] cover: celt_pitch_xcorr: Introduce ARM neon intrinsics
Hello,
I received feedback from engineers working on NE10 [1] that
it would be better to use NE10 [1] for FFT optimizations for
opus use cases. However, these FFT patches are currently in review
and haven't been integrated into NE10 yet.
While the FFT functions in NE10 are getting baked, I wanted
to optimize the celt_pitch_xcorr (floating point only) and use
it to introduce ARM NEON
2013 Apr 11
0
No subject
...="$CFLAGS"
>> + save_CFLAGS="$CFLAGS"; CFLAGS="-mfpu=neon $CFLAGS"
>> + AC_COMPILE_IFELSE(
>> + [AC_LANG_PROGRAM([[#include <arm_neon.h>]], [])],
>> + [
>> + OPUS_ARM_NEON_INTR=1
>> + OPUS_ARM_NEON_INTR_CPPFLAGS="-mfpu=neon -O3"
>> + AC_SUBST(OPUS_ARM_NEON_INTR_CPPFLAGS)
>> + ],
>> + [
>> + OPUS_ARM_NEON_INTR=0
>> + ])
&...
2014 Dec 19
0
[PATCH v1] armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
...insertions(+), 19 deletions(-)
create mode 100644 celt/arm/celt_neon_intr.c
diff --git a/Makefile.am b/Makefile.am
index e20f7b4..95323ca 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -41,6 +41,12 @@ endif
if CPU_ARM
CELT_SOURCES += $(CELT_SOURCES_ARM)
SILK_SOURCES += $(SILK_SOURCES_ARM)
+
+if OPUS_ARM_NEON_INTR
+CELT_SOURCES += $(CELT_SOURCES_ARM_NEON_INTR)
+OPUS_ARM_NEON_INTR_CPPFLAGS = -mfpu=neon
+endif
+
if OPUS_ARM_EXTERNAL_ASM
nodist_libopus_la_SOURCES = $(CELT_SOURCES_ARM_ASM:.s=-gnu.S)
BUILT_SOURCES = $(CELT_SOURCES_ARM_ASM:.s=-gnu.S) \
@@ -260,3 +266,9 @@ if HAVE_SSE2
$(SSE_OBJ): CFLAGS += -ms...
2014 Dec 10
0
[RFC PATCH v3] armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
...insertions(+), 19 deletions(-)
create mode 100644 celt/arm/celt_neon_intr.c
diff --git a/Makefile.am b/Makefile.am
index e20f7b4..be53754 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -41,6 +41,12 @@ endif
if CPU_ARM
CELT_SOURCES += $(CELT_SOURCES_ARM)
SILK_SOURCES += $(SILK_SOURCES_ARM)
+
+if OPUS_ARM_NEON_INTR
+CELT_SOURCES += $(CELT_SOURCES_ARM_NEON_INTR)
+OPUS_ARM_NEON_INTR_CPPFLAGS = -mfpu=neon -O3
+endif
+
if OPUS_ARM_EXTERNAL_ASM
nodist_libopus_la_SOURCES = $(CELT_SOURCES_ARM_ASM:.s=-gnu.S)
BUILT_SOURCES = $(CELT_SOURCES_ARM_ASM:.s=-gnu.S) \
@@ -260,3 +266,9 @@ if HAVE_SSE2
$(SSE_OBJ): CFLAGS +=...
2014 Dec 07
0
[RFC PATCH v2] armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
...insertions(+), 19 deletions(-)
create mode 100644 celt/arm/celt_neon_intr.c
diff --git a/Makefile.am b/Makefile.am
index e20f7b4..0687814 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -41,6 +41,11 @@ endif
if CPU_ARM
CELT_SOURCES += $(CELT_SOURCES_ARM)
SILK_SOURCES += $(SILK_SOURCES_ARM)
+
+if OPUS_ARM_NEON_INTR
+CELT_SOURCES += $(CELT_SOURCES_ARM_NEON_INTR)
+endif
+
if OPUS_ARM_EXTERNAL_ASM
nodist_libopus_la_SOURCES = $(CELT_SOURCES_ARM_ASM:.s=-gnu.S)
BUILT_SOURCES = $(CELT_SOURCES_ARM_ASM:.s=-gnu.S) \
@@ -260,3 +265,9 @@ if HAVE_SSE2
$(SSE_OBJ): CFLAGS += -msse2
endif
endif
+
+if OPUS_ARM_NEON_INTR...
2014 Dec 07
2
[RFC PATCH v2] cover: armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
Hi,
Optimizes celt_pitch_xcorr for floating point.
Changes from RFCv1:
- Rebased on top of commit
aad281878: Fix celt_pitch_xcorr_c signature.
which got rid of ugly code around CELT_PITCH_XCORR_IMPL
passing of "arch" parameter.
- Unified with --enable-intrinsics used by x86
- Modified algorithm to be more in-line with algorithm in
celt_pitch_xcorr_arm.s
Viswanath Puttagunta
2014 Dec 19
2
[PATCH v1] armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
...t/arm/celt_neon_intr.c
>
> diff --git a/Makefile.am b/Makefile.am
> index e20f7b4..95323ca 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -41,6 +41,12 @@ endif
> if CPU_ARM
> CELT_SOURCES += $(CELT_SOURCES_ARM)
> SILK_SOURCES += $(SILK_SOURCES_ARM)
> +
> +if OPUS_ARM_NEON_INTR
> +CELT_SOURCES += $(CELT_SOURCES_ARM_NEON_INTR)
> +OPUS_ARM_NEON_INTR_CPPFLAGS = -mfpu=neon
> +endif
> +
> if OPUS_ARM_EXTERNAL_ASM
> nodist_libopus_la_SOURCES = $(CELT_SOURCES_ARM_ASM:.s=-gnu.S)
> BUILT_SOURCES = $(CELT_SOURCES_ARM_ASM:.s=-gnu.S) \
> @@ -260,3 +266,9 @@...
2014 Dec 07
3
[RFC PATCH v2] cover: armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
From: Viswanath Puttagunta <viswanath.puttagunta at linaro.org>
Hi,
Optimizes celt_pitch_xcorr for floating point.
Changes from RFCv1:
- Rebased on top of commit
aad281878: Fix celt_pitch_xcorr_c signature.
which got rid of ugly code around CELT_PITCH_XCORR_IMPL
passing of "arch" parameter.
- Unified with --enable-intrinsics used by x86
- Modified algorithm to be more
2014 Dec 18
2
[RFC PATCH v3] armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
Almost there... just a few nits left.
Viswanath Puttagunta wrote:
> +if OPUS_ARM_NEON_INTR
> +CELT_SOURCES += $(CELT_SOURCES_ARM_NEON_INTR)
> +OPUS_ARM_NEON_INTR_CPPFLAGS = -mfpu=neon -O3
I'll repeat: I don't think you should change the optimization level here.
> + /* Just unroll the rest of the loop */
I saw you decided to keep this unrolled, but you didn't act...
2014 Nov 28
2
[RFC PATCHv1] armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
Review comments inline.
> +if OPUS_ARM_NEON_INTR
> +noinst_LTLIBRARIES = libarmneon.la
> +libarmneon_la_SOURCES = $(CELT_SOURCES_ARM_NEON_INTR)
> +libarmneon_la_CPPFLAGS = $(OPUS_ARM_NEON_INTR_CPPFLAGS) -I$(top_srcdir)/include
> +endif
I don't think these should be in a separate library. It brings with it
lots of complications (...
2014 Dec 09
1
[RFC PATCH v2] armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
...sumi += xi[i] * yi[i];
> + *sum = sumi;
This bounces things through the stack into vfp registers, which is a
huge stall. I'd continue to use NEON here with
vld1_dup_f32()/vmla_f32()/etc.
> +}
> +#if ((defined(OPUS_ARM_ASM) && defined(FIXED_POINT)) \
> + || defined(OPUS_ARM_NEON_INTR))
> #include "arm/arm_celt_map.c"
> #endif
>
> +
Unrelated whitespace change.
> - inline_optimization="No ASM for your platform, please send patches"
> + inline_optimization="No in-line ASM for your platform, please send patches"
"in...
2014 Dec 18
0
[RFC PATCH v3] armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
...t it as PATCHv1..
since the patch is almost there and there are no major objections any
more..
Regards,
Vish
On 17 December 2014 at 23:59, Timothy B. Terriberry <tterribe at xiph.org> wrote:
>
> Almost there... just a few nits left.
>
> Viswanath Puttagunta wrote:
> > +if OPUS_ARM_NEON_INTR
> > +CELT_SOURCES += $(CELT_SOURCES_ARM_NEON_INTR)
> > +OPUS_ARM_NEON_INTR_CPPFLAGS = -mfpu=neon -O3
>
> I'll repeat: I don't think you should change the optimization level here.
After you feedback, I moved this part from configure.ac to
Makefile.am.. If it doesn't be...
2015 Mar 18
5
[RFC PATCH v1 0/4] Enable aarch64 intrinsics/Ne10
Hi All,
Since I continue to base my work on top of Jonathan's patch,
and my previous Ne10 fft/ifft/mdct_forward/backward patches,
I thought it would be better to just post all new patches
as a patch series. Please let me know if anyone disagrees
with this approach.
You can see wip branch of all latest patches at
https://git.linaro.org/people/viswanath.puttagunta/opus.git
Branch:
2014 Dec 01
0
[RFC PATCHv1] armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics
Hello Timothy,
Appreciate the thorough review. Have a few questions before I re-spin
the patch in-line.
On 28 November 2014 at 15:52, Timothy B. Terriberry <tterribe at xiph.org> wrote:
> Review comments inline.
>
>> +if OPUS_ARM_NEON_INTR
>> +noinst_LTLIBRARIES = libarmneon.la
>> +libarmneon_la_SOURCES = $(CELT_SOURCES_ARM_NEON_INTR)
>> +libarmneon_la_CPPFLAGS = $(OPUS_ARM_NEON_INTR_CPPFLAGS) -I$(top_srcdir)/include
>> +endif
>
> I don't think these should be in a separate library. It brings with it...