Skip to content

Commit bd612a9

Browse files
committed
no root necessary etc
1 parent d2f4c60 commit bd612a9

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

website/user_faq.md

+5-1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ noeval = true
1515

1616
---
1717

18+
## Julia isn't available on my cluster. Can I install and use it (without root privileges)?
19+
20+
Yes, absolutely. You **do not** need root privileges to install Julia and its packages. However, often times it's better to put the Julia depot - the place where packages, artifacts, and other things will be stored - on the parallel file system rather than into `$HOME`. See the [Getting Started](/user_gettingstarted/) section for more information.
21+
1822
## Should I compile Julia from source?
1923

2024
**No, you should not.** Use the pre-built binaries from the website or, preferably, a corresponding Lmod module provided by the cluster admins. Compiling Julia from source will generally **not** improve the performance of your code (Julia is a compiler in itself) but may very well be cumbersome. Unless you know what you're doing and have a very good reason (e.g. creating a debug build with flags like `USE_INTEL_JITEVENTS=1`) you should not compile Julia yourself.
@@ -44,7 +48,7 @@ Note that you can use the slim `mpiexecjl` wrapper from `MPI.jl` to use the "cor
4448

4549
## How can I force Julia to compile code for a heterogeneous cluster?
4650

47-
Set [`JULIA_CPU_TARGET`](https://docs.julialang.org/en/v1.10-dev/manual/environment-variables/#JULIA_CPU_TARGET) to a value that is generic enough to cover all the types of CPUs that you're targeting.
51+
Set [`JULIA_CPU_TARGET`](https://docs.julialang.org/en/v1.10-dev/manual/environment-variables/#JULIA_CPU_TARGET) to a value that is generic enough to cover all the types of CPUs that you're targeting. You can get the CPU target name for the current system with `Sys.CPU_NAME`.
4852

4953
**Example:** `JULIA_CPU_TARGET="generic;skylake-avx512,clone_all;znver2,clone_all"`.
5054

website/user_gettingstarted.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ Getting started with Julia on a new cluster can sometimes be a challenge. Below
2323

2424
When starting on a new HPC cluster the first thing you should do is figure out if there is a pre-configured Julia module ([Lmod module](https://lmod.readthedocs.io/en/latest/010_user.html)) available on the cluster. To that end, `module key julia` or `module spider julia` might be helpful commands.
2525

26-
If there is no Julia module available that you can load, you should download and use the regular, precompiled Julia binaries. We strongly recommend to use [juliaup](https://github.com/JuliaLang/juliaup) for this. Alternatively, you can also manually download the binaries directly [from the website](https://julialang.org/downloads/).
26+
If there is no Julia module available that you can load, you should download and use the regular, precompiled Julia binaries. We strongly recommend to use [juliaup](https://github.com/JuliaLang/juliaup) for this. Alternatively, you can also manually download the binaries directly [from the website](https://julialang.org/downloads/). In any case, you should generally **not** build Julia from source (unless you have a very good reason).
2727

28-
In any case, you should generally **not** build Julia from source (unless you have a very good reason).
28+
Note that you **do not** need root privileges. Julia, and its packages, works great without special permissions in user space.
2929

3030
[_**back to Content**_](#content)
3131

@@ -54,6 +54,6 @@ To make Julia produce efficient code that works on different CPUs, you need to s
5454

5555
`export JULIA_CPU_TARGET="generic;skylake-avx512,clone_all;znver2,clone_all"`.
5656

57-
For more information, see [this section of the Julia documentation](https://docs.julialang.org/en/v1/manual/environment-variables/#JULIA_CPU_TARGET) and [this section of the developer documentation](https://docs.julialang.org/en/v1/devdocs/sysimg/#Specifying-multiple-system-image-targets).
57+
You can get the CPU target name for the current system with `Sys.CPU_NAME`. For more information, see [this section of the Julia documentation](https://docs.julialang.org/en/v1/manual/environment-variables/#JULIA_CPU_TARGET) and [this section of the developer documentation](https://docs.julialang.org/en/v1/devdocs/sysimg/#Specifying-multiple-system-image-targets).
5858

5959
[_**back to Content**_](#content)

0 commit comments

Comments
 (0)