Julia is now supported on IBM Energy – IBM Developer

0
98


Julia is a general-purpose programming language with a particular give attention to scientific computing. Julia is as quick as C programming language in lots of circumstances whereas remaining dynamic like Python.

We’re pleased to announce that as of Dec 19, 2021, Julia 1.6.2 is supported on the IBM Energy platform, “Tier-3” degree. For extra details about Tier 3, confer with the Julia obtain web page.

The recognition of Julia has been hovering because it first grew to become obtainable in 2012, and it’s at the moment within the prime 30 programming languages as per the TIOBE index.

Check with the next fascinating articles about Julia:

Advantages of Julia on IBM Energy

Designed with machine studying (ML) in thoughts, Julia focuses on the scientific computing area and its want for parallel, distributed, and intensive computation duties. Juliahas a robust suite of libraries for growing synthetic intelligence which incorporates basic linear fashions, choice bushes, clustering, Flux for deep studying, textual content evaluation for pure language processing, and so forth. Julia advantages to Energy within the following methods:

  • Julia is a straightforward programming language to be taught. Its syntax is much like Python and MATLAB, and will be simply tailored on Energy. The next code snippet exhibits the similarity amongst Julia, MATLAB, and Python languages:

    Import packages Nil import numpy as np
    import matpotlib.pyplot as plt
    Import Pkg
    Pkg.add(“Plots”)
    utilizing Plots
    Outline the variable for X axis x = 0 : pi/10 : 2pi; x=np.linespace(0, 2np.pi, 21) x = 0 : pi/10 : 2*pi;
    Outline the variable for Y axis y = sin(x); y = np.sin(x) y = sin.(x);
    Code snippet to plot the graph plot(x,y)
    title(‘My first plot’)
    xlabel(‘x-axis’)
    ylabel(‘y-axis’)
    plt.plot(x,y)
    plt.title(‘My first plot’)
    plt.xlabel(‘x-axis’)
    ply.ylabel(‘y-axis)
    plot(x,y
    title=”My first plot”,
    xaxis=(“x-axis”),
    yaxis=(“y-axis”))
  • Julia integrates effectively with the prevailing code and platforms comparable to IBM Energy.

  • Julia combines the familiarity and ease of use of Python and R with the velocity and the power of C, C++, or Java. So programmers not have to estimate fashions in a single language and reproduce them in a quicker manufacturing language.

Take a look at Why Information Scientists Are Falling in Love With Julia.

What did we do and the way did it work?

  • The primary time we tried to construct Julia on IBM Energy, it failed as a consequence of errors. Later, we have been in a position to hint again to low degree digital machine (LLVM) and people have been fastened within the subsequent LLVM releases [pull request (PR) for LLVM release fixes].
  • We encountered some points associated to code era, which have been traced and corrected by the LLVM crew.
  • Cbc and JuMP libraries didn’t work with Julia as a consequence of interfaces that weren’t up to date for Energy. This has been fastened (PR for Cbc and JuMP fixes).
  • We added assist for detecting the proper CPU ID that was carried out within the upstream code (PR for detecting appropriate CPU ID).
  • There are miscellaneous fixes for Energy in Julia.

Strive Julia on Energy

Carry out the next steps to put in and run Julia on a Energy digital machine (VM):

  1. Obtain the newest secure construct of Julia. Enter the next command on the Energy system to get the TAR file for Energy (ppc64le):

    wget https://julialang-s3.julialang.org/bin/linux/ppc64le/1.6/julia-1.6.2-linux-ppc64le.tar.gz
    

  2. Extract the .tar file.

    tar -xvzf julia-1.6.2-linux-ppc64le.tar.gz
    

  3. Enter the next instructions to run the Julia binary file current within the bin/julia listing of the extracted listing:

    [user1@p006vm71 ~]$ cd julia-1.6.2
    [user1@p006vm71 julia-1.6.2]$ bin/julia
    

    Or,

    [user1@p006vm71 julia-1.6.2]$ export PATH=$PATH:~/julia-1.6.2/bin
    [user1@p006vm71 julia-1.6.2]$ julia
    

The command immediate of the Julia console appears as follows:

img1

How will you use Julia?

Julia can be utilized to run scripts and plenty of different instructions that may present easy to complicated output. Following are a few of the examples:

  • Use the next Julia command to seek out the platform and model info:

    julia>
    julia> versioninfo()
    Julia Model 1.8.0-DEV.889
    Commit f14e44f38b* (2021-11-03 05:54 UTC)
    Platform Data:
    OS: Linux (ppc64le-redhat-linux)
    CPU: POWER8 (architected), altivec supported
    WORD_SIZE: 64
    LIBM: libopenlibm
    LLVM: libLLVM-12.0.1 (ORCJIT, pwr8)
    

  • Run the next Julia code snippet to seek out the CPU info:

    julia> ccall(:jl_dump_host_cpu, Cvoid, ())
    CPU: pwr8
    Options:
    julia>
    

  • Run a .jl file to get the required output. Following are the steps to run a pattern .jl file:

    1. Write the next code in Julia (that plots a graph on the X and Y axis) and reserve it as plots.jl:

      import Pkg
      Pkg.add("Plots")
      
      utilizing Plots
      
      # plot some knowledge
      plot([cumsum(rand(500) .- 0.5), cumsum(rand(500) .- 0.5)])
      
      # save the present determine
      savefig("plots.svg")
      

    2. Run plots.jl as:

      The output is as follows:

      img2

For extra details about working with Julia, go to https://docs.julialang.org/

Acknowledgment

The authors wish to thank Valentin Churavy, Nemanja Klimnovic, and Hari Reddy for serving to them to get Julia working on Energy.

Reference articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here