This is an enquiry email via http://x10-lang.org/ from: Ivan Kulagin <kadet...@gmail.com>
Hello! In paper "Communication Optimizations for Distributed-Memory X10 Programs" (Rajkishore Barik, Jisheng Zhao, David Grove, Igor Peshansky, Zoran Budimlic, and Vivek Sarkar, IEEE IPDS-2011) an approach "Local Optimization with Loop Distribution" is proposed (Figure 6: Communication optimization rules: Scalar Replacement, Local Optimization, Synchronization Elimination, Place-level Strip-mining, and Parallel reduction). ----------------------------------------- 3. Local Optimization with Loop Distribution: val dist:Dist = ...; A = DistArray.make[T](dist); for (i in dist) async(A.dist(i)) { ... = A(i); } -------------------------------------- I wrote a simple test (as in above): public class Hello { public static def main(Array[String]) { val dist:Dist = Dist.makeBlock(1..1000); val dist_arr:DistArray[int]; dist_arr = DistArray.make[int](dist, 6); for (i:Point in dist) { at (dist_arr.dist(i)) { async { val a = dist_arr(i); Console.OUT.println("str = " + a); } } } } } On my machine a has X10 2.3.1 ang GNU/Linux Fedora 19 x86_64. I compiled test program with next options: $ x10c++ -v -OPTIMIZE_COMMUNICATIONS=false Hello.x10 $ x10c++ -v -OPTIMIZE_COMMUNICATIONS=true Hello.x10 When i compare auto-generated c++ files, i see that they are absolutely identical. Could you answer to me, 1) Should the auto-generated backend C++ files with enabled OPTIMIZE_COMMUNICATIONS and without OPTIMIZE_COMMUNICATIONS a differents? 2) Why my test program is insensitive to OPTIMIZE_COMMUNICATIONS? 3) How can i check, that my test program is optimized? When I perform compilation process in debugger (with -OPTIMIZE_COMMUNICATIONS=true), i see how reached visitAsync(Async a) // in x10.compiler/src/x10/visit/CommunicationOptimizer.java visitAt(AtStmt at) // in x10.compiler/src/x10/visit/CommunicationOptimizer.java Thanks! Kind regards, Kulagin Ivan. ------------------------------------------------------------------------------ October Webinars: Code for Performance Free Intel webinars can help you accelerate application performance. Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk _______________________________________________ X10-users mailing list X10-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/x10-users