First Windows build of julia

664 views
Skip to first unread message

Viral Shah

unread,
Apr 1, 2012, 10:56:40 PM4/1/12
to juli...@googlegroups.com
Thanks to the amazing Keno Fischer and with help from Jameson Nash, we now have our first Windows build of julia, just in time for the Lang.Next.

https://github.com/downloads/JuliaLang/julia/julia-package.zip

This is not yet merged in, but you can follow it here.

https://github.com/JuliaLang/julia/pull/521

-viral

Stefan Karpinski

unread,
Apr 2, 2012, 3:00:37 AM4/2/12
to juli...@googlegroups.com
This is really great. Just in time for a presentation on Julia at an MS-hosted event too! Great work, Keno & Jameson. Thank you both.

Alan Edelman

unread,
Apr 2, 2012, 5:34:07 AM4/2/12
to juli...@googlegroups.com
Very cool --- took five seconds to be up and running!!!!
Thank you so much Keno and Jameson!!!!

Now I hvae to figure out how to change the color scheme :-)

Inline image 1


On Sun, Apr 1, 2012 at 10:56 PM, Viral Shah <vi...@mayin.org> wrote:
image.png

Alan Edelman

unread,
Apr 2, 2012, 8:09:48 AM4/2/12
to juli...@googlegroups.com
Can I get the quadcore parallelism on my windows machine?
image.png

Keno Fischer

unread,
Apr 2, 2012, 8:36:11 AM4/2/12
to juli...@googlegroups.com
Soon, but not yet. There's still a few bugs in the socket handling that I
have to figure out. I might get to it today. If not it'll be done by the end
of the week.

-Keno

> -----Original Message-----
> From: juli...@googlegroups.com [mailto:juli...@googlegroups.com] On
> Behalf Of Alan Edelman
> Sent: Montag, 2. April 2012 08:10
> To: juli...@googlegroups.com
> Subject: Re: [julia-dev] First Windows build of julia
>
> Can I get the quadcore parallelism on my windows machine?
>
>
> On Mon, Apr 2, 2012 at 5:34 AM, Alan Edelman <mit.e...@gmail.com>
> wrote:
>
>
> Very cool --- took five seconds to be up and running!!!!
> Thank you so much Keno and Jameson!!!!
>
> Now I hvae to figure out how to change the color scheme :-)
>

Umberto

unread,
Apr 2, 2012, 10:00:44 AM4/2/12
to juli...@googlegroups.com
AWESOME! Thank you!

Stefan Karpinski

unread,
Apr 2, 2012, 10:26:42 AM4/2/12
to juli...@googlegroups.com
This is great. You can change the answer color by setting the JL_ANSWER_COLOR environment variable, which can be done within the program or before. See attached.

On Mon, Apr 2, 2012 at 5:34 AM, Alan Edelman <mit.e...@gmail.com> wrote:
image.png
colors.png

Umberto

unread,
Apr 3, 2012, 6:12:06 AM4/3/12
to juli...@googlegroups.com
Hi

again, thanks for the Windows port.
I understand this is just a first release, however I want to point you to the following problem. I have run the simple code (Gibbs sampler, creating 2 arrays having 50,000 elements each) as from http://timsalimans.com/gibbs-sampling-with-julia/ and basically Julia eats quite a lot of memory. The following screenshot gives the Windows Task Manager after running the program twice.  Each time I run it it requires 600,000 Kb in addition to the ones required to perform the previous run(s). So after 2 runs of the program my system got stuck.
Untitled 1.jpg

Viral Shah

unread,
Apr 3, 2012, 9:23:51 AM4/3/12
to juli...@googlegroups.com
I believe there were a bunch of GC related issues during the port, and perhaps we have leaks here.

-viral

> <Untitled 1.jpg>

Keno Fischer

unread,
Apr 3, 2012, 9:30:07 AM4/3/12
to juli...@googlegroups.com
That could very well be. I'll have a look at it. I won't get to it today
though.

> -----Original Message-----
> From: juli...@googlegroups.com [mailto:juli...@googlegroups.com] On
> Behalf Of Viral Shah
> Sent: Dienstag, 3. April 2012 09:24
> To: juli...@googlegroups.com
> Subject: Re: [julia-dev] First Windows build of julia
>

haymo kutschbach

unread,
Apr 3, 2012, 4:13:25 PM4/3/12
to juli...@googlegroups.com
Also got the memory leaks. Nevertheless, I managed to run a simple kmeans algorithm with very little code changes from Matlab: 

function kmeansclust (X, k, maxIterations)
 
nan_ = 0.0 / 0.0;
n = size(X,2);
classes = zeros(Int32,1,n);
centers = rand(size(X,1),k);
oldCenters = copy(centers);
while (maxIterations > 0)
        println("iterations left: $maxIterations");
        maxIterations = maxIterations - 1;
        for i = 1:n
                Xexp = repmat(X[:,i],1,k);
                dists = sum(abs(centers - Xexp),1);
            classes[i] = find(min(dists) == dists)[1];
        end
        for i = 1:k
            inClass = X[:,find(classes == i)];
            if (isempty(inClass))
                centers[:,i] = nan_;
            else
                centers[:,i] = mean(inClass,2);
            end
        end
        if (all(oldCenters == centers))
            break;
        end
        oldCenters = copy(centers);
 end
 (centers, classes)
end


There have been some problems though: 

* min() seems broken on Float64 (at least). It crashed deterministically after 4 calls): 
julia> a = [1. 2 3 4]
1x4 Float64 Array:
 1.0  2.0  3.0  4.0

julia> min(a)
Error: Symbol Could not be found fmin (-1:127)


julia> min(a)
Error: Symbol Could not be found fmin (-1:127)


julia> min(a)
Error: Symbol Could not be found fmin (-1:127)


julia> min(a)
Stack dump:
0.      Running pass 'Lower invoke and unwind, for unwindless code generators' o
n function '@min622'
0x008124D3 (0x00F69D10 0x00F481D0 0x0028F0A8 0x00000000), jl_genericfunc_name()
+ 0x3DADC7 bytes(s)
0x0096EC1E (0x00CF29FC 0x0028F114 0x00000001 0x00F481D0), jl_genericfunc_name()
+ 0x537512 bytes(s)

* On startup I get the following warning: "Entropy pool not available to seed RNG, using ad-hoc entropy sources.
CreateProcessW: Das System kann die angegebene Datei nicht finden."

* The color scheme on Windows is ... hm ... a challenge. Too late I realized that one can change the default colors. :| 
* On my console, the [del] key does not work 
* There is still something strange about cell arrays: the printout does only work if the (all?) cell elements are empty
* a = [1:10]; b = ref(a,1:end,2) -> missing comma or ) in argument list; But: a[1:end,2] works. -> problem with 'end'?
* could not find any way to get the indices out of min/max. Possibly related to the first issue? 

I dont know, which is related to Windows. Didn't try anything else. Anyway! I know, this is a very early release. And it already makes fun using it! Keep going! :) 

Allan Erskine

unread,
Apr 4, 2012, 2:51:36 PM4/4/12
to juli...@googlegroups.com
Nice work!  Works for me on Windows 7

My glitch reports are that the REPL only runs from within the julia-package directory (seems to go into a loop otherwise):

"Preparing Julia for first launch. This may take a while"
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
"Preparing Julia for first launch. This may take a while"
The system cannot find the path specified.
...

and help() doesnt' work:

julia> help()
Downloading help data...
CreateProcessW: The system cannot find the file specified.
type error: getfield: expected CompositeKind, got (NamedPipe,Processes)
 in _jl_init_help at util.jl:267
 in help at util.jl:274

Rob

unread,
Apr 5, 2012, 11:53:49 AM4/5/12
to juli...@googlegroups.com
Do you need to make JL_ANSWER_COLOR a Windows environment variable before you can use it?  The only environment variable that the Julia instance on my machine recognizes is JL_HOME.


On Monday, April 2, 2012 10:26:42 AM UTC-4, Stefan Karpinski wrote:
This is great. You can change the answer color by setting the JL_ANSWER_COLOR environment variable, which can be done within the program or before. See attached.

Mark Henderson

unread,
Apr 5, 2012, 12:22:20 PM4/5/12
to juli...@googlegroups.com
Yes. 

Note, it didn't work for me when trying to set it from within the REPL. Had to do it the usual way.

Rob

unread,
Apr 6, 2012, 1:07:47 AM4/6/12
to juli...@googlegroups.com
I apologize for not giving a big thank you for the Windows build earlier.  Thanks!

It appears that the environment variable isn't taking hold for me.  Will it not work if I've edited my cmd.exe to have custom colors?  Could that override Julia's env vars?  And, is there an env var for the color of the input text?

Thanks, again!

Mark Henderson

unread,
Apr 6, 2012, 10:25:12 AM4/6/12
to juli...@googlegroups.com
I had the best luck setting JL_ANSWER_COLOR as a system variable through the Environment Variables dialog in System Properties. I started with it as a User Variable, but saw some inconsistencies perhaps like you're seeing when I messed with the shell settings.

Not sure about the input text color, but from a quick glance at the files in ui I don't believe there is a related env variable that can be set.

Stefan Karpinski

unread,
Apr 6, 2012, 12:42:37 PM4/6/12
to juli...@googlegroups.com
No, there isn't one. It would be pretty easy to add one, but there was never much disagreement on the input color. I gather that the current colors are just kind of unreadable on Windows?

Viral Shah

unread,
Apr 6, 2012, 1:20:42 PM4/6/12
to juli...@googlegroups.com
Yes, the colors are unreadable. Just white would be more readable.

-viral

Keno Fischer

unread,
Apr 7, 2012, 1:24:23 PM4/7/12
to juli...@googlegroups.com

I'm currently working on fixing the random number seed generation (which is what's causing the various CreateProcessW warnings). However, at this point the codepath of Win vs. Linux/OS X in Julia is so very different that there needs to be a design decision made.

Do we

    A. Want to expose the platform information to Julia and use some sort of macro to choose the proper code path or

    B. contain all platform differences in C (this would be a lot messier, but has the benefit that we don't need to deal with that in Julia)

 

Ideas, thoughts, suggestions?

 

-Keno

 

P.S: Sorry for not getting to this earlier. I had some problems with my computer and just got the new harddrives to fix it (On the other hand 2s startup time thanks to my SSD now ;)

Viral Shah

unread,
Apr 7, 2012, 1:51:48 PM4/7/12
to juli...@googlegroups.com
I think it is actually useful to expose the OS information to julia, which is likely to be a generally useful feature.

-viral

Reply all
Reply to author
Forward
0 new messages