summaryrefslogtreecommitdiff
path: root/libre/arrayfire
diff options
context:
space:
mode:
authorAndré Fabian Silva Delgado <emulatorman@parabola.nu>2016-09-29 11:22:09 -0300
committerAndré Fabian Silva Delgado <emulatorman@parabola.nu>2016-09-29 11:22:09 -0300
commit33bb9edf120c0c408f7337ba57723e60bbd08006 (patch)
treeaaf4bf7a7a55d09bf9fcbd1a5f7f7ffae5c227e9 /libre/arrayfire
parent528052f3eaa47b022484cbcc419a7bb5ceda8f35 (diff)
downloadabslibre-33bb9edf120c0c408f7337ba57723e60bbd08006.tar.gz
abslibre-33bb9edf120c0c408f7337ba57723e60bbd08006.tar.bz2
abslibre-33bb9edf120c0c408f7337ba57723e60bbd08006.zip
arrayfire-3.4.0-1.parabola1: updating version
Diffstat (limited to 'libre/arrayfire')
-rw-r--r--libre/arrayfire/PKGBUILD11
-rw-r--r--libre/arrayfire/remove-nonfree-references.patch70
2 files changed, 46 insertions, 35 deletions
diff --git a/libre/arrayfire/PKGBUILD b/libre/arrayfire/PKGBUILD
index 1ea08f49c..6601ded8f 100644
--- a/libre/arrayfire/PKGBUILD
+++ b/libre/arrayfire/PKGBUILD
@@ -3,7 +3,7 @@
pkgname=arrayfire
pkgdesc="High performance software library for parallel computing with an easy-to-use API, without nonfree cuda and nvidia-utils support and nonfree SIFT algorithm"
url='http://arrayfire.com'
-pkgver=3.3.2
+pkgver=3.4.0
arch=('i686' 'x86_64' 'armv7h')
pkgrel=1.parabola1
license=('BSD')
@@ -13,13 +13,14 @@ optdepends=('libclc: Required for using OpenCL backend')
mksource=(http://arrayfire.com/arrayfire_source/arrayfire-full-${pkgver}.tar.bz2)
source=(https://repo.parabola.nu/other/${pkgname}-libre/${pkgname}-libre-full-${pkgver}.tar.bz2
remove-nonfree-references.patch)
-mkmd5sums=('01d8d3d498291cf77da9461e34d3671c')
-md5sums=('8f3e13dfb0fd8ce8aa7874762c53cdc3'
- 'a826b39647d3b48295dd727a2d74fb6a')
+mkmd5sums=('f9330906c122007287e092c9282c0f97')
+md5sums=('830fab3295a7c682be63a43eaf2bdf92'
+ '5b6a5dcb4461aa2b7b5369294836fe7c')
check() {
cd "${srcdir}/arrayfire-full-${pkgver}/build"
+ # Some tests fail :(
#make test
}
@@ -75,7 +76,7 @@ build() {
-DBUILD_SIFT=OFF \
-DBUILD_CUDA=OFF
- make -j1
+ make
}
package() {
diff --git a/libre/arrayfire/remove-nonfree-references.patch b/libre/arrayfire/remove-nonfree-references.patch
index b9b183543..8dbe953f3 100644
--- a/libre/arrayfire/remove-nonfree-references.patch
+++ b/libre/arrayfire/remove-nonfree-references.patch
@@ -1,5 +1,5 @@
diff --git a/docs/layout.xml b/docs/layout.xml
-index 0b272f6..971c00a 100644
+index d2f18bc..292e7d8 100644
--- a/docs/layout.xml
+++ b/docs/layout.xml
@@ -5,8 +5,6 @@
@@ -9,8 +9,8 @@ index 0b272f6..971c00a 100644
- <tab type="user" url="\ref using_on_windows" visible="yes" title="Using on Windows"/>
- <tab type="user" url="\ref using_on_osx" visible="yes" title="Using on OSX"/>
<tab type="user" url="\ref gettingstarted" visible="yes" title="Getting Started"/>
- <tab type="user" url="\ref unifiedbackend" visible="yes" title="Unified Backend"/>
- <tab type="user" url="\ref matrixmanipulation" visible="yes" title="Matrix Manipulation"/>
+ <tab type="user" url="\ref vectorization" visible="yes" title="Introduction to Vectorization"/>
+ <tab type="user" url="\ref matrixmanipulation" visible="yes" title="Array and Matrix Manipulation"/>
diff --git a/docs/pages/README.md b/docs/pages/README.md
index 8a395a7..46011ca 100644
--- a/docs/pages/README.md
@@ -86,7 +86,7 @@ index 8a395a7..46011ca 100644
author = {Yalamanchili, Pavan and Arshad, Umar and Mohammed, Zakiuddin and Garigipati, Pradeep and Entschev, Peter and Kloppenborg, Brian and Malcolm, James and Melonakos, John},
publisher = {AccelerEyes},
diff --git a/docs/pages/configuring_arrayfire_environment.md b/docs/pages/configuring_arrayfire_environment.md
-index d554046..526d4cc 100644
+index 33c5a39..36b52b7 100644
--- a/docs/pages/configuring_arrayfire_environment.md
+++ b/docs/pages/configuring_arrayfire_environment.md
@@ -28,19 +28,6 @@ detailed. This helps in locating the exact failure.
@@ -110,27 +110,36 @@ index d554046..526d4cc 100644
-------------------------------------------------------------------------------
diff --git a/docs/pages/getting_started.md b/docs/pages/getting_started.md
-index c1ae05e..202baf2 100644
+index 7ea9a75..21a3dfe 100644
--- a/docs/pages/getting_started.md
+++ b/docs/pages/getting_started.md
-@@ -41,7 +41,6 @@ For example:
+@@ -70,14 +70,12 @@ For example:
\snippet test/getting_started.cpp ex_getting_started_init
- ArrayFire also supports array initialization from a device pointer.
--For example ArrayFire can be populated directly by a call to `cudaMemcpy`
+ ArrayFire also supports array initialization from memory already on the GPU.
+-For example, with CUDA one can populate an `array` directly using a call
+-to `cudaMemcpy`:
++For example:
\snippet test/getting_started.cpp ex_getting_started_dev_ptr
-@@ -69,7 +68,7 @@ Most of ArrayFire's functions operate on an element-wise basis.
- This means that function like `c[i] = a[i] + b[i]` could simply be written
- as `c = a + b`.
- ArrayFire has an intelligent runtime JIT compliation engine which converts
--array expressions into the smallest number of OpenCL/CUDA kernels.
-+array expressions into the smallest number of OpenCL kernels.
- This "kernel fusion" technology not only decreases the number of kernel calls,
- but, more importantly, avoids extraneous global memory operations.
- Our JIT functionality extends across C/C++ function boundaries and only ends
-@@ -100,7 +99,7 @@ using the `af::` namespace.
+ Similar functionality exists for OpenCL too. If you wish to intermingle
+-ArrayFire with CUDA or OpenCL code, we suggest you consult the
+-[CUDA interoperability](\ref interop_cuda) or
++ArrayFire with OpenCL code, we suggest you consult the
+ [OpenCL interoperability](\ref interop_opencl) pages for detailed instructions.
+
+ # ArrayFire array contents, dimensions, and properties {#getting_started_array_properties}
+@@ -111,7 +109,7 @@ full documentation on the [array](\ref af::array).
+ # Writing mathematical expressions in ArrayFire {#getting_started_writing_math}
+
+ ArrayFire features an intelligent Just-In-Time (JIT) compilation engine that
+-converts expressions using arrays into the smallest number of CUDA/OpenCL
++converts expressions using arrays into the smallest number of OpenCL
+ kernels. For most operations on arrays, ArrayFire functions like a vector library.
+ That means that an element-wise operation, like `c[i] = a[i] + b[i]` in C,
+ would be written more concisely without indexing, like `c = a + b`.
+@@ -153,7 +151,7 @@ using the `af::` namespace.
# Indexing {#getting_started_indexing}
Like all functions in ArrayFire, indexing is also executed in parallel on
@@ -139,18 +148,19 @@ index c1ae05e..202baf2 100644
Because of this, indexing becomes part of a JIT operation and is accomplished
using parentheses instead of square brackets (i.e. as `A(0)` instead of `A[0]`).
To index `af::array`s you may use one or a combination of the following functions:
-@@ -123,8 +122,8 @@ and device()](\ref af::array::device) functions.
- The `host` function *copies* the data from the device and makes it available
- in a C-style array on the host.
- The `device` function returns a pointer to device memory for interoperability
--with external CUDA/OpenCL kernels.
+@@ -177,9 +175,9 @@ The `host` function *copies* the data from the device and makes it available
+ in a C-style array on the host. As such, it is up to the developer to manage
+ any memory returned by `host`.
+ The `device` function returns a pointer/reference to device memory for
+-interoperability with external CUDA/OpenCL kernels. As this memory belongs to
++interoperability with external OpenCL kernels. As this memory belongs to
+ ArrayFire, the programmer should not attempt to free/deallocate the pointer.
-For example, here is how we can interact with both OpenCL and CUDA:
-+with external OpenCL kernels.
+For example, here is how we can interact with OpenCL:
\snippet test/getting_started.cpp ex_getting_started_ptr
-@@ -194,8 +193,7 @@ simply include the `arrayfire.h` header file and start coding!
+@@ -249,8 +247,7 @@ simply include the `arrayfire.h` header file and start coding!
Now that you have a general introduction to ArrayFire, where do you go from
here? In particular you might find these documents useful
@@ -161,10 +171,10 @@ index c1ae05e..202baf2 100644
diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md
-index 7aa3878..186e183 100644
+index bdcd911..854be12 100644
--- a/docs/pages/release_notes.md
+++ b/docs/pages/release_notes.md
-@@ -433,7 +433,6 @@ v3.1.1
+@@ -672,7 +672,6 @@ v3.1.1
Installers
-----------
@@ -172,7 +182,7 @@ index 7aa3878..186e183 100644
* OpenCL backend now require OpenCL 1.2 or greater
Bug Fixes
-@@ -513,10 +512,6 @@ Function Additions
+@@ -752,10 +751,6 @@ Function Additions
* \ref saveArray() and \ref readArray() - Stream arrays to binary files
* \ref toString() - toString function returns the array and data as a string
@@ -183,7 +193,7 @@ index 7aa3878..186e183 100644
Improvements
------------
* dot
-@@ -540,11 +535,6 @@ Improvements
+@@ -779,11 +774,6 @@ Improvements
* CPU Backend
* Device properties for CPU
* Improved performance when all buffers are indexed linearly
@@ -195,7 +205,7 @@ index 7aa3878..186e183 100644
* OpenCL Backend
* Improve compilation times for OpenCL backend
* Performance improvements for non-linear JIT kernels on OpenCL
-@@ -578,7 +568,7 @@ New Examples
+@@ -817,7 +807,7 @@ New Examples
Installer
----------
* Fixed bug in automatic detection of ArrayFire when using with CMake in Windows