Re: [julia-users] julia version 0.4.0-dev+1249 throwing an error on ArrayViews
Fixed. Please checkout latest version (v0.4.8), which works for both Julia 0.3 and 0.4. Dahua. On Tuesday, October 28, 2014 12:48:37 PM UTC+8, Dahua Lin wrote: I will try to fix this today or tomorrow. Overly occupied by grant proposal and setting up a new lab in the past month. Really sorry about the package. Dahua On Friday, October 24, 2014 2:33:10 AM UTC+8, Tim Holy wrote: On Thursday, October 23, 2014 10:50:19 AM Douglas Bates wrote: What is the state of Array Nirvana in 0.4? I am happy to avoid using ArrayViews if I can get contiguous views in 0.4 My personal plan is to fix #8504 and then merge #8501. Then look into incorporating contiguous views, reshape operations, fancy slicing semantics, etc. But there are several important pieces of the puzzle even after that. --Tim
[julia-users] Union in composite type
Hello, For a long lime I've been having a bad feeling for having a Union in a composite type, as in type GMM{T:FloatingPoint} ... kind::Symbol μ::Matrix{T} Σ::Union(Matrix{T},Vector{Matrix{T}}) ... end where the choice in `Σ` depends on whether `kind==:diag` or `kind==:full`. I have the feeling it is better to have defined something along the lines of typealias DiagCov{T} Matrix{T} typealias FullCov{T} Vector{Matrix{T}} type GMM{T:FloatingPoint,CT} ... μ::Matrix{T} Σ::CT end function kind(g::GMM) T = eltype(g.μ) if isa(g.Σ, FullCov{T}) return :full else return :diag end end In the second case, the `kind` is inferred from the type instance, rather than stored as a type variable. What is in your expert's opinion a better way of defining such a type? Thanks, ---david
Re: [julia-users] Union in composite type
2nd is much better. But you can even write your `kind` function using dispatch: kind{T}(g::GMM{T,Matrix{T}}) = :diag kind{T}(g::GMM{T,Vector{Matrix{T}}}) = :full See the FAQ for more info about containers with abstract fields (especially the part about inner constructors). --Tim On Tuesday, October 28, 2014 02:03:57 AM David van Leeuwen wrote: Hello, For a long lime I've been having a bad feeling for having a Union in a composite type, as in type GMM{T:FloatingPoint} ... kind::Symbol μ::Matrix{T} Σ::Union(Matrix{T},Vector{Matrix{T}}) ... end where the choice in `Σ` depends on whether `kind==:diag` or `kind==:full`. I have the feeling it is better to have defined something along the lines of typealias DiagCov{T} Matrix{T} typealias FullCov{T} Vector{Matrix{T}} type GMM{T:FloatingPoint,CT} ... μ::Matrix{T} Σ::CT end function kind(g::GMM) T = eltype(g.μ) if isa(g.Σ, FullCov{T}) return :full else return :diag end end In the second case, the `kind` is inferred from the type instance, rather than stored as a type variable. What is in your expert's opinion a better way of defining such a type? Thanks, ---david
Re: [julia-users] Union in composite type
Thanks, Tim. Yes, of course the dispatch mechanism is a much better way to find out the type parameter. Cheers, ---david On Tuesday, October 28, 2014 11:10:57 AM UTC+1, Tim Holy wrote: 2nd is much better. But you can even write your `kind` function using dispatch: kind{T}(g::GMM{T,Matrix{T}}) = :diag kind{T}(g::GMM{T,Vector{Matrix{T}}}) = :full See the FAQ for more info about containers with abstract fields (especially the part about inner constructors). --Tim On Tuesday, October 28, 2014 02:03:57 AM David van Leeuwen wrote: Hello, For a long lime I've been having a bad feeling for having a Union in a composite type, as in type GMM{T:FloatingPoint} ... kind::Symbol μ::Matrix{T} Σ::Union(Matrix{T},Vector{Matrix{T}}) ... end where the choice in `Σ` depends on whether `kind==:diag` or `kind==:full`. I have the feeling it is better to have defined something along the lines of typealias DiagCov{T} Matrix{T} typealias FullCov{T} Vector{Matrix{T}} type GMM{T:FloatingPoint,CT} ... μ::Matrix{T} Σ::CT end function kind(g::GMM) T = eltype(g.μ) if isa(g.Σ, FullCov{T}) return :full else return :diag end end In the second case, the `kind` is inferred from the type instance, rather than stored as a type variable. What is in your expert's opinion a better way of defining such a type? Thanks, ---david
Re: [julia-users] Performance issue? Next permutation algorithm faster in Matlab.
Stefan, There's nothing wrong with the way the standard library produces permutations. It does it faster than me (probably also because of a better algorithm) and in the same order. collect(permutations()) gives all the permutations in dictionary order, so I guess permutations() produces them in that same order. It is true that I do not know how to make it give me the next permutation to any one I provide it with, but that's not the reason why I wrote my function; as John Myles White says below, I am only giving myself some exercises to learn. Having said that, even if my algorithm is not the best or the fastest, it works and is a well-defined and normal one (nothing really strange), so I would expect Julia to run it at least as fast as Matlab when coded well in both languages. Therefore I assumed I had not coded it well. Imagine there were no faster algorithm to obtain the next permutation of any given one; then one would have to do this: 1- Given any permutation p of [1:n], find the last element that is followed by another one greater than itself. Call it f, and its position k. We have to keep all elements 1:k-1 and rearrange the tail (elements k:n). 2- Sort the tail k:n. (I think doing it in-place should make it faster and save memory allocation.) 3- Find the first element in the tail (elements k:n) that is larger than f. 4- Move that element to position k, and push part of the tail accordingly. There's nothing strange there, no? Except for the sort() part, which is standard library so it should be well coded, my algorithm is basically rearranging the same numbers 1:n all the time. Therefore, running it in-place should produce very little memory allocation. The fact that my coding of the algorithm allocates a lot of memory allocation and that it runs slower (about 1.65 times slower than Matlab for n=9 in my system) made me think I had not coded the algorithm well. I was looking for type-instability issues, clumsy type declarations, and for the reason why my function allocates so much memory instead of using the same memory positions all the time. I just thought someone more expert than me would spot my mistake(s) in no time. I would also like to think that the point of view of clumsy people like me has some added value for those of you who are designing a language with the vocation to substitute them all :-) Btw, thank you for a great language, I am loving it (at my level). On Monday, October 27, 2014 5:27:44 PM UTC+1, Stefan Karpinski wrote: Speaking of which, what's wrong with the standard library function for producing permutations? They're not produced in the order you want them in? On Mon, Oct 27, 2014 at 12:26 PM, Stefan Karpinski ste...@karpinski.org javascript: wrote: I tried sort!(sub(p,fp:length(p))) but it any faster. I suspect that if you want to keep with the general shape of this code, it gets kind of verbose. You can probably do something that's different and much more efficient though – similar to what the standard library does. On Mon, Oct 27, 2014 at 12:22 PM, Ivar Nesje iva...@gmail.com javascript: wrote: P.S. I have tried using in-place sort!(p[fp:end]) rather than p[fp:end] = sort(p[fp:end]) but it does not do what I expected. The thing here is quite subtle, but the problem is that currently p[fp:end] returns a copy, rather than a reference. This will change in 0.4, but there are still lots of discussion needed on some of the subtleties, so that we don't do too many iterations before getting it right. I think you can get it now, by writing: sort!(sub(p,fp:length(p))) Regards Ivar
[julia-users] Failure of installing Julia 0.4 (latest master) on Mac OS X 10.10
I just make a fresh clone of Julia 0.4, and when I did make, I get the following error: Note: The following floating-point exceptions are signalling: IEEE_DENORMAL make[4]: /Users/dhlin/julia-0.4/deps/objconv/objconv: No such file or directory make[4]: *** [../libopenblasp-r0.2.12.a.renamed] Error 1 make[3]: *** [shared] Error 2 *** Clean the OpenBLAS build with 'make -C deps clean-openblas'. Rebuild with 'make OPENBLAS_USE_THREAD=0 if OpenBLAS had trouble linking libpthread.so, and with 'make OPENBLAS_TARGET_ARCH=NEHALEM' if there were errors building SandyBridge support. Both these options can also be used simultaneously. *** make[2]: *** [openblas-v0.2.12/libopenblas.dylib] Error 1 make[1]: *** [julia-release] Error 2 make: *** [release] Error 2 Not sure why it raises IEEE_DENORMAL, or OpenBLAS just doesn't work in Yosemite? Dahua
[julia-users] Re: Failure of installing Julia 0.4 (latest master) on Mac OS X 10.10
Part of that might be my fault, we added the objconv utility recently as a build-time dependency to handle renaming of symbols in OpenBLAS on Mac, to avoid LP64-vs-ILP64 ABI incompatibilities. Can you tell me if you have a deps/objconv folder, and if so what's in it? Does clang++ -o objconv -O2 *.cpp in that folder work? On Tuesday, October 28, 2014 3:53:57 AM UTC-7, Dahua Lin wrote: I just make a fresh clone of Julia 0.4, and when I did make, I get the following error: Note: The following floating-point exceptions are signalling: IEEE_DENORMAL make[4]: /Users/dhlin/julia-0.4/deps/objconv/objconv: No such file or directory make[4]: *** [../libopenblasp-r0.2.12.a.renamed] Error 1 make[3]: *** [shared] Error 2 *** Clean the OpenBLAS build with 'make -C deps clean-openblas'. Rebuild with 'make OPENBLAS_USE_THREAD=0 if OpenBLAS had trouble linking libpthread.so, and with 'make OPENBLAS_TARGET_ARCH=NEHALEM' if there were errors building SandyBridge support. Both these options can also be used simultaneously. *** make[2]: *** [openblas-v0.2.12/libopenblas.dylib] Error 1 make[1]: *** [julia-release] Error 2 make: *** [release] Error 2 Not sure why it raises IEEE_DENORMAL, or OpenBLAS just doesn't work in Yosemite? Dahua
[julia-users] Re: Julians in Colorado?
I'm not anywhere near Colorado (the bay area Julia meetups have been fun though, thanks to Forio for hosting those), but I find it amusing to note that my first response to your post was who's Galen O'Neil? But if you had said gg was giving a talk, it would have made sense right away. says the guy whose happy little cloud github avatar has nothing at all to do with his in-person personality On Monday, October 27, 2014 5:13:07 PM UTC-7, Sean Garborg wrote: I'm sure you will -- looking forward to meeting you. Have you come across any other users in the area? On Monday, October 27, 2014 5:57:10 PM UTC-6, g wrote: I'll be there, since I'm the one talking. It's nice to know I'll have at least a friendly face in the audience. I have to admit I'm surprised that I was asked to speak, but there are enough other talks available to draw from that I think I can do a reasonable job.
[julia-users] Re: [ANN] Dierckx.jl: 1-d and 2-d splines as in scipy.interpolate
This looks quite useful, thanks for putting it together. I just made dll's of the library for win32 and win64 and am seeing if they pass the package's tests for me. If they do, would you prefer I put them up on sourceforge, or would you have a better place to put them? On Monday, October 27, 2014 8:32:40 PM UTC-7, Kyle Barbary wrote: This is an announcement of Dierckx.jl, a Julia wrapper for the dierckx Fortran library from netlib. This is the same library underlying the spline classes in scipy.interpolate. http://github.com/kbarbary/Dierckx.jl Note: Some of the functionality here overlaps with Grid.jl, Tim Holy's pure-Julia interpolation package. This package is intended to complement Grid.jl and to serve as a benchmark in cases of overlapping functionality. I hope it will be useful to people looking for a direct equivalent of scipy.interpolate or in any cases where spline interpolation is a major bottleneck. Contributions, or advice on the correct pronunciation of Dierckx, gratefully accepted. - Kyle
[julia-users] Packages back in order
Recently, a series of packages failed under Julia 0.4, many of them are under JuliaStats. I just updated those packages and now all of them are working under both Julia 0.3 and 0.4. Here is the list of updated packages and their latest version: - ArrayViews (0.4.8) - StatsBase (0.6.9) - Distributions (0.5.5) - Distances (0.2.0) - MLBase (0.5.1) - MultivariateStats (0.1.3) - NMF (0.2.4) - Clustering (0.3.3) Cheers, Dahua
[julia-users] Re: Failure of installing Julia 0.4 (latest master) on Mac OS X 10.10
deps/objconv is not there. On Tuesday, October 28, 2014 7:14:11 PM UTC+8, Tony Kelman wrote: Part of that might be my fault, we added the objconv utility recently as a build-time dependency to handle renaming of symbols in OpenBLAS on Mac, to avoid LP64-vs-ILP64 ABI incompatibilities. Can you tell me if you have a deps/objconv folder, and if so what's in it? Does clang++ -o objconv -O2 *.cpp in that folder work? On Tuesday, October 28, 2014 3:53:57 AM UTC-7, Dahua Lin wrote: I just make a fresh clone of Julia 0.4, and when I did make, I get the following error: Note: The following floating-point exceptions are signalling: IEEE_DENORMAL make[4]: /Users/dhlin/julia-0.4/deps/objconv/objconv: No such file or directory make[4]: *** [../libopenblasp-r0.2.12.a.renamed] Error 1 make[3]: *** [shared] Error 2 *** Clean the OpenBLAS build with 'make -C deps clean-openblas'. Rebuild with 'make OPENBLAS_USE_THREAD=0 if OpenBLAS had trouble linking libpthread.so, and with 'make OPENBLAS_TARGET_ARCH=NEHALEM' if there were errors building SandyBridge support. Both these options can also be used simultaneously. *** make[2]: *** [openblas-v0.2.12/libopenblas.dylib] Error 1 make[1]: *** [julia-release] Error 2 make: *** [release] Error 2 Not sure why it raises IEEE_DENORMAL, or OpenBLAS just doesn't work in Yosemite? Dahua
Re: [julia-users] realmax function and maximum float64 number
When playing around with floating point numbers, I find a function like the following helps a lot to see what they look like underneath: decode(x::Float32) = (b=bits(x); (b[1], b[2:9], b[10:32])) decode(x::Float64) = (b=bits(x); (b[1], b[2:12], b[13:64])) or, very soon, you will be able to use @printf %a x to get a hexadecimal representation. s
Re: [julia-users] Re: Failure of installing Julia 0.4 (latest master) on Mac OS X 10.10
Damn, I seem to have gotten the dependencies wrong here https://github.com/JuliaLang/Julia/pull/8734/files#diff-3ba529ae517f6b57803af0502f52a40bR840 then? Steven Johnson said he was able to get things to work, I thought. Did it look like all of openblas was rebuilding from scratch? You may have to do `make -C deps install-objconv` manually, but this really shouldn’t be necessary for everyone to do manually if I did things right. For everyone else who builds Julia from source regularly, if you want to rename your openblas symbols, follow the steps here https://github.com/JuliaLang/julia/pull/8734#issuecomment-59978800 - this assumes you’ve built openblas recently enough that you have an existing copy of v0.2.12. Check the results with `Base.blas_vendor()`, it should say :openblas64 if your library has renamed symbols. I also hope completely fresh from-scratch builds on mac should work properly, or if you don’t want to rename your openblas symbols yet (particularly if you plan on bisecting back and forth through the git history) it should leave your existing built openblas library alone. Let’s see if we can figure out what’s going wrong in Dahua’s case. Sorry for the trouble. From: Dahua Lin Sent: Tuesday, October 28, 2014 4:58 AM To: julia-users@googlegroups.com Subject: [julia-users] Re: Failure of installing Julia 0.4 (latest master) on Mac OS X 10.10 deps/objconv is not there. On Tuesday, October 28, 2014 7:14:11 PM UTC+8, Tony Kelman wrote: Part of that might be my fault, we added the objconv utility recently as a build-time dependency to handle renaming of symbols in OpenBLAS on Mac, to avoid LP64-vs-ILP64 ABI incompatibilities. Can you tell me if you have a deps/objconv folder, and if so what's in it? Does clang++ -o objconv -O2 *.cpp in that folder work? On Tuesday, October 28, 2014 3:53:57 AM UTC-7, Dahua Lin wrote: I just make a fresh clone of Julia 0.4, and when I did make, I get the following error: Note: The following floating-point exceptions are signalling: IEEE_DENORMAL make[4]: /Users/dhlin/julia-0.4/deps/objconv/objconv: No such file or directory make[4]: *** [../libopenblasp-r0.2.12.a.renamed] Error 1 make[3]: *** [shared] Error 2 *** Clean the OpenBLAS build with 'make -C deps clean-openblas'. Rebuild with 'make OPENBLAS_USE_THREAD=0 if OpenBLAS had trouble linking libpthread.so, and with 'make OPENBLAS_TARGET_ARCH=NEHALEM' if there were errors building SandyBridge support. Both these options can also be used simultaneously. *** make[2]: *** [openblas-v0.2.12/libopenblas.dylib] Error 1 make[1]: *** [julia-release] Error 2 make: *** [release] Error 2 Not sure why it raises IEEE_DENORMAL, or OpenBLAS just doesn't work in Yosemite? Dahua
[julia-users] Re: [ANN] Dierckx.jl: 1-d and 2-d splines as in scipy.interpolate
El lunes, 27 de octubre de 2014 21:32:40 UTC-6, Kyle Barbary escribió: This is an announcement of Dierckx.jl, a Julia wrapper for the dierckx Fortran library from netlib. This is the same library underlying the spline classes in scipy.interpolate. http://github.com/kbarbary/Dierckx.jl Note: Some of the functionality here overlaps with Grid.jl, Tim Holy's pure-Julia interpolation package. This package is intended to complement Grid.jl and to serve as a benchmark in cases of overlapping functionality. I hope it will be useful to people looking for a direct equivalent of scipy.interpolate or in any cases where spline interpolation is a major bottleneck. Contributions, or advice on the correct pronunciation of Dierckx, gratefully accepted. This looks nice. But I think your last comment hits the nail on the head: wouldn't it be better, and more Julian, to call the package Splines.jl? David. - Kyle
[julia-users] Re: Julians in Colorado?
I just moved to Fort Collins in February (~hour north of Denver). I am not a programming aficionado but I love Julia and it has opened my world of possibilities. I primarily do human statistical genetics. My git name is timema. Thanks for posting about the Spark/Julia night, I had not heard of it before. If I have time, I might try to come down (I am in Virginia all of this week). It would be great to meet more people from the Julia community, especially those in the local area. On Monday, October 27, 2014 6:37:37 PM UTC-4, Sean Garborg wrote: I just moved from Chicago and am curious. Relatedly, a data science meetup in Broomfield, CO has a half Spark / half Julia night http://www.meetup.com/Data-Science-Business-Analytics/events/211746812/ coming up Wednesday Nov 5th, with Galen O'Neil running the Julia half. No idea what the crowd is like, but I'm sure it wouldn't hurt to show up.
[julia-users] Re: Julia MKL using PyPlot
See: https://github.com/stevengj/PyPlot.jl/issues/100 This is a NumPy issue: if you are compiling Julia with the MKL ILP64 BLAS, you also need to compile NumPy with the same BLAS, and NumPy/Matplotlib seem like they may have some problems with using an ILP64 BLAS.
Re: [julia-users] Re: [ANN] Dierckx.jl: 1-d and 2-d splines as in scipy.interpolate
I'm open to changing the name to Splines.jl - I agree that it's clearer and more descriptive. I was hesitant to take up a prime name in the global package namespace. Tim has probably thought a lot more about splines recently, so maybe he (or any spline experts out there) can comment. Thanks to Tony, there's now Windows support in master! - Kyle On Tue, Oct 28, 2014 at 5:43 AM, David P. Sanders dpsand...@gmail.com wrote: El lunes, 27 de octubre de 2014 21:32:40 UTC-6, Kyle Barbary escribió: This is an announcement of Dierckx.jl, a Julia wrapper for the dierckx Fortran library from netlib. This is the same library underlying the spline classes in scipy.interpolate. http://github.com/kbarbary/Dierckx.jl Note: Some of the functionality here overlaps with Grid.jl, Tim Holy's pure-Julia interpolation package. This package is intended to complement Grid.jl and to serve as a benchmark in cases of overlapping functionality. I hope it will be useful to people looking for a direct equivalent of scipy.interpolate or in any cases where spline interpolation is a major bottleneck. Contributions, or advice on the correct pronunciation of Dierckx, gratefully accepted. This looks nice. But I think your last comment hits the nail on the head: wouldn't it be better, and more Julian, to call the package Splines.jl? David. - Kyle
[julia-users] Type parameter describes number of items
Is there a way to create a parameterised type where the parameter describes the number of items, ie type Thing{N:Integer} for i = 1:N a_i::Float64 end end I realise one could achieve this simple example with an array, but I'm trying to create a type which holds scale space. My current thinking is this would consist of a parameterisable number of images each with a parameterisable number of layers. And each image in the sequence has the two spatial dimensions (not the number of layers) reduced by a factor of two. I guess you cold do some tricks with array packing, but I guess I'm looking for something more elegant. Is there any way to use the type parameter to indicate a number of elements in this way? Andy
[julia-users] Re: Julians in Colorado?
Hi Taylor, I've seen you around JuliaStats -- nice to have a name to put to the handle. If you make it, I'm the one with a reddish beard who'd look half his age if he shaved.. On Tuesday, October 28, 2014 7:00:01 AM UTC-6, Taylor Maxwell wrote: I just moved to Fort Collins in February (~hour north of Denver). I am not a programming aficionado but I love Julia and it has opened my world of possibilities. I primarily do human statistical genetics. My git name is timema. Thanks for posting about the Spark/Julia night, I had not heard of it before. If I have time, I might try to come down (I am in Virginia all of this week). It would be great to meet more people from the Julia community, especially those in the local area. On Monday, October 27, 2014 6:37:37 PM UTC-4, Sean Garborg wrote: I just moved from Chicago and am curious. Relatedly, a data science meetup in Broomfield, CO has a half Spark / half Julia night http://www.meetup.com/Data-Science-Business-Analytics/events/211746812/ coming up Wednesday Nov 5th, with Galen O'Neil running the Julia half. No idea what the crowd is like, but I'm sure it wouldn't hurt to show up.
[julia-users] Re: Article on `@simd`
Update: The recent Julia 0.3.2 release supports vectorization of Float64.
[julia-users] Re: Type parameter describes number of items
You could achieve much of the same effect with a macro, but then you would have to specify the maximum number of elements as a code constant. kl. 16:47:56 UTC+1 tirsdag 28. oktober 2014 skrev Andrew Gibb følgende: Is there a way to create a parameterised type where the parameter describes the number of items, ie type Thing{N:Integer} for i = 1:N a_i::Float64 end end I realise one could achieve this simple example with an array, but I'm trying to create a type which holds scale space. My current thinking is this would consist of a parameterisable number of images each with a parameterisable number of layers. And each image in the sequence has the two spatial dimensions (not the number of layers) reduced by a factor of two. I guess you cold do some tricks with array packing, but I guess I'm looking for something more elegant. Is there any way to use the type parameter to indicate a number of elements in this way? Andy
[julia-users] Re: Type parameter describes number of items
Hi Andy, I don't know if you should do this, but you certainly can do it :-) julia type Thing{N} a::Vector{Float64} function Thing() new(zeros(Float64, N)) end end julia Thing{1}() Thing{1}([0.0]) julia Thing{5}() Thing{5}([0.0,0.0,0.0,0.0,0.0]) I guess the relevant section in the manual is the one on parametric types http://julia.readthedocs.org/en/latest/manual/types/#man-parametric-types, which states that N in type Foo{N} ... end can be any type or an *integer*. This is used for example by Array{T,N}, where N is the dimension of the array. Best, Alex. On Tuesday, 28 October 2014 16:47:56 UTC+1, Andrew Gibb wrote: Is there a way to create a parameterised type where the parameter describes the number of items, ie type Thing{N:Integer} for i = 1:N a_i::Float64 end end I realise one could achieve this simple example with an array, but I'm trying to create a type which holds scale space. My current thinking is this would consist of a parameterisable number of images each with a parameterisable number of layers. And each image in the sequence has the two spatial dimensions (not the number of layers) reduced by a factor of two. I guess you cold do some tricks with array packing, but I guess I'm looking for something more elegant. Is there any way to use the type parameter to indicate a number of elements in this way? Andy
[julia-users] Re: Type parameter describes number of items
This is exactly what `NTuple` was designed for: julia NTuple{3,Float64} (Float64,Float64,Float64) You can use this as a field in a parametric type julia type Foo{N} x::NTuple{N,Float64} end julia Foo((1.0,2.0,3.0)) Foo{3}((1.0,2.0,3.0)) On Tuesday, 28 October 2014 15:47:56 UTC, Andrew Gibb wrote: Is there a way to create a parameterised type where the parameter describes the number of items, ie type Thing{N:Integer} for i = 1:N a_i::Float64 end end I realise one could achieve this simple example with an array, but I'm trying to create a type which holds scale space. My current thinking is this would consist of a parameterisable number of images each with a parameterisable number of layers. And each image in the sequence has the two spatial dimensions (not the number of layers) reduced by a factor of two. I guess you cold do some tricks with array packing, but I guess I'm looking for something more elegant. Is there any way to use the type parameter to indicate a number of elements in this way? Andy
[julia-users] Compilation / Executable of Julia for Redhat Enterprise Linux 6.2 ( Santiago)
Dear All Due to our provided not being able / willing to provide is with updates for the Lustre drivers we are currently stuck with a 2.6.32 Kernel from 2011 on our 128 Nodes cluster. Unfortunately, our current setup will not change for the next 18 months or so until the upgrade has gone on Tender. I tried the following 1. Compilation with the gcc toolchain while disabling AVX with OPENBLAS_NO_AVX = 1 This had worked on a single SMP 32 processor server running REL 6.5. On REL 6.2. it only worked for the headnode. On the other nodes the executable resulted in a binary format error. 2. using one of the generic 64 bit builds. Worked on headnode, but broke compute nodes 3. Compiliation using icc,icpc and ifc as described in http://goparallel.sourceforge.net/wp-content/uploads/2014/03/TheParallelUniverse_Issue_17.pdf This failed with difficult to understand and hidden errors. ( I will try again soon and post the output of it!) I am a bit a the end of my knowledge! Any hints would be appreciated. regards Moritz Braun
Re: [julia-users] Compilation / Executable of Julia for Redhat Enterprise Linux 6.2 ( Santiago)
The headnode/childnode issue is usually an architecture mismatch. You can target a more generic architecture to get around this; see the discussion in this thread: https://groups.google.com/d/msg/julia-dev/Eqp0GhZWxME/3mGKX1l_L9gJ ps: this should go in the FAQ... if someone new on here wants to make a first Julia pull request: click the Edit on GitHub button at the top-right while viewing the documentation. Add an entry for this, and click Submit. On Tue, Oct 28, 2014 at 1:12 PM, moritz braun moritz.br...@gmail.com wrote: Dear All Due to our provided not being able / willing to provide is with updates for the Lustre drivers we are currently stuck with a 2.6.32 Kernel from 2011 on our 128 Nodes cluster. Unfortunately, our current setup will not change for the next 18 months or so until the upgrade has gone on Tender. I tried the following 1. Compilation with the gcc toolchain while disabling AVX with OPENBLAS_NO_AVX = 1 This had worked on a single SMP 32 processor server running REL 6.5. On REL 6.2. it only worked for the headnode. On the other nodes the executable resulted in a binary format error. 2. using one of the generic 64 bit builds. Worked on headnode, but broke compute nodes 3. Compiliation using icc,icpc and ifc as described in http://goparallel.sourceforge.net/wp-content/uploads/2014/03/TheParallelUniverse_Issue_17.pdf This failed with difficult to understand and hidden errors. ( I will try again soon and post the output of it!) I am a bit a the end of my knowledge! Any hints would be appreciated. regards Moritz Braun
Re: [julia-users] Compilation / Executable of Julia for Redhat Enterprise Linux 6.2 ( Santiago)
Elliot and I had some discussions recently where we were thinking it might be a good idea to combine some of these settings under one easy group flag like JULIA_PORTABLE=1 or something, that would then set OPENBLAS_DYNAMIC_ARCH, along with the flags needed for the system image that I can never remember. If we get that working and documented, then we could consider disabling OPENBLAS_DYNAMIC_ARCH by default so we can have faster from-scratch source builds. On Tuesday, October 28, 2014 10:45:16 AM UTC-7, Isaiah wrote: The headnode/childnode issue is usually an architecture mismatch. You can target a more generic architecture to get around this; see the discussion in this thread: https://groups.google.com/d/msg/julia-dev/Eqp0GhZWxME/3mGKX1l_L9gJ ps: this should go in the FAQ... if someone new on here wants to make a first Julia pull request: click the Edit on GitHub button at the top-right while viewing the documentation. Add an entry for this, and click Submit. On Tue, Oct 28, 2014 at 1:12 PM, moritz braun moritz...@gmail.com javascript: wrote: Dear All Due to our provided not being able / willing to provide is with updates for the Lustre drivers we are currently stuck with a 2.6.32 Kernel from 2011 on our 128 Nodes cluster. Unfortunately, our current setup will not change for the next 18 months or so until the upgrade has gone on Tender. I tried the following 1. Compilation with the gcc toolchain while disabling AVX with OPENBLAS_NO_AVX = 1 This had worked on a single SMP 32 processor server running REL 6.5. On REL 6.2. it only worked for the headnode. On the other nodes the executable resulted in a binary format error. 2. using one of the generic 64 bit builds. Worked on headnode, but broke compute nodes 3. Compiliation using icc,icpc and ifc as described in http://goparallel.sourceforge.net/wp-content/uploads/2014/03/TheParallelUniverse_Issue_17.pdf This failed with difficult to understand and hidden errors. ( I will try again soon and post the output of it!) I am a bit a the end of my knowledge! Any hints would be appreciated. regards Moritz Braun
[julia-users] Re: [ANN] Dierckx.jl: 1-d and 2-d splines as in scipy.interpolate
Great work! Thanks for sharing. On Tuesday, October 28, 2014 3:32:40 AM UTC, Kyle Barbary wrote: This is an announcement of Dierckx.jl, a Julia wrapper for the dierckx Fortran library from netlib. This is the same library underlying the spline classes in scipy.interpolate. http://github.com/kbarbary/Dierckx.jl Note: Some of the functionality here overlaps with Grid.jl, Tim Holy's pure-Julia interpolation package. This package is intended to complement Grid.jl and to serve as a benchmark in cases of overlapping functionality. I hope it will be useful to people looking for a direct equivalent of scipy.interpolate or in any cases where spline interpolation is a major bottleneck. Contributions, or advice on the correct pronunciation of Dierckx, gratefully accepted. - Kyle
[julia-users] Redirect stdout to /dev/null or similar
Hi, Julia newbie here... How would I stop output of a command to the REPL display? Can I redirect to /dev/null or something? I'm loading a very large data set using DataFrames and it wants to output everything to the screen... Thanks for any help! Frank
Re: [julia-users] Redirect stdout to /dev/null or similar
You can suppress output with a trailing ';' (similar to MATLAB or IPython) julia rand(10) 10-element Array{Float64,1}: ... julia rand(10); julia On Tue, Oct 28, 2014 at 4:08 PM, Frank Davidson ffdavid...@gmail.com wrote: Hi, Julia newbie here... How would I stop output of a command to the REPL display? Can I redirect to /dev/null or something? I'm loading a very large data set using DataFrames and it wants to output everything to the screen... Thanks for any help! Frank
Re: [julia-users] Compilation / Executable of Julia for Redhat Enterprise Linux 6.2 ( Santiago)
Moritz, I'm interested in what broke on the compute nodes. Do you have any example output from trying to run Julia on the compute nodes? -E On Tue, Oct 28, 2014 at 1:57 PM, Tony Kelman t...@kelman.net wrote: Elliot and I had some discussions recently where we were thinking it might be a good idea to combine some of these settings under one easy group flag like JULIA_PORTABLE=1 or something, that would then set OPENBLAS_DYNAMIC_ARCH, along with the flags needed for the system image that I can never remember. If we get that working and documented, then we could consider disabling OPENBLAS_DYNAMIC_ARCH by default so we can have faster from-scratch source builds. On Tuesday, October 28, 2014 10:45:16 AM UTC-7, Isaiah wrote: The headnode/childnode issue is usually an architecture mismatch. You can target a more generic architecture to get around this; see the discussion in this thread: https://groups.google.com/d/msg/julia-dev/Eqp0GhZWxME/3mGKX1l_L9gJ ps: this should go in the FAQ... if someone new on here wants to make a first Julia pull request: click the Edit on GitHub button at the top-right while viewing the documentation. Add an entry for this, and click Submit. On Tue, Oct 28, 2014 at 1:12 PM, moritz braun moritz...@gmail.com wrote: Dear All Due to our provided not being able / willing to provide is with updates for the Lustre drivers we are currently stuck with a 2.6.32 Kernel from 2011 on our 128 Nodes cluster. Unfortunately, our current setup will not change for the next 18 months or so until the upgrade has gone on Tender. I tried the following 1. Compilation with the gcc toolchain while disabling AVX with OPENBLAS_NO_AVX = 1 This had worked on a single SMP 32 processor server running REL 6.5. On REL 6.2. it only worked for the headnode. On the other nodes the executable resulted in a binary format error. 2. using one of the generic 64 bit builds. Worked on headnode, but broke compute nodes 3. Compiliation using icc,icpc and ifc as described in http://goparallel.sourceforge.net/wp-content/uploads/2014/03/ TheParallelUniverse_Issue_17.pdf This failed with difficult to understand and hidden errors. ( I will try again soon and post the output of it!) I am a bit a the end of my knowledge! Any hints would be appreciated. regards Moritz Braun
Re: [julia-users] Compilation / Executable of Julia for Redhat Enterprise Linux 6.2 ( Santiago)
Le mardi 28 octobre 2014 à 10:12 -0700, moritz braun a écrit : Dear All Due to our provided not being able / willing to provide is with updates for the Lustre drivers we are currently stuck with a 2.6.32 Kernel from 2011 on our 128 Nodes cluster. Unfortunately, our current setup will not change for the next 18 months or so until the upgrade has gone on Tender. I tried the following 1. Compilation with the gcc toolchain while disabling AVX with OPENBLAS_NO_AVX = 1 This had worked on a single SMP 32 processor server running REL 6.5. On REL 6.2. it only worked for the headnode. On the other nodes the executable resulted in a binary format error. 2. using one of the generic 64 bit builds. Worked on headnode, but broke compute nodes 3. Compiliation using icc,icpc and ifc as described in http://goparallel.sourceforge.net/wp-content/uploads/2014/03/TheParallelUniverse_Issue_17.pdf This failed with difficult to understand and hidden errors. ( I will try again soon and post the output of it!) I am a bit a the end of my knowledge! You can also try the EPEL6 RPM packages listed on the downloads page, if you have root access. They may work differently from generic builds. Regards
[julia-users] Re: Benchmarks for Julia 0.3x ???
I bee trying to help with this. And already fixed the java and R issues (I think). I've been thinking on how to fix the other, but I would like some feedback first. To fix the C and Fortran issue https://github.com/JuliaLang/julia/issues/4821 (which basically consists on avoid constant-folding and propagation) I was thinking on write an external (configuration) file to hold the pertinent constants and read the constants from that file, so their values won't be known until running time. Would this seem a good solution?
[julia-users] Re: [ANN] Dierckx.jl: 1-d and 2-d splines as in scipy.interpolate
I think the name is appropriate, given that it is a wrapper around a library of the same name. Splines.jl could be a meta-package of sort that unifies all spline-related stuff, but I think Kyle's concerns are spot on. On Tuesday, October 28, 2014 5:00:54 PM UTC-4, Davide Lasagna wrote: Great work! Thanks for sharing. On Tuesday, October 28, 2014 3:32:40 AM UTC, Kyle Barbary wrote: This is an announcement of Dierckx.jl, a Julia wrapper for the dierckx Fortran library from netlib. This is the same library underlying the spline classes in scipy.interpolate. http://github.com/kbarbary/Dierckx.jl Note: Some of the functionality here overlaps with Grid.jl, Tim Holy's pure-Julia interpolation package. This package is intended to complement Grid.jl and to serve as a benchmark in cases of overlapping functionality. I hope it will be useful to people looking for a direct equivalent of scipy.interpolate or in any cases where spline interpolation is a major bottleneck. Contributions, or advice on the correct pronunciation of Dierckx, gratefully accepted. - Kyle
Re: [julia-users] Re: Failure of installing Julia 0.4 (latest master) on Mac OS X 10.10
This is a completely fresh clone (directly from Github) -- so there is nothing there left from some previous version. I open an issue: https://github.com/JuliaLang/julia/issues/8842 Dahua On Tuesday, October 28, 2014 8:13:21 PM UTC+8, Tony Kelman wrote: Damn, I seem to have gotten the dependencies wrong here https://github.com/JuliaLang/Julia/pull/8734/files#diff-3ba529ae517f6b57803af0502f52a40bR840 then? Steven Johnson said he was able to get things to work, I thought. Did it look like all of openblas was rebuilding from scratch? You may have to do `make -C deps install-objconv` manually, but this really shouldn’t be necessary for everyone to do manually if I did things right. For everyone else who builds Julia from source regularly, if you want to rename your openblas symbols, follow the steps here https://github.com/JuliaLang/julia/pull/8734#issuecomment-59978800 - this assumes you’ve built openblas recently enough that you have an existing copy of v0.2.12. Check the results with `Base.blas_vendor()`, it should say :openblas64 if your library has renamed symbols. I also hope completely fresh from-scratch builds on mac should work properly, or if you don’t want to rename your openblas symbols yet (particularly if you plan on bisecting back and forth through the git history) it should leave your existing built openblas library alone. Let’s see if we can figure out what’s going wrong in Dahua’s case. Sorry for the trouble. *From:* Dahua Lin javascript: *Sent:* Tuesday, October 28, 2014 4:58 AM *To:* julia...@googlegroups.com javascript: *Subject:* [julia-users] Re: Failure of installing Julia 0.4 (latest master) on Mac OS X 10.10 deps/objconv is not there. On Tuesday, October 28, 2014 7:14:11 PM UTC+8, Tony Kelman wrote: Part of that might be my fault, we added the objconv utility recently as a build-time dependency to handle renaming of symbols in OpenBLAS on Mac, to avoid LP64-vs-ILP64 ABI incompatibilities. Can you tell me if you have a deps/objconv folder, and if so what's in it? Does clang++ -o objconv -O2 *.cpp in that folder work? On Tuesday, October 28, 2014 3:53:57 AM UTC-7, Dahua Lin wrote: I just make a fresh clone of Julia 0.4, and when I did make, I get the following error: Note: The following floating-point exceptions are signalling: IEEE_DENORMAL make[4]: /Users/dhlin/julia-0.4/deps/objconv/objconv: No such file or directory make[4]: *** [../libopenblasp-r0.2.12.a.renamed] Error 1 make[3]: *** [shared] Error 2 *** Clean the OpenBLAS build with 'make -C deps clean-openblas'. Rebuild with 'make OPENBLAS_USE_THREAD=0 if OpenBLAS had trouble linking libpthread.so, and with 'make OPENBLAS_TARGET_ARCH=NEHALEM' if there were errors building SandyBridge support. Both these options can also be used simultaneously. *** make[2]: *** [openblas-v0.2.12/libopenblas.dylib] Error 1 make[1]: *** [julia-release] Error 2 make: *** [release] Error 2 Not sure why it raises IEEE_DENORMAL, or OpenBLAS just doesn't work in Yosemite? Dahua
Re: [julia-users] Redirect stdout to /dev/null or similar
Can you give an example? The default DataFrames printing should only render a few rows, although it will render all columns by default. -- John On Oct 28, 2014, at 1:08 PM, Frank Davidson ffdavid...@gmail.com wrote: Hi, Julia newbie here... How would I stop output of a command to the REPL display? Can I redirect to /dev/null or something? I'm loading a very large data set using DataFrames and it wants to output everything to the screen... Thanks for any help! Frank
Re: [julia-users] Questions regarding Julia (pycall and Julia types).
Thanks very much. Would it be conceivably possible at some point to include python functions called from pycall, in a future julia exe? I already have a decent grasp of python, but trying to decide if its worth learning the syntax of the entire scipy system if I will be switching to julia later. The lack of tutorials for data science in julia is the main factor I'm pondering now. On Saturday, October 25, 2014 11:13:43 AM UTC-4, John Myles White wrote: I’m very conservative about recommeinding Julia these days. I’d say that, as a beginner to programming, you may find Julia to be a difficult ride. I think you’ll find Julia quite easy to learn after you’ve already mastered Python. — John On Oct 24, 2014, at 9:41 AM, rtem...@gmail.com javascript: wrote: Hi Everyone, I'v posted the below questions on reddit julia , and wanted to elicit additional input from the group. I'm trying to figure out which system (python vs julia) to invest in, Any feedback would be appreciated. http://www.reddit.com/r/Julia/comments/2k4dtm/experience_with_pycall_in_action/ - How robust is pycall? Can I rely on it to do database connections and beautiful soup scraping? http://www.reddit.com/r/Julia/comments/2k79mn/is_there_something_about_julia_that_facilitates/ - julia vs python types for simulations. Using julia types in simulations. Thanks!
Re: [julia-users] Questions regarding Julia (pycall and Julia types).
I think if you're hoping to read a tutorial, then Julia is not the right language for you until it hits 1.0. At the moment, the one true Julia tutorial is reading the Julia source code. I wouldn't worry about the concept of an exe. -- John On Oct 28, 2014, at 5:42 PM, rtemp...@gmail.com wrote: Thanks very much. Would it be conceivably possible at some point to include python functions called from pycall, in a future julia exe? I already have a decent grasp of python, but trying to decide if its worth learning the syntax of the entire scipy system if I will be switching to julia later. The lack of tutorials for data science in julia is the main factor I'm pondering now. On Saturday, October 25, 2014 11:13:43 AM UTC-4, John Myles White wrote: I’m very conservative about recommeinding Julia these days. I’d say that, as a beginner to programming, you may find Julia to be a difficult ride. I think you’ll find Julia quite easy to learn after you’ve already mastered Python. — John On Oct 24, 2014, at 9:41 AM, rtem...@gmail.com wrote: Hi Everyone, I'v posted the below questions on reddit julia , and wanted to elicit additional input from the group. I'm trying to figure out which system (python vs julia) to invest in, Any feedback would be appreciated. http://www.reddit.com/r/Julia/comments/2k4dtm/experience_with_pycall_in_action/ - How robust is pycall? Can I rely on it to do database connections and beautiful soup scraping? http://www.reddit.com/r/Julia/comments/2k79mn/is_there_something_about_julia_that_facilitates/ - julia vs python types for simulations. Using julia types in simulations. Thanks!
Re: [julia-users] Re: Failure of installing Julia 0.4 (latest master) on Mac OS X 10.10
It builds successfully after I did make -C deps install-objconv. However, I think the make procedure should automatically do that ... On Wednesday, October 29, 2014 8:32:32 AM UTC+8, Dahua Lin wrote: This is a completely fresh clone (directly from Github) -- so there is nothing there left from some previous version. I open an issue: https://github.com/JuliaLang/julia/issues/8842 Dahua On Tuesday, October 28, 2014 8:13:21 PM UTC+8, Tony Kelman wrote: Damn, I seem to have gotten the dependencies wrong here https://github.com/JuliaLang/Julia/pull/8734/files#diff-3ba529ae517f6b57803af0502f52a40bR840 then? Steven Johnson said he was able to get things to work, I thought. Did it look like all of openblas was rebuilding from scratch? You may have to do `make -C deps install-objconv` manually, but this really shouldn’t be necessary for everyone to do manually if I did things right. For everyone else who builds Julia from source regularly, if you want to rename your openblas symbols, follow the steps here https://github.com/JuliaLang/julia/pull/8734#issuecomment-59978800 - this assumes you’ve built openblas recently enough that you have an existing copy of v0.2.12. Check the results with `Base.blas_vendor()`, it should say :openblas64 if your library has renamed symbols. I also hope completely fresh from-scratch builds on mac should work properly, or if you don’t want to rename your openblas symbols yet (particularly if you plan on bisecting back and forth through the git history) it should leave your existing built openblas library alone. Let’s see if we can figure out what’s going wrong in Dahua’s case. Sorry for the trouble. *From:* Dahua Lin *Sent:* Tuesday, October 28, 2014 4:58 AM *To:* julia...@googlegroups.com *Subject:* [julia-users] Re: Failure of installing Julia 0.4 (latest master) on Mac OS X 10.10 deps/objconv is not there. On Tuesday, October 28, 2014 7:14:11 PM UTC+8, Tony Kelman wrote: Part of that might be my fault, we added the objconv utility recently as a build-time dependency to handle renaming of symbols in OpenBLAS on Mac, to avoid LP64-vs-ILP64 ABI incompatibilities. Can you tell me if you have a deps/objconv folder, and if so what's in it? Does clang++ -o objconv -O2 *.cpp in that folder work? On Tuesday, October 28, 2014 3:53:57 AM UTC-7, Dahua Lin wrote: I just make a fresh clone of Julia 0.4, and when I did make, I get the following error: Note: The following floating-point exceptions are signalling: IEEE_DENORMAL make[4]: /Users/dhlin/julia-0.4/deps/objconv/objconv: No such file or directory make[4]: *** [../libopenblasp-r0.2.12.a.renamed] Error 1 make[3]: *** [shared] Error 2 *** Clean the OpenBLAS build with 'make -C deps clean-openblas'. Rebuild with 'make OPENBLAS_USE_THREAD=0 if OpenBLAS had trouble linking libpthread.so, and with 'make OPENBLAS_TARGET_ARCH=NEHALEM' if there were errors building SandyBridge support. Both these options can also be used simultaneously. *** make[2]: *** [openblas-v0.2.12/libopenblas.dylib] Error 1 make[1]: *** [julia-release] Error 2 make: *** [release] Error 2 Not sure why it raises IEEE_DENORMAL, or OpenBLAS just doesn't work in Yosemite? Dahua
Re: [julia-users] Questions regarding Julia (pycall and Julia types).
What I meant to ask is whether Julia code written with a pycall dependency could at some point be compiled and distributed self contained. But point taken, thanks. On Tuesday, October 28, 2014 8:46:39 PM UTC-4, John Myles White wrote: I think if you're hoping to read a tutorial, then Julia is not the right language for you until it hits 1.0. At the moment, the one true Julia tutorial is reading the Julia source code. I wouldn't worry about the concept of an exe. -- John On Oct 28, 2014, at 5:42 PM, rtem...@gmail.com javascript: wrote: Thanks very much. Would it be conceivably possible at some point to include python functions called from pycall, in a future julia exe? I already have a decent grasp of python, but trying to decide if its worth learning the syntax of the entire scipy system if I will be switching to julia later. The lack of tutorials for data science in julia is the main factor I'm pondering now. On Saturday, October 25, 2014 11:13:43 AM UTC-4, John Myles White wrote: I’m very conservative about recommeinding Julia these days. I’d say that, as a beginner to programming, you may find Julia to be a difficult ride. I think you’ll find Julia quite easy to learn after you’ve already mastered Python. — John On Oct 24, 2014, at 9:41 AM, rtem...@gmail.com wrote: Hi Everyone, I'v posted the below questions on reddit julia , and wanted to elicit additional input from the group. I'm trying to figure out which system (python vs julia) to invest in, Any feedback would be appreciated. http://www.reddit.com/r/Julia/comments/2k4dtm/experience_with_pycall_in_action/ - How robust is pycall? Can I rely on it to do database connections and beautiful soup scraping? http://www.reddit.com/r/Julia/comments/2k79mn/is_there_something_about_julia_that_facilitates/ - julia vs python types for simulations. Using julia types in simulations. Thanks!
Re: [julia-users] Re: Benchmarks for Julia 0.3x ???
Thank you for those fixes! They are much appreciated. I think the thing to do with the C code is probably to use volatile variables to prevent the compiler from deciding that they cannot change. On Oct 28, 2014, at 6:32 PM, Pablo Zubieta pablof...@gmail.com wrote: I bee trying to help with this. And already fixed the java and R issues (I think). I've been thinking on how to fix the other, but I would like some feedback first. To fix the C and Fortran issue (which basically consists on avoid constant-folding and propagation) I was thinking on write an external (configuration) file to hold the pertinent constants and read the constants from that file, so their values won't be known until running time. Would this seem a good solution?
[julia-users] setindex! error
Hi I have the following piece of code and I am getting a setindex! error which I am unable to figure out- times = Array(Float64,(4,10)); # 4 X 10 matrix a=fill(1.0,10); c=fill(0.0,10); times[1][1] = @elapsed @parallel for j=1:10 c[j] = a[j]; end ERROR: `setindex!` has no method matching setindex!(::Float64, ::Float64, ::Int64) What could be the problem ? Kapil
Re: [julia-users] setindex! error
times[1] is the first element of the matrix times. Hence, then writing times[1][1] you are trying to setindex a scalar. If you want to select the 1,1 element of times then you should write times[1,1]. Med venlig hilsen Andreas Noack 2014-10-28 21:58 GMT-04:00 Kapil Agarwal kapil6...@gmail.com: Hi I have the following piece of code and I am getting a setindex! error which I am unable to figure out- times = Array(Float64,(4,10)); # 4 X 10 matrix a=fill(1.0,10); c=fill(0.0,10); times[1][1] = @elapsed @parallel for j=1:10 c[j] = a[j]; end ERROR: `setindex!` has no method matching setindex!(::Float64, ::Float64, ::Int64) What could be the problem ? Kapil
Re: [julia-users] setindex! error
Oh okay. In that case, shouldn't an error be generated at compile time ? ᐧ Regards, Kapil Agarwal On Tue, Oct 28, 2014 at 10:02 PM, Andreas Noack andreasnoackjen...@gmail.com wrote: times[1] is the first element of the matrix times. Hence, then writing times[1][1] you are trying to setindex a scalar. If you want to select the 1,1 element of times then you should write times[1,1]. Med venlig hilsen Andreas Noack 2014-10-28 21:58 GMT-04:00 Kapil Agarwal kapil6...@gmail.com: Hi I have the following piece of code and I am getting a setindex! error which I am unable to figure out- times = Array(Float64,(4,10)); # 4 X 10 matrix a=fill(1.0,10); c=fill(0.0,10); times[1][1] = @elapsed @parallel for j=1:10 c[j] = a[j]; end ERROR: `setindex!` has no method matching setindex!(::Float64, ::Float64, ::Int64) What could be the problem ? Kapil
Re: [julia-users] setindex! error
If a method isn't found at compile time (to check for inlining), the method lookup is deferred until runtime. This leads to nicer interactive work at the REPL when I happen to define a function that calls another function that I define afterwards (but before running). At least that's my understanding. It may be a bit more nuanced than that. -Jacob On Tue, Oct 28, 2014 at 10:03 PM, Kapil kapil6...@gmail.com wrote: Oh okay. In that case, shouldn't an error be generated at compile time ? ᐧ Regards, Kapil Agarwal On Tue, Oct 28, 2014 at 10:02 PM, Andreas Noack andreasnoackjen...@gmail.com wrote: times[1] is the first element of the matrix times. Hence, then writing times[1][1] you are trying to setindex a scalar. If you want to select the 1,1 element of times then you should write times[1,1]. Med venlig hilsen Andreas Noack 2014-10-28 21:58 GMT-04:00 Kapil Agarwal kapil6...@gmail.com: Hi I have the following piece of code and I am getting a setindex! error which I am unable to figure out- times = Array(Float64,(4,10)); # 4 X 10 matrix a=fill(1.0,10); c=fill(0.0,10); times[1][1] = @elapsed @parallel for j=1:10 c[j] = a[j]; end ERROR: `setindex!` has no method matching setindex!(::Float64, ::Float64, ::Int64) What could be the problem ? Kapil
[julia-users] Weird benchmark result
Hi I wrote the following benchmark and I got some weird results which I am unsure of their correctness. a=fill(1.0,1000); b=fill(0.0,1000); f()=@elapsed @parallel for i=1:1000 b[i]=a[i] end I get the following results- julia f() 0.001288817 julia f() 4.0828e-5 julia f() 4.3807e-5 julia f() 4.2003e-5 The first result is probably due to function f() being compiled and after that, there is couple of orders of magnitude gain in performance. Is this benchmark correct or there is some problem with the code ? The corresponding C code takes on average 0.029588 seconds. Is Julia that much faster than C ? -- Kapil