Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

inv(Matrix{Float64}) makes julia exit without any error #6504

Closed
SimonDanisch opened this issue Apr 11, 2014 · 87 comments · Fixed by #7459
Closed

inv(Matrix{Float64}) makes julia exit without any error #6504

SimonDanisch opened this issue Apr 11, 2014 · 87 comments · Fixed by #7459
Labels
bug Indicates an unexpected problem or unintended behavior system:windows Affects only Windows upstream The issue is with an upstream dependency, e.g. LLVM
Milestone

Comments

@SimonDanisch
Copy link
Contributor

Using the Color package made Julia exit without any message whatsoever.
I pinned the error down to Color.jl line 616

const CAT97s = [ 0.8562  0.3372 -0.1934
                -0.8360  1.8327  0.0033
                 0.0357 -0.0469  1.0112 ]
const CAT97s_INV = inv(CAT97s)

Same behaviour in the Julia readline.
After playing around with it a little, it seems it doesn't like a 3x3 matrix:
inv(rand(3,3)) makes Julia also fail without any feedback.
The error seems to be somewhere in inv{T}(F::Factorization{T}) at linalg/factorization.jl:795

versioninfo(true) :

Julia Version 0.3.0-prerelease+2591
Commit 550866d (2014-04-10 22:42 UTC)
Platform Info:
System: Windows (x86_64-w64-mingw32)
CPU: Intel(R) Core(TM) i5-4200U CPU @ 1.60GHz
WORD_SIZE: 64
Microsoft Windows [Version 6.3.9600]
uname: MINGW32_NT-6.2 1.0.12(0.46/3/2) 2011-07-20 17:52 i686 unknown
Memory: 7.914325714111328 GB (3898.83984375 MB free)
Uptime: 41389.478131 sec
Load Avg: 0.0 0.0 0.0
Intel(R) Core(TM) i5-4200U CPU @ 1.60GHz:
speed user nice sys idle irq ticks
#1 2295 MHz 1488812 0 757703 38903406 26234 ticks
#2 2295 MHz 1430765 0 815171 38903406 157046 ticks
#3 2295 MHz 1644765 0 702296 38802281 5062 ticks
#4 2295 MHz 1345656 0 588609 39215078 2656 ticks

BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY)
LAPACK: libopenblas
LIBM: libopenlibm
Environment:
APR_ICONV_PATH = C:\Program Files (x86)\Subversion\iconv
HOMEDRIVE = C:
HOMEPATH = \Users\Sim
JULIA_EDITOR = start
PATHEXT = .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
VBOX_INSTALL_PATH = C:\Program Files\Oracle\VirtualBox\

Package Directory: C:\Users\Sim.julia\v0.3
6 required packages:

  • Color 0.2.9
  • DictUtils 0.0.0
  • GLUT 0.3.0
  • ImmutableArrays 0.0.4
  • Match 0.0.3
  • SDL 0.1.0
    12 additional packages:
  • BinDeps 0.2.12
  • Cartesian 0.1.5
  • Events 0.0.0- master (unregistered, dirty)
  • GLUtil 0.0.0- master (unregistered, dirty)
  • GetC 1.1.1
  • Images 0.2.34
  • ModernGL 0.0.0- master (unregistered)
  • OpenGL 1.1.3
  • SIUnits 0.0.1
  • TexExtensions 0.0.1
  • URIParser 0.0.1
  • Zlib 0.1.6
@mbauman
Copy link
Member

mbauman commented Apr 11, 2014

I happen to be on the exact same commit, but on OS X, and I cannot reproduce (using either inv(rand(3,3)) or inv(CAT97s)).

@arnim
Copy link

arnim commented Apr 11, 2014

Commit 742593f* (6 days old master)
x86_64-apple-darwin13.1.0

Works just fine for inv(rand(3,3)) as well.

Maybe you can run the tests and see if there are some other things that fail?

@SimonDanisch
Copy link
Contributor Author

It says in big friendly letters: SUCCESS.
I hope I did it right, though.
I went to JULIA_HOME/share/julia/test and then I executed $julia runtests.jl

@SimonDanisch
Copy link
Contributor Author

I tested it a little more. It seems like it happens with all odd dimensions.

@tkelman
Copy link
Contributor

tkelman commented Apr 12, 2014

I cannot reproduce this, at the same commit on Windows:

julia> inv(rand(3,3))
3x3 Array{Float64,2}:
  0.296319   1.3562    -1.95925
 -0.51922   -0.320154   2.6635
  2.06626   -0.608049   0.738967

julia> versioninfo()
Julia Version 0.3.0-prerelease+2591
Commit 550866d* (2014-04-10 22:42 UTC)
Platform Info:
  System: Windows (x86_64-w64-mingw32)
  CPU: Intel(R) Core(TM) i7-2630QM CPU @ 2.00GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY)
  LAPACK: libopenblas
  LIBM: libopenlibm

@SimonDanisch
Copy link
Contributor Author

I downloaded the new nightly, same story!

C:\Users\Sim>julia
julia> inv(rand(3,3))
C:\Users\Sim>julia
julia> versioninfo()
Julia Version 0.3.0-prerelease+2599
Commit bf7096c (2014-04-11 23:52 UTC)
Platform Info:
  System: Windows (x86_64-w64-mingw32)
  CPU: Intel(R) Core(TM) i5-4200U CPU @ 1.60GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY)
  LAPACK: libopenblas
  LIBM: libopenlibm

@andreasnoack
Copy link
Member

Long shot, but could you try blas_set_num_threads(1) before running inv?

@SimonDanisch
Copy link
Contributor Author

That actually works!

2014-04-12 10:47 GMT+02:00 Andreas Noack Jensen notifications@github.com:

Long shot, but could you try blas_set_num_threads(1) before running inv?

Reply to this email directly or view it on GitHubhttps://github.com//issues/6504#issuecomment-40275399
.

@andreasnoack
Copy link
Member

It is not the first time that OpenBLAS has had multithreading bugs on Windows. Could you file an issue at their GitHub site?

@tkelman
Copy link
Contributor

tkelman commented Apr 12, 2014

Haswell OpenBlas threading problem then? Probably good idea to try OpenBlas 0.2.9.rc2 before opening an issue, as it may be a bug they fixed already. Do you have a MinGW build environment set up? If not, try replacing libopenblas.dll with the binary from http://sourceforge.net/projects/openblas/files/v0.2.9.rc2/OpenBLAS-v0.2.9.rc2-x86_64-Win.zip nevermind that won't work, that binary isn't using 64-bit integers.

Oh and for future reference, you got most of the test-running process right, but you want to do julia runtests.jl all, not just julia runtests.jl.

@SimonDanisch
Copy link
Contributor Author

No, I actually don't have anything set up. It's sometimes quite painful to
build with windows, so I rather stay with Linux;)

2014-04-12 11:02 GMT+02:00 Tony Kelman notifications@github.com:

Haswell OpenBlas threading problem then? Probably good idea to try
OpenBlas 0.2.9.rc2 before opening an issue, as it may be a bug they fixed
already. Do you have a MinGW build environment set up?

Reply to this email directly or view it on GitHubhttps://github.com//issues/6504#issuecomment-40275618
.

@tkelman
Copy link
Contributor

tkelman commented Apr 12, 2014

The windows build is slow the first time and breaks often, but so far not in unfixable ways.
Cross-compile then?

@SimonDanisch
Copy link
Contributor Author

Hm, with the x64_86 binaries, Julia says: ERROR: OpenBLAS was not built
with 64bit integer support.

2014-04-12 11:17 GMT+02:00 Tony Kelman notifications@github.com:

The windows build is slow the first time and breaks often, but so far not
in unfixable ways.
Cross-compile then?

Reply to this email directly or view it on GitHubhttps://github.com//issues/6504#issuecomment-40275843
.

@SimonDanisch
Copy link
Contributor Author

Oh I see... Well here come the errors:

        From worker 4:       * linalg3
        From worker 2:       * linalg1
        From worker 3:       * linalg2
        From worker 5:       * core
        From worker 5:       * keywordargs
        From worker 5:       * numbers
exception on 2: ERROR: assertion failed: |cond(a,Inf) - 375.7017682707787| <= 0.
01
  cond(a,Inf) = 377.32187
  375.7017682707787 = 375.7017682707787
  difference = 1.6201006257056747 > 0.01
 in error at error.jl:22
 in test_approx_eq at test.jl:109
 in anonymous at no file:14
 in runtests at C:\Users\Sim\AppData\Local\Julia 0.3.0-prerelease\share\julia\te
st\testdefs.jl:5
 in anonymous at multi.jl:824
 in run_work_thunk at multi.jl:590
 in anonymous at task.jl:824
while loading linalg1.jl, in expression starting on line 9
exception on 4: ERROR: assertion failed: |det($(Expr(:', :(a[:,1:2] * x - b))) *
 (a[:,1:2] * x - b)) - convert(elty,4.437969924812031)| <= 0.00476837158203125
  det($(Expr(:', :(a[:,1:2] * x - b))) * (a[:,1:2] * x - b)) = 4.328434f0 + 1.39
48083f0im
  convert(elty,4.437969924812031) = 4.43797f0 + 0.0f0im
  difference = 1.3991027 > 0.00476837158203125
 in error at error.jl:22
 in test_approx_eq at test.jl:109
 in anonymous at no file:14
 in runtests at C:\Users\Sim\AppData\Local\Julia 0.3.0-prerelease\share\julia\te
st\testdefs.jl:5
 in anonymous at multi.jl:824
 in run_work_thunk at multi.jl:590
 in anonymous at task.jl:824
while loading linalg3.jl, in expression starting on line 4
exception on 3: ERROR: assertion failed: |W * v - F * v| <= 0.02384185791015625
  W * v = Complex{Float32}[5.411544f0 + 0.0f0im,5.3362956f0 + 0.0f0im,-1.6706779
f0 + 0.0f0im,-1.1320411f0 + 0.0f0im,-2.3926892f0 + 0.0f0im]
  F * v = Complex{Float32}[4.9138784f0 - 3.4160316f0im,4.4354544f0 - 5.271185f0i
m,-1.3091786f0 + 2.1735759f0im,-1.1513414f0 + 0.1880764f0im,-2.2634819f0 + 0.934
9077f0im]
  difference = 5.3476076 > 0.02384185791015625
 in error at error.jl:22
 in test_approx_eq at test.jl:109
 in anonymous at no file:99
 in runtests at C:\Users\Sim\AppData\Local\Julia 0.3.0-prerelease\share\julia\te
st\testdefs.jl:5
 in anonymous at multi.jl:824
 in run_work_thunk at multi.jl:590
 in anonymous at task.jl:824
while loading linalg2.jl, in expression starting on line 23
ERROR: assertion failed: |cond(a,Inf) - 375.7017682707787| <= 0.01
  cond(a,Inf) = 377.32187
  375.7017682707787 = 375.7017682707787
  difference = 1.6201006257056747 > 0.01
 in anonymous at task.jl:1314
while loading linalg1.jl, in expression starting on line 9
while loading C:\Users\Sim\AppData\Local\Julia 0.3.0-prerelease\share\julia\test
\runtests.jl, in expression starting on line 35

blas_num_threads=4

@tkelman
Copy link
Contributor

tkelman commented Apr 12, 2014

This is with OpenBlas 0.2.9.rc1 (current Julia default for Windows), or 0.2.9.rc2? I'm building a copy of 0.2.9.rc2 right now that I'll upload when it's finished, but I don't have a Haswell machine to test on.

@SimonDanisch
Copy link
Contributor Author

I haven't changed anything in the install folder so everything should be default:

  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY)
  LAPACK: libopenblas

@tkelman
Copy link
Contributor

tkelman commented Apr 12, 2014

Give this a try: http://sourceforge.net/projects/juliadeps-win/files/openblas-v0.2.9.rc2-x86_64-w64-mingw32.7z

0.2.9.rc2 is passing relevant Blas/Lapack tests on my Sandy Bridge machine.

@SimonDanisch
Copy link
Contributor Author

Nope, nothing changed :(

julia>

blas_num_threads=4

C:\Users\Sim\AppData\Local\Julia 0.3.0-prerelease\share\julia\test> julia runtes
ts.jl all
        From worker 2:       * linalg1
        From worker 4:       * linalg3
        From worker 5:       * core
        From worker 3:       * linalg2
        From worker 5:       * keywordargs
        From worker 5:       * numbers
exception on 2: ERROR: assertion failed: |cond(a,Inf) - 375.7017682707787| <= 0.
01
  cond(a,Inf) = 377.32187
  375.7017682707787 = 375.7017682707787
  difference = 1.6201006257056747 > 0.01
 in error at error.jl:22
 in test_approx_eq at test.jl:109
 in anonymous at no file:14
 in runtests at C:\Users\Sim\AppData\Local\Julia 0.3.0-prerelease\share\julia\te
st\testdefs.jl:5
 in anonymous at multi.jl:824
 in run_work_thunk at multi.jl:590
 in anonymous at task.jl:824
while loading linalg1.jl, in expression starting on line 9
exception on 4: ERROR: assertion failed: |det($(Expr(:', :(a[:,1:2] * x - b))) *
 (a[:,1:2] * x - b)) - convert(elty,4.437969924812031)| <= 0.00476837158203125
  det($(Expr(:', :(a[:,1:2] * x - b))) * (a[:,1:2] * x - b)) = 4.328434f0 + 1.39
48083f0im
  convert(elty,4.437969924812031) = 4.43797f0 + 0.0f0im
  difference = 1.3991027 > 0.00476837158203125
 in error at error.jl:22
 in test_approx_eq at test.jl:109
 in anonymous at no file:14
 in runtests at C:\Users\Sim\AppData\Local\Julia 0.3.0-prerelease\share\julia\te
st\testdefs.jl:5
 in anonymous at multi.jl:824
 in run_work_thunk at multi.jl:590
 in anonymous at task.jl:824
while loading linalg3.jl, in expression starting on line 4
exception on 3: ERROR: assertion failed: |W * v - F * v| <= 0.02384185791015625
  W * v = Complex{Float32}[5.411544f0 + 0.0f0im,5.3362956f0 + 0.0f0im,-1.6706779
f0 + 0.0f0im,-1.1320411f0 + 0.0f0im,-2.3926892f0 + 0.0f0im]
  F * v = Complex{Float32}[4.9138784f0 - 3.4160316f0im,4.4354544f0 - 5.271185f0i
m,-1.3091786f0 + 2.1735759f0im,-1.1513414f0 + 0.1880764f0im,-2.2634819f0 + 0.934
9077f0im]
  difference = 5.3476076 > 0.02384185791015625
 in error at error.jl:22
 in test_approx_eq at test.jl:109
 in anonymous at no file:99
 in runtests at C:\Users\Sim\AppData\Local\Julia 0.3.0-prerelease\share\julia\te
st\testdefs.jl:5
 in anonymous at multi.jl:824
 in run_work_thunk at multi.jl:590
 in anonymous at task.jl:824
while loading linalg2.jl, in expression starting on line 23
ERROR: assertion failed: |cond(a,Inf) - 375.7017682707787| <= 0.01
  cond(a,Inf) = 377.32187
  375.7017682707787 = 375.7017682707787
  difference = 1.6201006257056747 > 0.01
 in anonymous at task.jl:1314
while loading linalg1.jl, in expression starting on line 9
while loading C:\Users\Sim\AppData\Local\Julia 0.3.0-prerelease\share\julia\test
\runtests.jl, in expression starting on line 35

@tkelman
Copy link
Contributor

tkelman commented Apr 12, 2014

Okay, now worth reporting to OpenBlas' tracker then. Looks like we have one test case each from linalg1, linalg2, and linalg3, and maybe a fourth if inv(rand(3,3)) still doesn't work with default number of threads?

@andreasnoackjensen do we have some of Julia's Blas/Lapack test cases translated into C or Fortran to make it easier for the OpenBlas devs to reproduce? They may not have a Windows Haswell machine to test on though.

@SimonDanisch
Copy link
Contributor Author

Yes, inv(rand(3,3)) still doesn't work!

@tkelman
Copy link
Contributor

tkelman commented Apr 12, 2014

Hm, just a quick test to be sure you're using the new version of libopenblas.dll - when you start Julia from the command line, then exit(), do you still see the blas_num_threads=4 message? That should be gone in 0.2.9.rc2.

@SimonDanisch
Copy link
Contributor Author

Yes, that's what I'm doing, and the message is gone ;)

2014-04-12 13:15 GMT+02:00 Tony Kelman notifications@github.com:

Hm, just a quick test to be sure you're using the new version of
libopenblas.dll - when you start Julia from the command line, then close
it, do you still see the blas_num_threads=4 message? That should be gone
in 0.2.9.rc2.

Reply to this email directly or view it on GitHubhttps://github.com//issues/6504#issuecomment-40277905
.

@andreasnoack
Copy link
Member

@SimonDanisch Could you try lufact(A) and see if that is enough to make it crash.

@SimonDanisch
Copy link
Contributor Author

I already did this, that's why I believed, that I pinned it down to
inv{T}(F::Factorization{T})
at linalg/factorization.jl:795

2014-04-12 13:35 GMT+02:00 Andreas Noack Jensen notifications@github.com:

@SimonDanisch https://github.com/SimonDanisch Could you try lufact(A)and see if that is enough to make it crash.

Reply to this email directly or view it on GitHubhttps://github.com//issues/6504#issuecomment-40278221
.

@andreasnoack
Copy link
Member

That methods shouldn't get called by inv(rand(3,3)). Just to be sure, if you do

A = rand(3,3);
Alu = lufact(A);
inv(Alu);

Julia crashes at the inv step. Is that right?

@SimonDanisch
Copy link
Contributor Author

Sorry, I wasn't at my computer anymore
Well yes, it crashes at inv(Alu)

julia> A = rand(3,3);
julia> Alu = lufact(A);
julia> @which inv(Alu)
inv{T}(F::Factorization{T}) at linalg/factorization.jl:795

@andreasnoack
Copy link
Member

I just tried the same on a Windows machine and I get the same as you. That is weird. It shouldn't call that method and it doesn't on my Mac. Could you try

invoke(inv, (Base.LinAlg.LU{Float64},), lufact(A))

and see if that works or crashes.

@SimonDanisch
Copy link
Contributor Author

invoke(inv, (Base.LinAlg.LU http://base.linalg.lu/{Float64},),
lufact(rand(3,3))) - Chrashes :(

2014-04-12 22:08 GMT+02:00 Andreas Noack Jensen notifications@github.com:

I just tried the same on a Windows machine and I get the same as you. That
is weird. It shouldn't call that method and it doesn't on my Mac. Could you
try

invoke(inv, (Base.LinAlg.LU{Float64},), lufact(A))

and see if that works or crashes.

Reply to this email directly or view it on GitHubhttps://github.com//issues/6504#issuecomment-40290415
.

@andreasnoack
Copy link
Member

Does A_ldiv_B!(lufact(rand(3,3)),eye(3)) also crash?

@ViralBShah
Copy link
Member

What if we just use nehalem kernels with single threading on windows?

@tkelman
Copy link
Contributor

tkelman commented Jun 14, 2014

All of the problems have been on Haswell, hopefully we won't need to disable threading completely for all Windows users because of this. That does remind me though, @SimonDanisch can you try at least the 0.2.9 release version with set OPENBLAS_NUM_THREADS=1 (assuming you're running the tests from cmd), see if that makes any difference?

@SimonDanisch
Copy link
Contributor Author

First run with set OPENBLAS_NUM_THREADS=1

exception on 2: ERROR: assertion failed: |cond(a,Inf) - 375.7017682707787| <= 0. 01

Second run with blas_set_num_threads(1) in first line:

fatal error on 1: ERROR: stream is closed or unusable
 in read at iobuffer.jl:72
 in read at stream.jl:679
 in anonymous at task.jl:829

Might this be related to #7174 ?

Third run (still with blas_set_num_threads(1):

exception on 2: ERROR: assertion failed: |cond(a,Inf) - 375.7017682707787| <= 0. 01

@tkelman
Copy link
Contributor

tkelman commented Jun 14, 2014

I built another with OPENBLAS_TARGET_ARCH=NEHALEM here http://sourceforge.net/projects/juliadeps-win/files/openblas-v0.2.9-x86_64-w64-mingw32-nehalem.7z/download - any difference?

Edit: and another http://sourceforge.net/projects/juliadeps-win/files/openblas-53bfa51ee0a47a8b-x86_64-w64-mingw32.7z/download based on OpenMathLib/OpenBLAS#386 that should respond to OPENBLAS_CORETYPE

@spalato
Copy link

spalato commented Jun 14, 2014

Hi everyone,

I've just rebuilt julia with a fresh clone, downloaded today, using Cygwin64 on windows 8 using cygwin's gcc. A_ldiv_B!(lufact(rand(3,3)), eye(3)) works. Tests still fail. It seems the behavior has not changed since the end of may, using the openblas release from Apr 22.

$ julia -e "versioninfo()"
Julia Version 0.3.0-prerelease+3679
Commit d0eac34 (2014-06-14 10:06 UTC)
Platform Info:
  System: Windows (x86_64-w64-mingw32)
  CPU: Intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY)
  LAPACK: libopenblas
  LIBM: libopenlibm

Result of a run of tests: https://gist.github.com/spalato/aeeb6e184fd0eab9738f
Identical to results from @SimonDanisch.
Nothing changes when I put blas_set_num_threads(1) on first line of runtests.jl

It seems to be the same issue as previously reported.

@tkelman
Copy link
Contributor

tkelman commented Jun 14, 2014

What do you mean openblas release from Apr 22? There was no openblas release on Apr 22. Can you try a few of the alternate openblas binaries I've posted links to above? Just replace your usr/bin/libopenblas.dll with a few of the alternate versions. The 53bfa51ee0a47a8b one should be the most interesting to look at, as it should allow setting OPENBLAS_VERBOSE=2 and changing OPENBLAS_CORETYPE=nehalem, etc.

@spalato
Copy link

spalato commented Jun 16, 2014

Hi,

I meant the development version of openblas you linked on Apr 24 (not 22).

I've set OPENBLAS_VERBOSE=2 and OPENBLAS_CORETYPE=nehalem as environment variables (using export) and didn't recompile.

Results from julia runtests.jl linalg from cygwin :

  1. With Nehalem: Exactly same errors, no change from previous behavior. No change with blas_set_num_threads(1).
  2. 53bfa51ee0a47a8b (later referred to as 53b), with OPENBLAS_CORETYPE=nehalem: SUCCESS.
  3. 53b, without OPENBLAS_CORETYPE (undefined): tests fail exactly as previously.

I'm currently testing 53b with blas_set_num_threads(1), but it's slow (and was usually failing pretty quickly).

Hope this helps.

@spalato
Copy link

spalato commented Jun 16, 2014

Test result from 53b with OPENLAS_CORETYPE=nehalem and blas_set_num_threads(1): SUCCESS.

It seems the issue is solved for me. Thanks a lot.

@tkelman
Copy link
Contributor

tkelman commented Jun 17, 2014

Sounds like we should carry those patches locally then, but also write a Fortran (or C, I suppose) test case to let OpenBLAS know their Haswell kernels still have problems. Also very strange that OPENBLAS_TARGET_ARCH=NEHALEM didn't work but the patched version with OPENBLAS_CORETYPE=nehalem did...

@tkelman
Copy link
Contributor

tkelman commented Jun 18, 2014

Bump. OpenBLAS on Haswell Win64 is still evidently broken. @andreasnoackjensen would you be able to translate some of these failing tests into Fortran test cases?

@spalato
Copy link

spalato commented Jun 19, 2014

My Make.inc already contains OPENBLAS_TARGET_ARCH=NEHALEM. That could explain why this compile didn't work.

@tkelman
Copy link
Contributor

tkelman commented Jun 19, 2014

@spalato
Copy link

spalato commented Jun 19, 2014

Fails as other cases when no environment variables are set. Succeeds after export OPENBLAS_CORETYPE=nehalem.

@tkelman
Copy link
Contributor

tkelman commented Jun 19, 2014

@spalato would it be possible for you to give remote access to your machine to @wernsaar, an OpenBLAS developer, for debugging purposes?

@spalato
Copy link

spalato commented Jun 19, 2014

I guess we could try. Do you want me to move to OpenMathLib/OpenBLAS#380 (comment) ?

tkelman added a commit to tkelman/julia that referenced this issue Jun 22, 2014
This is cherry-picked from OpenMathLib/OpenBLAS#386
and provides at least a workaround for Haswell and AMD problems seen in JuliaLang#6504, JuliaLang#7031
@ViralBShah
Copy link
Member

Is this fixed?

@tkelman
Copy link
Contributor

tkelman commented Jun 28, 2014

Partially, but not completely. This is from e5b832d on an i7-4702MQ using OpenBlas from xianyi/develop

https://gist.github.com/anonymous/61153d186665d5f0e047

@tkelman
Copy link
Contributor

tkelman commented Jun 28, 2014

The upstream openblas branch (wernsaar/develop) looks fixed on Haswell, we can close this as soon as there's a tag (0.2.10.rc1?) to pull in those fixes from.

@wernsaar
Copy link

On 28.06.2014 21:29, Tony Kelman wrote:

The upstream openblas branch (wernsaar/develop) looks fixed on Haswell, we can close this as soon as there's a tag (0.2.10.rc1?) to pull in those fixes from.


Reply to this email directly or view it on GitHub:
#6504 (comment)
I created the pull request. I think that Xianyi will merge my patches as
soon as possible
and will create OpenBLAS version v0.2.10-rc1.

Best regards

Werner

tkelman added a commit to tkelman/julia that referenced this issue Jun 29, 2014
remove patches that have been merged upstream
fixes JuliaLang#6504, and probably JuliaLang#7031
tkelman added a commit to tkelman/julia that referenced this issue Jun 29, 2014
remove patches that have been merged upstream
fixes JuliaLang#6504, and probably JuliaLang#7031
tkelman added a commit to tkelman/julia that referenced this issue Jun 29, 2014
remove patches that have been merged upstream
fixes JuliaLang#6504, and probably JuliaLang#7031
@ViralBShah
Copy link
Member

Can folks here try master and see if this issue is fixed?

@SimonDanisch
Copy link
Contributor Author

Sorry for the long wait!
It seems to work fine for me!
Most test work, but I got a new error, when runnig the tests:

exception on 2: ERROR: test error during readall(@cmd "echo hello | sort") == "h
ello | sort\n"
could not spawn `echo hello | sort`: no such file or directory (ENOENT)
 in _jl_spawn at process.jl:217
 in spawn at process.jl:348
while loading spawn.jl, in expression starting on line 16
ERROR: test error during readall(@cmd "echo hello | sort") == "hello | sort\n"
could not spawn `echo hello | sort`: no such file or directory (ENOENT)
while loading spawn.jl, in expression starting on line 16
while loading C:\Users\Sim\AppData\Local\Julia-0.3.0-prerelease\share\julia\test
\runtests.jl, in expression starting on line 46

@tkelman
Copy link
Contributor

tkelman commented Jul 1, 2014

Thanks @SimonDanisch! That one will be fixed by either #7446 or #7349.

@SimonDanisch
Copy link
Contributor Author

Cool! =)
Thank you all for the hard work!!
Can't wait for the 0.3.0 release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Indicates an unexpected problem or unintended behavior system:windows Affects only Windows upstream The issue is with an upstream dependency, e.g. LLVM
Projects
None yet
Development

Successfully merging a pull request may close this issue.

10 participants