All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Akira Yokosawa <akiyks@gmail.com>
Cc: perfbook@vger.kernel.org
Subject: Re: Julia language
Date: Mon, 27 Nov 2017 10:05:01 -0800	[thread overview]
Message-ID: <20171127180501.GH3624@linux.vnet.ibm.com> (raw)
In-Reply-To: <2241e3df-7540-e0a3-245c-d72348817579@gmail.com>

On Tue, Nov 21, 2017 at 07:39:01AM +0900, Akira Yokosawa wrote:
> On 2017/11/20 09:43:44 -0800, Paul E. McKenney wrote:
> > On Sun, Nov 19, 2017 at 09:30:54AM +0900, Akira Yokosawa wrote:
> >> On 2017/11/19 4:19, Paul E. McKenney wrote:
> >>> On Fri, Nov 17, 2017 at 12:43:19AM +0900, Akira Yokosawa wrote:
> >>>> Hi Paul,
> >>>>
> >>>> Have you heard of "Julia" language?
> >>>>
> >>>> JFYI,
> >>>> As can be seen in its official page at https://julialang.org/ and a Wikipedia
> >>>> article at https://en.wikipedia.org/wiki/Julia_(programming_language),
> >>>> it looks like one of promising answers to perfbook's Section 2.2 "Parallel
> >>>> Programming Goals".
> >>>>
> >>>> As long as high-performance number crunching is concerned, it claims to have
> >>>> comparable performance to C, with a programming productivity much better
> >>>> than C + MPI.
> >>>>
> >>>> Note: I'm not a user of the language at the moment. I just heard of it at
> >>>> a twitter hashtag #julialang.
> >>>>
> >>>> I'd like you to check it up and (hopefully) update the above mentioned
> >>>> section in perfbook.
> >>>
> >>> I had heard of it, but I had not heard of it being seriously proposed
> >>> as the answer to Section 2.2.  I have added it to todo.txt with your
> >>> Reported-by.
> >>>
> >>> Have you or has someone you know used this for a large parallel-programming
> >>> project?  (Just looking for some real-world confirmation.)
> >>
> >> So you want a secondary-source info on the real-world use?
> >>
> >> I learned of Julia from Gen Kuroki's twitter activity since this June.
> >> He is a mathematician at Tohoku Univiersity, and experimenting/demonstrating
> >> Monte Carlo analysis of several statistic problems using Julia (on a Windows PC!).
> >> But what he is doing right now doesn't qualify as a _large_ parallel-programming
> >> project.
> >>
> >> There is a case-studies page at https://juliacomputing.com/case-studies/,
> >> but this should be regarded as a primary source.
> >>
> >> One of the case study, "Deep Learning for Medical Diagnosis" at
> >> https://juliacomputing.com/case-studies/ibm.html, looks like a collaboration
> >> of IBM and Juliacomputing.
> >>
> >> Could this qualify as a real-world large parallel programming example?
> > 
> > Maybe...  Some evaluation and a proposal at the end...
> > 
> > But please understand that 40+ years working in this field has made me
> > deeply skeptical of sweeping claims for new languages.  Now, don't get
> > me wrong, Julia might well be great stuff that deserves mention in the
> > book, but let's first take a quick look at history.
> > 
> > Let's start with my employer, IBM.  This URL is informative:
> > 
> > http://www.softwarepreservation.org/projects/FORTRAN/BackusEtAl-Preliminary%20Report-1954.pdf
> > 
> > This is a 1954 report on the specifications for FORTRAN, reportedly
> > co-authored by none other than John Backus.  Please see page 3, first
> > full paragraph:
> > 
> > 	Since FORTRAN should virtually eliminate coding and debugging,
> > 	it should be possible to solve problems for less than half the
> > 	cost that would be required without such a system.
> > 
> > To be fair, they were comparing coding in FORTRAN to coding in IBM 704
> > assembly language, but still, my use of FORTRAN in the 1970s involved
> > -significant- coding and debugging.  ;-)
> 
> I suppose it was the only language you could choose.
> 
> > 
> > Julia's case-studies page is impressive, but at first glance it appears
> > to mostly be centered on HPC, which leads me to question the "generality"
> > part of the iron triangle of parallel programming.  Gen Kuroki's use
> > case seems to be in a similar area.
> 
> As I said in the first mail in this thread:
> 
>     >>>> As long as high-performance number crunching is concerned, [...]
> 
> I was not sure of "generality" either.
> 
> > 
> > So what to do?
> > 
> > For the upcoming release, nothing.  After all, it is only a few days away.
> > 
> > But perhaps later it might be good to expand Section 17.4 ("Functional
> > Programming for Parallelism") to cover languages instead of just
> > functional programming.  Julia might fit in here, as might Rust (given
> > the ownership aspects of its type system), Go (another popular parallel
> > system), and maybe even Python (because everyone and their dog seems
> > to use it).
> > 
> > Does that seem reasonable?
> 
> Sounds good!
> 
> Julia seems the youngest one among them.
> We can wait for (say) a few years to see where it goes, I suppose.

And here is Eric Raymond's take on this:  http://esr.ibiblio.org/?p=7724

Thoughts?

							Thanx, Paul


  reply	other threads:[~2017-11-27 18:04 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-16 15:43 Julia language Akira Yokosawa
2017-11-18 19:19 ` Paul E. McKenney
2017-11-19  0:30   ` Akira Yokosawa
2017-11-20 17:43     ` Paul E. McKenney
2017-11-20 22:39       ` Akira Yokosawa
2017-11-27 18:05         ` Paul E. McKenney [this message]
2017-11-28  2:07           ` Yubin Ruan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171127180501.GH3624@linux.vnet.ibm.com \
    --to=paulmck@linux.vnet.ibm.com \
    --cc=akiyks@gmail.com \
    --cc=perfbook@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.