• DocumentCode
    3582319
  • Title

    Experimental Multi-threading Support for the Julia Programming Language

  • Author

    Knopp, Tobias

  • Author_Institution
    Sect. for Biomed. Eng., Univ. Med. Center Hamburg Eppendorf, Hamburg, Germany
  • fYear
    2014
  • Firstpage
    1
  • Lastpage
    5
  • Abstract
    Julia is a young programming language that is designed for technical computing. Although Julia is dynamically typed it is very fast and usually yields C speed by utilizing a just-in-time compiler. Still, Julia has a simple syntax that is similar to Matlab, which is widely known as an easy-to-use programming environment. While Julia is very versatile and provides asynchronous programming facilities in the form of tasks (coroutines) as well as distributed multi-process parallelism, one missing feature is shared memory multi-threading. In this paper we present our experiment on introducing multi-threading support in the Julia programming environment. While our implementation has some restrictions that have to be taken into account when using threads, the results are promising yielding almost full speedup for perfectly parallelizable tasks.
  • Keywords
    computational linguistics; distributed shared memory systems; multi-threading; parallel languages; program compilers; Julia programming environment; Julia programming language; asynchronous programming facilities; distributed multiprocess parallelism; just-in-time compiler; shared memory multithreading; syntax; technical computing; Arrays; Computer languages; Dynamic programming; Instruction sets; Libraries; MATLAB; Resource management;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    High Performance Technical Computing in Dynamic Languages (HPTCDL), 2014 First Workshop for
  • Type

    conf

  • DOI
    10.1109/HPTCDL.2014.11
  • Filename
    7069898