# ArrayFire.jl v1.0.1 released

**URL:** https://discourse.julialang.org/t/arrayfire-jl-v1-0-1-released/20334
**Category:** Package Announcements
**Tags:** gpu
**Created:** [January 31, 2019, 9:51pm UTC](https://discourse.julialang.org/t/arrayfire-jl-v1-0-1-released/20334 "2019-01-31T21:51:27Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![anon43133060](https://avatars.discourse-cdn.com/v4/letter/a/57b2e6/32.png) [@anon43133060](https://discourse.julialang.org/u/anon43133060)
#### Post date: [January 31, 2019, 9:51pm UTC](https://discourse.julialang.org/t/arrayfire-jl-v1-0-1-released/20334/1 "2019-01-31T21:51:27Z")

</div>

ArrayFire.jl v1.0.1 has been released to fully support Julia v1.x . It is a wrapper around excellent GPU computing and graphics library [ArrayFire](https://github.com/arrayfire/arrayfire).

The most important “feature” of this release is that the need for manual memory management is gone. By hooking up Julia’s incremental garbage collector with `GC.gc(false)` it is now possible to achieve even better performance than it was possible with `@afgc` (to track scope) and manual `finalize`. You can fine tune by `setafgcthreshold` to about half of your GPU available memory (default is 4Gb == 8Gb GPU ram) and that’s it.

Feedback much appreciated.

---

<div class="post-metadata">

### Author: ![xiaodai](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/xiaodai/32/15937_2.png) [@xiaodai](https://discourse.julialang.org/u/xiaodai)
#### Post date: [February 1, 2019, 12:19am UTC](https://discourse.julialang.org/t/arrayfire-jl-v1-0-1-released/20334/2 "2019-02-01T00:19:36Z")

</div>

There is a link to arrayfire but not to arrayfire.jl. hehe

---

<div class="post-metadata">

### Author: ![improbable22](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/improbable22/32/5464_2.png) [@improbable22](https://discourse.julialang.org/u/improbable22)
#### Post date: [February 1, 2019, 10:27am UTC](https://discourse.julialang.org/t/arrayfire-jl-v1-0-1-released/20334/3 "2019-02-01T10:27:57Z")

</div>

Apologies if this is a dumb question, but how do I install this?

After downloading the installer for mac, and looking at the [readme](https://github.com/JuliaComputing/ArrayFire.jl#troubleshooting), the only `libaf` files I can find are in `/opt/arrayfire/lib`, and but this doesn’t work:

```julia
julia> ENV["LD_LIBRARY_PATH"] = "/opt/arrayfire/lib"
"/opt/arrayfire/lib"

julia> using ArrayFire
[Info: Recompiling stale cache file /Users/improbable22/.julia/compiled/v1.1/ArrayFire/SIACH.ji for ArrayFire [b19378d9-d87a-599a-927f-45f220a2c452]
ERROR: InitError: error compiling __init__ : could not load library "libaf"
dlopen(libaf.dylib, 1): image not found
Stacktrace:
 [1] _include_from_serialized(::String, ::Array{Any,1}) at ./loading.jl:633

```

---

<div class="post-metadata">

### Author: ![anon43133060](https://avatars.discourse-cdn.com/v4/letter/a/57b2e6/32.png) [@anon43133060](https://discourse.julialang.org/u/anon43133060)
#### Post date: [February 1, 2019, 5:07pm UTC](https://discourse.julialang.org/t/arrayfire-jl-v1-0-1-released/20334/4 "2019-02-01T17:07:42Z")

</div>

Sorry, I’m not on a mac, can you try following workarounds suggested in [Installation error on macOS with Julia 0.6.2 · Issue #205 · JuliaGPU/ArrayFire.jl · GitHub](https://github.com/JuliaComputing/ArrayFire.jl/issues/205) ?

---

<div class="post-metadata">

### Author: ![improbable22](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/improbable22/32/5464_2.png) [@improbable22](https://discourse.julialang.org/u/improbable22)
#### Post date: [February 1, 2019, 5:17pm UTC](https://discourse.julialang.org/t/arrayfire-jl-v1-0-1-released/20334/5 "2019-02-01T17:17:50Z")

</div>

Ah thanks, I didn’t look in the issues. I tried some things from there… and I can get different errors! But am not sure what to make of them:

```julia
julia> using Libdl,Random,SparseArrays,LinearAlgebra,FFTW,DSP,Statistics
[Info: Recompiling stale cache file /Users/.../.julia/compiled/v1.1/DSP/OtML7.ji for DSP [717857b8-e6f2-59f4-9121-6e50c889abd2]

julia> ENV["DYLD_LIBRARY_PATH"]
"/opt/arrayfire/lib"

julia> using ArrayFire
[Info: Recompiling stale cache file /Users/.../.julia/compiled/v1.1/ArrayFire/SIACH.ji for ArrayFire [b19378d9-d87a-599a-927f-45f220a2c452]
ERROR: InitError: ArrayFire Error (501) : Failed to load dynamic library. 
Error in af_err unified::AFSymbolManager::call(const char *, CalleeArgs...) [CalleeArgs = <>]
In file src/api/unified/symbol_manager.hpp:61
Failed to load dynamic library. See http://www.arrayfire.com/docs/unifiedbackend.htm for instructions to set up environment for Unified backend.

Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] _error(::UInt32, ::Bool) at /Users/.../.julia/packages/ArrayFire/Tx4Iq/src/util.jl:96
 [3] _error at /Users/.../.julia/packages/ArrayFire/Tx4Iq/src/util.jl:85 [inlined]
 [4] afinit at /Users/.../.julia/packages/ArrayFire/Tx4Iq/src/wrap.jl:996 [inlined]

```

When I try `otool` as suggested I get this error:

```julia
$ otool -L af
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump: 'af': No such file or directory

```

---

<div class="post-metadata">

### Author: ![anon43133060](https://avatars.discourse-cdn.com/v4/letter/a/57b2e6/32.png) [@anon43133060](https://discourse.julialang.org/u/anon43133060)
#### Post date: [February 1, 2019, 5:28pm UTC](https://discourse.julialang.org/t/arrayfire-jl-v1-0-1-released/20334/6 "2019-02-01T17:28:22Z")

</div>

> [@improbable22](#):
>
> ERROR: InitError: ArrayFire Error (501) : Failed to load dynamic library. Error in af\_err unified::AFSymbolManager::call(const char \*, CalleeArgs…) [CalleeArgs = \<\>] In file src/api/unified/symbol\_manager.hpp:61 Failed to load dynamic library. See [ArrayFire: Unified Backend](http://www.arrayfire.com/docs/unifiedbackend.htm) for instructions to set up environment for Unified backend.

That error comes from array fire library itself, not the wrapper. You can try asking it on the [Create a better error message for unified backend failures · Issue #2346 · arrayfire/arrayfire · GitHub](https://github.com/arrayfire/arrayfire/issues/2346) or enter a bug that is mac specific .

---

<div class="post-metadata">

### Author: ![improbable22](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/improbable22/32/5464_2.png) [@improbable22](https://discourse.julialang.org/u/improbable22)
#### Post date: [February 1, 2019, 5:29pm UTC](https://discourse.julialang.org/t/arrayfire-jl-v1-0-1-released/20334/7 "2019-02-01T17:29:48Z")

</div>

OK, thanks! Will try a bit more next week.
