Julia/Knet deep learning tutorial available with free GPUs from Google Colab


To try it out, please follow the instructions at https://github.com/denizyuret/Knet.jl/tree/dy/1.1/tutorial and let me know if anything does not work. Thanks @jekbradbury for figuring this out.


@denizyuret: Thanks. one question about gcc compiler. How do I check whether I have gcc installed or not. By the way I have MS visual c++ compiler installed that works for cython. I have also numba installed but do not know which compiler it is using.

gcc --version
g++ --version

if you get an error you don’t have it installed. I believe you can install that compiler on MS as a standalone even after you’ve installed visual studio (where MS visual might have install cl ??).
Install C++ support in Visual Studio


I don’t have gcc installed.

When I run the 5th cell in ‘Julia is fast’. I get the following error.

IOError: could not spawn `gcc -std=c99 -fPIC -O3 -msse3 -xc -shared -o 'C:\Users\chatura\AppData\Local\Temp\jl_C7CA.tmp.dll' -`: no such file or directory (ENOENT)

 [1] _jl_spawn(::String, ::Array{String,1}, ::Cmd, ::Tuple{Base.PipeEndpoint,Base.DevNull,Base.PipeEndpoint}) at .\process.jl:367
 [2] (::getfield(Base, Symbol("##495#496")){Cmd})(::Tuple{Base.PipeEndpoint,Base.DevNull,Base.PipeEndpoint}) at .\process.jl:509
 [3] setup_stdio(::getfield(Base, Symbol("##495#496")){Cmd}, ::Tuple{Pipe,Base.DevNull,IJulia.IJuliaStdio{Base.PipeEndpoint}}) at .\process.jl:490
 [4] #_spawn#494(::Nothing, ::Function, ::Cmd, ::Tuple{Pipe,Base.DevNull,IJulia.IJuliaStdio{Base.PipeEndpoint}}) at .\process.jl:508
 [5] _spawn(::Cmd, ::Tuple{Pipe,Base.DevNull,IJulia.IJuliaStdio{Base.PipeEndpoint}}) at .\process.jl:504
 [6] #open#504(::Bool, ::Bool, ::Function, ::Cmd, ::Base.DevNull) at .\process.jl:599
 [7] #open at .\none:0 [inlined]
 [8] open(::Cmd, ::String, ::Base.DevNull) at .\process.jl:567
 [9] open at .\process.jl:562 [inlined]
 [10] open(::getfield(Main, Symbol("##3#4")), ::Cmd, ::String) at .\process.jl:615
 [11] top-level scope at In[5]:15

Can’t I use MS visual c++ compiler and how? I have these components installed as part of visual studio. Sorry if this sounds silly but I am new to Julia and not a professional programmer.

C# and Visual Basic Roslyn compilers
Static analysis tools
Text Template Transformation
ASP.NET and web development
Visual Studio C++ core features
Visual C++ 2017 Redistributable Update
VC++ 2017 version 15.8 v14.15 latest v141 tools
Windows 10 SDK (10.0.17134.0)


i need to go through the colab notebooks myself to understand.

But the gcc compiler and Windows OS is not a Julia problem… that is c/c++ compilers and compatibility lameness. I don’t have access to Windows right now so I’m not sure what steps to take (or even if its worth the trouble trying to get gcc on windows :frowning: ). You could start here: http://mingw-w64.org/doku.php/download#mingw-builds

maybe someone else on this forum has better advice :man_shrugging:


oh ahaha i should have looked at the notebook pane you were describing… I’m pretty sure you can just skip running much of that…

the example is building and compiling a C program and using that as an example of wrapping Julia and linking to it. From what I can see it’s just some expository code to show how easy it is for Julia to interop with C/C++

Having said that, I’ve never run Knet on Windows, only Linux and Mac, so I can’t speak to experience running Knet on windows.

But I’d say if you’re able to pkg install Knet and Pycall on your machine you’re likely good to go.


@Joshua_Bowles: Thanks. I plan work on other parts of the notebook.