元ネタ
https://discourse.julialang.org/t/julia-on-google-colab-free-gpu-accelerated-shareable-notebooks/15319
本記事の内容はこちらにすべて書かれてます。
以下はそれをやってみた系の備忘録となります。
手順
上記のリンク先では GPU を使うとのことですが、今回は普通に CPU でサクッと試してみます。
GPU を使う場合は、インストールに15~20分くらいかかるらしいですし、自分がやったときは Error でしくじりました。
1. Google Colabをひらく
Python3 で新しいノートブックを作成してください
2. 以下のコードをセルにコピペして実行(Ctrl+Enter)
!curl -sSL "https://julialang-s3.julialang.org/bin/linux/x64/1.0/julia-1.0.0-linux-x86_64.tar.gz" -o julia.tar.gz
!tar -xzf julia.tar.gz -C /usr --strip-components 1
!rm -rf julia.tar.gz*
!julia -e 'using Pkg; pkg"add IJulia"'
上記リンク先で紹介されてたコードで CUDA に関係なさげなところを削っただけです。
やっていることは、Julia をダウンロードして解凍してるだけですね。
ついでに IJulia パッケージもダウンロードしてます。
3. 以下のJSONを .ipynb ファイルでローカルに保存
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "julia_test.ipynb",
"version": "0.3.2",
"provenance": []
},
"kernelspec": {
"name": "julia-1.0",
"display_name": "Julia 1.0"
}
},
"cells": [
{
"metadata": {
"id": "u8woq-Zbu_SK",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"for i in 1:3\n",
" println(\"Juliaが動いた。Colabで動いた\")\n",
"end"
],
"execution_count": 0,
"outputs": []
}
]
}
上記の JSON を保存する際に注意してほしいのは、拡張子を .ipynb とすることです。
"kernelspec" に注目してください。
Colab のエンジニアが Julia も実行できるようにしてたんですね。完全にGoogle社員しか知らない裏ワザです。
この JSON も、上記リンク先とほぼ同じなのですが、 "accelerator" を指定してません。
"accelerator" は、 GPU / TPU を指定する際に使われるのですが、今回は CPU で動かすのでつけなくておkということです。
GPU で動かしたい!という方は上記リンク先を読んでみてください。
4. 保存した ipynb ファイルを Colab にアップロード
2 で実行した Colab 上で [ファイル] -> [ノートブックをアップロード]
そいで、3で保存した ipynb ファイルをアップロードします。
すると、こんな感じのセルが表示されるのではないでしょうか。
for i in 1:3
println("Juliaが動いた。Colabで動いた")
end
これは紛れもなく Julia の文法ですね。
5 実行(Ctrl+Enter)
ちゃんと3回、 Juliaが動いた。Colabで動いた が表示されましたでしょうか。
Juliaが動いた。Colabで動いた
Juliaが動いた。Colabで動いた
Juliaが動いた。Colabで動いた
これから
本記事は以上となります。
Julia のパッケージを追加する場合は、2 のところで書いたコードに、こんな感じで追加していくのでおkです。
!julia -e 'using Pkg; pkg"add IJulia; add Dataframes; add TextPlots;"'
enjoy!