JUSTUS2/Software/Julia
The main documentation is available via |
Description | Content |
---|---|
module load | math/julia |
Availability | bwUniCluster | JUSTUS2 |
License | MIT License |
Citing | [1] |
Links | Project homepage | Documentationn] |
Graphical Interface | No |
Introduction
Julia is a high-level, high-performance, dynamic programming language, being designed with scientific computing in mind. Parallel programming features, such as multi-threading are included in the core language, while there also exit packages leveraging the power of MPI and CUDA.
Interactive Example
Load Julia module and start interactive REPL session with 8 threads, using the environment in the current directory:
module load math/julia
julia -t 8 --project=.
Enter ']' to go into package manager and install package `UnicodePlots`.
add UnicodePlots
Leave the package manager with the backspace key.
Create an vector with 64 elements set to 0 and fill it using all threads with the corresponding tread id number.
vec = zeros(64)
Threads.@threads for i in eachindex(vec)
vec[i]= Threads.threadid()
end
Load the `UnicodePlots` package and draw a scatter plot of the contents of `vec`
using UnicodePlots
scatterplot(vec)
Further documentation
- Julia Workshop at HLRS: The material of this workshop is in large parts also valid for the Justus cluster (on Justus you only need the module math/julia).