I think that's what happen:
The X10 compiler created the C++ files, and then it runs the C++ compiler
(we call it a post-compiler) from within Java, and if the return code was
not zero, then it outputs the C++ compiler's output. And your C++ compiler
apparently created a LOT of output (that caused the OutOfMemory).
You can use "-c" to specify another post-compiler.

            Runtime runtime = Runtime.getRuntime();
            Process proc = runtime.exec(cxxCmd, null,
options.output_directory);

            InputStreamReader err = new
InputStreamReader(proc.getErrorStream());

            String output = null;
            try {
                char[] c = new char[72];
                int len;
                StringBuffer sb = new StringBuffer();
                while((len = err.read(c)) > 0) {
                    sb.append(String.valueOf(c, 0, len)); *// threw a
OutOfMemoryError*
                }




On Thu, Jul 22, 2010 at 2:17 PM, mohammed elsaeedy <
mohammed.elsae...@kaust.edu.sa> wrote:

> Dear Igor,
>
>
>     Well I did as you said, I took the 2.0.4 source code and I compiled
> over my laptop first (32 bit), and I linked the environment variables to
> the "bin" of the compiled source code, and it worked just perfectly.  "ant
> squeakyclean dist"
>
> When I do the same thing over the cluster, I was able to compile it and I
> set the environment variables to the "bin", but when i simply try to
> compile a hello world "x10c++ -o hello hello.x10" it begins to compile the
> classes for X10, and generating this weird "x10" folder in my home.
> but then it stops for an error, "Exception in thread "main"
> java.lang.OutOfMemoryError: Java heap space"
> I do it again and this time I see what it was compiling before:
>
> Not recompiling: x10.lang.Runtime
> Not recompiling: x10.lang.Place
> Not recompiling: x10.lang._
> Not recompiling: x10.array.Dist
> Not recompiling: x10.array.Point
> Not recompiling: x10.array.Region
> ...............
> ...............
> ...............
> ...............
> Not recompiling: x10.array.Xform
> Not recompiling: x10.array.PolyXform
> Not recompiling: x10.io.EOFException
> Not recompiling: x10.io.ReaderIterator
> Not recompiling: x10.compiler.NativeCPPInclude
> Not recompiling: x10.compiler.NativeCPPOutputFile
> Not recompiling: x10.compiler.NativeCPPCompilationUnit
> Not recompiling: x10.compiler.StackAllocate
> Not recompiling: x10.compiler.ByRef
> Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
>    at java.util.Arrays.copyOf(Arrays.java:2882)
>    at
>
> java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:100)
>    at
> java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:390)
>    at java.lang.StringBuffer.append(StringBuffer.java:224)
>    at
> x10cpp.visit.X10CPPTranslator.doPostCompile(X10CPPTranslator.java:472)
>    at x10cpp.visit.X10CPPTranslator.postCompile(X10CPPTranslator.java:444)
>    at
>
> x10cpp.ExtensionInfo$X10CPPScheduler$1.invokePostCompiler(ExtensionInfo.java:157)
>    at polyglot.visit.PostCompiled.runTask(PostCompiled.java:56)
>    at polyglot.frontend.Scheduler.runPass(Scheduler.java:325)
>    at polyglot.frontend.AbstractGoal_c.run(AbstractGoal_c.java:102)
>    at polyglot.types.LazyRef_c.get(LazyRef_c.java:45)
>    at polyglot.frontend.AbstractGoal_c.run(AbstractGoal_c.java:49)
>    at polyglot.types.LazyRef_c.get(LazyRef_c.java:45)
>    at polyglot.frontend.Scheduler.attempt(Scheduler.java:237)
>    at polyglot.frontend.Scheduler.runToCompletion(Scheduler.java:174)
>    at polyglot.frontend.Scheduler.runToCompletion(Scheduler.java:160)
>    at polyglot.frontend.Compiler.compile(Compiler.java:166)
>    at polyglot.frontend.Compiler.compileFiles(Compiler.java:134)
>    at polyglot.main.Main.start(Main.java:119)
>    at polyglot.main.Main.start(Main.java:74)
>    at polyglot.main.Main.main(Main.java:166)
>
>
> I tried to increase the heap size to min 2G and max 3G by using " alias
> java='java -Xms2g -Xmx3g' "
> but it still does not work.
>
> Anyway why is it generating these files? That didn't even happen on my
> laptop !!!
>
>
> On Thu, Jul 22, 2010 at 10:47 AM, Igor Peshansky <ig...@us.ibm.com> wrote:
>
> > mohammed elsaeedy <mohammed.elsae...@kaust.edu.sa> wrote on 07/22/2010
> > 09:28:44 AM:
> >
> > > Dear List,
> > >
> > >     Now, I've implemented several parallel applications by using X10,
> > and
> > > they work very well locally on my machine (32 bit) , but now I want to
> > run
> > > it over a cluster to
> > > evaluate the true performance of intra and inter parallelism, so I set
> > up
> > > the PATH variables on my account in the cluster (Opteron x86_64) with
> > the
> > > release of X10 2.0.4,
> > > Linux/x86_64<http://sourceforge.net/projects/x10/files/x10/2.0.
> > > 4/x10-2.0.4_linux_x86_64.tgz/download>
> > > but then every time I try to compile an application over the cluster it
> > > gives me the following error:
> > >
> > > <cluster path>/x10-2.0.4_linux_x86/lib/libx10.so: file not recognized:
> > File
> > > format not recognized
> > >      collect2: ld returned 1 exit status
> > > x10c++: Non-zero return code: 1
> > > 2 errors.
> > >
> > > why is that? Do you suggest to download the X10 source code and compile
> > it
> > > over the cluster? and if so, how to do that?
> >
> > Hi, Mohammed,
> >
> > Sorry about that.
> >
> > I'm not sure why you are not able to use the x86_64 pre-built binary, and
> > we'll work with you to debug this issue off-list.
> >
> > However, compiling your own version should definitley get you going.
> > Please look at and follow the build instructions
> > (http://x10.codehaus.org/Building+from+SVN+head and
> >
> >
> http://x10.codehaus.org/X10RT+Implementations#X10RTImplementations-AugmentingaprebuiltX10ReleasewiththeMPIversionofX10RT
> > ).
> > You should be able to build the MPI binary fairly easily without
> depending
> > on anything we've built (which may be corrupt, according to your report
> > above).  Let us know if you run into any problems.
> >         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" --
> > Confucius
> >
> >
> >
> >
> ------------------------------------------------------------------------------
> > This SF.net email is sponsored by Sprint
> > What will you do first with EVO, the first 4G phone?
> > Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
> > _______________________________________________
> > X10-users mailing list
> > X10-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/x10-users
> >
>
>
>
> --
> Thank you for your concern.
> Regards,
> Mohammed El Sayed
>
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by Sprint
> What will you do first with EVO, the first 4G phone?
> Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
> _______________________________________________
> X10-users mailing list
> X10-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/x10-users
>
------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
X10-users mailing list
X10-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/x10-users

Reply via email to