hiiz...@gmail.com wrote on 01/08/2011 03:58:02 PM:

> Hello, X10 users
> 
> I am writing this post about the question that is related to the the 
size of 
> EXE file based on the C++ backend.
> 
> When it comes to compiling *.x10 source code, I would like to know the 
> difference between one and two steps.
> 
> In other words, due to some reasons, I am using the two-step-compile 
way: 
> (1) compile *.x10 to *.cc, then (2) *.cc to binary.
> When I use the two-step-compile, the final executable binary file size 
is 
> bigger than the one-step-compile -- compiling *.x10 to binary.
> 
> Specifically, it would be about 3 times as bigger as the one by the one 
step 
> compile way. As my observation of the compile, it seemed to me that it 
took 
> longer time to generate the procedure of the final executable,
> rather than dealing with object files (*.o). 
> 
> It would be helpful if you give me some comments or advice.
> 
> -----------------------------------------------------------------------
> Here are my system environment informations:
> -----------------------------------------------------------------------
> $ OS: Linux 2.6.32-26-generic-Ubuntu
> $ x10c++ version: 2.1.1
> $ g++ --version: g++ (Ubuntu 4.4.3-4ubuntu5) 4.4.3
> $ javac -version: javac 1.6.0_20
> $ java -version: java version "1.6.0_20"
> $ mpicxx --version: c++ (Ubuntu 4.4.3-4ubuntu5) 4.4.3
> -----------------------------------------------------------------------
> 
> Attached is my Makefile, in which I used "make postmpicxx".

Hi, Myoungkyu,

You have not indicated what arguments you were using when invoking x10c++
for the single-step compilation.

However, you can give the "-report postcompile=1" arguments to x10c++ to
have it print out the exact post-compilation command it used.  Then it's
up to you to compare the two post-compilation commands to see what may be
causing your code bloat.

My suspicion is that, unless you built with -x10rt mpi, x10c++ by default
does not use mpicxx as its postcompiler, and thus you are linking an
MPI library into a non-MPI executable, whereas with the single step
compilation this does not happen.  But you should see that from the output
of the above command.

Hope this helps,
        Igor
-- 
Igor Peshansky  (note the spelling change!)
IBM T.J. Watson Research Center
X10: Parallel Productivity and Performance (http://x10-lang.org/)
XJ: No More Pain for XML's Gain (http://www.research.ibm.com/xj/)
"I hear and I forget.  I see and I remember.  I do and I understand" -- 
Xun Zi


------------------------------------------------------------------------------
Gaining the trust of online customers is vital for the success of any company
that requires sensitive data to be transmitted over the Web.   Learn how to 
best implement a security strategy that keeps consumers' information secure 
and instills the confidence they need to proceed with transactions.
http://p.sf.net/sfu/oracle-sfdevnl 
_______________________________________________
X10-users mailing list
X10-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/x10-users

Reply via email to