JUSTUS2/Software/Julia: Difference between revisions
M Carmesin (talk | contribs) No edit summary |
M Carmesin (talk | contribs) No edit summary |
||
Line 30: | Line 30: | ||
== Interactive Example == |
== Interactive Example == |
||
Load Julia module and start interactive REPL session with 8 threads: |
Load Julia module and start interactive REPL session with 8 threads, using the environment in the current directory: |
||
<code> |
|||
module load math/julia |
|||
julia -t 8 --project=. |
|||
</code> |
|||
Enter ']' to go into package manager and install package `UnicodePlots`. |
|||
<code> |
|||
add UnicodePlots |
|||
</code> |
|||
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. |
|||
<code> |
|||
vec = zeros(64) |
|||
Threads.@threads for i in eachindex(vec) |
|||
vec[i]= Threads.threadid() |
|||
end |
|||
</code> |
|||
Load the `UnicodePlots` package and draw a scatter plot of the contents of `vec` |
|||
<code> |
|||
using UnicodePlots |
|||
scatterplot(vec) |
|||
</code> |
|||
== Further documentation == |
== Further documentation == |
||
* [https://github.com/carstenbauer/JuliaHLRS24 Julia Workshop at HLRS]: The material of this workshop is in large parts also valid for the Justus cluster |
* [https://github.com/carstenbauer/JuliaHLRS24 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). |
||
== Tips & Tricks == |
== Tips & Tricks == |
Revision as of 17:06, 8 October 2024
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).