[BIOSAL] Minimal build of thorium actor applications

George K. Thiruvathukal gkt at cs.luc.edu
Tue Nov 4 16:52:39 CST 2014


There's one other thing I wanted to put on our radar.

While working with Eclipse CDT (and other IDEs), it is becoming apparent
that having the build objects appear in the same folders as the source is a
bit less than desirable. Most C/C++ projects tend to overcome this by
having a separate build folder. We should try try to build to an external
directory, e.g. build/<target>, where <target> is a configuration, and
"build" is a peer directory of "src". (We presently don't have an src
subdirectory, but this is ok.) This would allow us to keep the .o/.obj
files out of the project view when inside of an IDE. As I'm sure you know,
it also makes for an easier "clean" rule (rm -rf build/<target>).

Again, none of what I'm writing is a bug per se. It's just that I'd like to
find a way to make it better for different ways of using the source code
(or development workflows, as I like to call them).

It seems like the current Makefile structure lends itself to doing this
change, since you are building up a list of files and then compiling all of
them (presumably from the top level). But I might be missing something.

Anyway, I'll discuss this with you tomorrow, among other topics we have on
our regular agenda. I can make an issue in our GitHub tracker for this, but
I thought it would be good to discuss this first. We do have other
priorities, so this is not urgent but one of those things that would put us
on par with toolkits like MPICH, Globus, etc.

George




George K. Thiruvathukal, PhD
*Professor of Computer Science*, Loyola University Chicago
*Director*, Center for Textual Studies and Digital Humanities
*Guest Faculty*, Argonne National Laboratory, Math and Computer Science
Division
Editor in Chief, Computing in Science and Engineering
<http://www.computer.org/portal/web/computingnow/cise> (IEEE CS/AIP)
(w) gkt.tv (v) 773.829.4872


On Tue, Nov 4, 2014 at 4:40 PM, Boisvert, Sebastien <boisvert at anl.gov>
wrote:

> Great !
>
> > From: George K. Thiruvathukal [gkt at cs.luc.edu]
> > Sent: Tuesday, November 04, 2014 4:38 PM
> > To: Boisvert, Sebastien
> > Cc: biosal at lists.cels.anl.gov
> > Subject: Re: [BIOSAL] Minimal build of thorium actor applications
> >
> >
> >
> >
> > ​Seb,
> >
> >
> > Just letting you know, everything is working! This is going to be really
> helpful for me (and, I hope, others).
> >
> >
> > Best,
> > George​
> >
> >
> >
> > George K. Thiruvathukal, PhD
> >
> > Professor of Computer Science, Loyola University Chicago
> >
> > Director, Center for Textual Studies and Digital Humanities
> > Guest Faculty, Argonne National Laboratory, Math and Computer Science
> Division
> > Editor in Chief, Computing in
> >  Science and Engineering (IEEE CS/AIP)
> >
> > (w) gkt.tv (v)
> >  773.829.4872
> >
> >
> >
> >
> >
> >
> >
> > On Tue, Nov 4, 2014 at 3:10 PM, Boisvert, Sebastien
> > <boisvert at anl.gov> wrote:
> >
> > Yes
> >
> > Option list:
> >
> https://github.com/sebhtml/biosal/blob/master/Documentation/Compilation_Options.md
> >
> >
> > You probably want to use something like this:
> >
> > make -j CONFIG_MPI=n CC=cc
> >
> >
> >
> > > From: George K. Thiruvathukal [gkt at cs.luc.edu]
> > > Sent: Tuesday, November 04, 2014 2:45 PM
> > > To: Boisvert, Sebastien
> > > Cc:
> > biosal at lists.cels.anl.gov
> > > Subject: Re: [BIOSAL] Minimal build of thorium actor applications
> >
> > >
> > >
> > >
> > >
> > > Hi Seb,
> > >
> > >
> > > This is fantastic news! If I pull from upstream (sebhtml/master), will
> I pick this up?
> > >
> > >
> > > George
> > >
> > >
> > >
> > > George K. Thiruvathukal, PhD
> > >
> > > Professor of Computer Science, Loyola University Chicago
> > >
> > > Director, Center for Textual Studies and Digital Humanities
> > > Guest Faculty, Argonne National Laboratory, Math and Computer Science
> Division
> > > Editor in Chief, Computing in
> > >  Science and Engineering (IEEE CS/AIP)
> > >
> > > (w)
> > gkt.tv (v)
> > >  773.829.4872
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > On Tue, Nov 4, 2014 at 9:37 AM, Boisvert, Sebastien
> > > <boisvert at anl.gov> wrote:
> > >
> > > Following George's request, I added some options to do minimal builds:
> > >
> > > "-lrt" is no longer needed, there is a fallback path with gettimeofday.
> > >
> > > For MPI, I had to add "mock_transport" which only sets the rank to 0
> and the size to 1.
> > >
> > >     The new minimal build only needs libm, libc, and libpthread.
> > >
> > >     linux-vdso and ld-linux-x86-64 are specific to the Linux operating
> system
> > >     and/or to the architecture. vdso (vsyscall) is used to invoke some
> system
> > >     calls directly from userspace for better performance. ld-linux is
> used
> > >     to load shared libraries.
> > >
> > >     $ make -j CONFIG_CLOCK_GETTIME=n CONFIG_MPI=n CONFIG_ZLIB=n CC=cc
> > >     $ ldd performance/latency_probe/latency_probe
> > >             linux-vdso.so.1 =>  (0x00007fffc7bff000)
> > >             libm.so.6 => /lib64/libm.so.6 (0x0000003f19a00000)
> > >             libpthread.so.0 => /lib64/libpthread.so.0
> (0x0000003f1a200000)
> > >             libc.so.6 => /lib64/libc.so.6 (0x0000003f19600000)
> > >             /lib64/ld-linux-x86-64.so.2 (0x0000003f19200000)
> > >
> > >
> > > That should be easier like this to build on POWER7 or on k1om (or in
> Eclipse).
> > >
> > > George:
> > >
> > > You will need to add the makefile options CONFIG_CLOCK_GETTIME=n
> CONFIG_MPI=n CONFIG_ZLIB=n CC=cc
> > > in Eclipse I think.
> > > _______________________________________________
> > > BIOSAL mailing list
> > >
> > BIOSAL at lists.cels.anl.gov
> > >
> > https://lists.cels.anl.gov/mailman/listinfo/biosal
> > >
> > >
> > >
> > >
> >
> >
> >
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cels.anl.gov/pipermail/biosal/attachments/20141104/b7a72e3a/attachment-0001.html>


More information about the BIOSAL mailing list