diff options
author | eb | 2008-05-04 06:45:19 +0000 |
---|---|---|
committer | eb | 2008-05-04 06:45:19 +0000 |
commit | d5e5244a9ce8c5c3847c133c1107fba2af0e90c3 (patch) | |
tree | 3e4c894861ad17e9a7fd37416126fb69cef26983 /gcell/src/lib/spu | |
parent | b1f675f291e9bcae640bd6fcb6707d50951f0268 (diff) | |
download | gnuradio-d5e5244a9ce8c5c3847c133c1107fba2af0e90c3.tar.gz gnuradio-d5e5244a9ce8c5c3847c133c1107fba2af0e90c3.tar.bz2 gnuradio-d5e5244a9ce8c5c3847c133c1107fba2af0e90c3.zip |
Merged eb/gcell-wip -r8302:8307 into trunk. This changeset includes
an example of SPE assembler (memset.S), a new file of macros for use
with SPE assembler (gc_spu_macs.h), and an extended QA framework. The
easy to use QA framework adds support for SPE utility code that's
usually not called from the PPE, such as memset. See
qa_gcell_general.{h,cc} and qa_memset.c for example usage.
memset achieves 44GB/s on the SPE. That's within 3% of ideal.
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@8308 221aa14e-8319-0410-a670-987f0aec2ac5
Diffstat (limited to 'gcell/src/lib/spu')
-rw-r--r-- | gcell/src/lib/spu/Makefile.am | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/gcell/src/lib/spu/Makefile.am b/gcell/src/lib/spu/Makefile.am index 3c96d8f30..61ef7c8f4 100644 --- a/gcell/src/lib/spu/Makefile.am +++ b/gcell/src/lib/spu/Makefile.am @@ -58,15 +58,19 @@ runtime_spu_noinst_headers = \ general_srcdir = $(srcdir)/../general/spu general_spu_sources = \ - $(general_srcdir)/fft_1d_r2.c + $(general_srcdir)/fft_1d_r2.c \ + $(general_srcdir)/memset.S general_spu_headers = \ $(general_srcdir)/libfft.h general_spu_noinst_headers = \ $(general_srcdir)/fft_1d.h \ - $(general_srcdir)/fft_1d_r2.h + $(general_srcdir)/fft_1d_r2.h +# The QA code for (usually) non-PPE visible support routines in lib/general/spu +general_spu_qa_sources = \ + $(general_srcdir)/qa_memset.c # ---------------------------------------------------------------- # files in the lib/wrapper/spu directory @@ -99,16 +103,27 @@ noinst_HEADERS = \ $(wrapper_spu_noinst_headers) # ---------------------------------------------------------------- -# SPU executables +# build some SPU executables noinst_PROGRAMS = \ gcell_all \ - gcell_runtime_qa + gcell_runtime_qa \ + gcell_general_qa -# all known gcell procs (at least until they get too big) +# +# All known non-QA gcell procs (at least until they get too big). +# gcell_all_SOURCES = $(wrapper_spu_sources) gcell_all_LDADD = libgcell_spu.a -# just the QA code required for testing the runtime +# +# The QA code required for testing the runtime. +# gcell_runtime_qa_SOURCES = $(runtime_srcdir)/gcell_runtime_qa.c gcell_runtime_qa_LDADD = libgcell_spu.a + +# +# The QA code required for testing the SPE support routines in lib/general/spu +# +gcell_general_qa_SOURCES = $(general_spu_qa_sources) +gcell_general_qa_LDADD = libgcell_spu.a |