openblas defaults to detecting the runtime system and picking the best code
to run for that computer.

The recommendation to remove `sys.so` has been deprecated. Setting ARCH /
MARCH is now the preferred solution. (note that core2 is not the least
common denominator, since there exist some AMD chips without some of the
core2 instructions – instead use x86_64 / x86-64)


On Wed, Sep 10, 2014 at 10:17 PM, Glen Hertz <[email protected]> wrote:

> Hi,
>
> I'm trying to deploy Julia to users in a compute farm environment with
> many machines running on different CPUs.  This has been discussed here:
>
>
> https://groups.google.com/forum/?fromgroups=#!searchin/julia-users/make$20dist/julia-users/B8x6CYbFUNY/Ph5Cunhl5EwJ
>
> The recommendation was to use `make dist` which builds a tarball that
> doesn't include `sys.so` and you can move it to any machine.  With the 0.3
> release `make dist` builds `sys.so` so I removed it but the executable is
> still not portable.  What are the most likely steps to build Julia so it
> works on different hardware?  I did something like this (on a RHEL 5.5
> system):
>
> "Make.user":
> FC=gfortran44
> CC=gcc44
> CXX=g++44
> MARCH=core2
> OPENBLAS_TARGET_ARCH=CORE2
>
> (I updated binutils, python and patchelf).
>
> When I run `make dist` it crease a tarball with a `sys.so` so I deleted
> it.  It still segfaults.
>
> It doesn't seem like `OPENBLAS_TARGET_ARCH` is working since
> `versioninfo()` shows it was compiled for `Nehalem`.  Note, to rebuild I
> did:
>
> ```
> cp Make.user ..
> git clean -xdf
> cp ../Make.user .
> make dist
> ```
>
> Please let me know if there is something better I can try out and if I get
> something working I can update the documentation.
>
> Thanks,
>
> Glen
>
>

Reply via email to