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