Hi Brian --

Everything looks normal there. I won't have time to try reproducing what you've seen for several days, but if all the hello*.chpl tests work for you then you should have pretty good basic functionality working. I'd encourage you to keep exploring, and we'll try to help if you run into any other problems.

greg


On 3/17/2015 9:51 AM, Brian Guarraci wrote:
OK, I hope it's some basic config issue.

ubuntu@tegra-ubuntu:~/scm/chapel$ $CHPL_HOME/util/printchplenv produce

machine info: Linux tegra-ubuntu 3.10.24-g6a2d13a #1 SMP PREEMPT Fri Apr 18 15:56:45 PDT 2014 armv7l
CHPL_HOME: /home/ubuntu/scm/chapel
script location: /mnt/ssd/scm/chapel/util
CHPL_HOST_PLATFORM: linux32
CHPL_HOST_COMPILER: gnu
CHPL_TARGET_PLATFORM: linux32
CHPL_TARGET_COMPILER: gnu
CHPL_TARGET_ARCH: unknown
CHPL_LOCALE_MODEL: flat
CHPL_COMM: gasnet
  CHPL_COMM_SUBSTRATE: udp
  CHPL_GASNET_SEGMENT: everything
CHPL_TASKS: fifo
CHPL_LAUNCHER: amudprun
CHPL_TIMERS: generic
CHPL_MEM: cstdlib
CHPL_MAKE: make
CHPL_ATOMICS: intrinsics
  CHPL_NETWORK_ATOMICS: none
CHPL_GMP: none
CHPL_HWLOC: none
CHPL_REGEXP: none
CHPL_WIDE_POINTERS: struct
CHPL_LLVM: llvm
CHPL_AUX_FILESYS: none

On Tue, Mar 17, 2015 at 8:46 AM, Greg Titus <[email protected] <mailto:[email protected]>> wrote:

    I would guess that you shouldn't have to hack the GASNet Makefile
    themselves to get gcc as your target compiler. That should be
    arranged as a result of your setting CHPL_TARGET_COMPILER=gnu (or
    taking that as the default). If that's not happening we might need
    to do some more work in our Makefiles. That wouldn't be surprising
    given how little experience we have with ARM. (My own exploration
    was with CHPL_COMM=none.)

    What does running $CHPL_HOME/util/printchplenv produce?

    thanks,
    greg



    On 3/17/2015 9:24 AM, Brian Guarraci wrote:
    I tried turning on gasnet to verify if i can use multilocales on
    ARM and hit some compilation issues.  I have worked around them
    by hacking the third-party/gasnet/GASNet-1.24.0 headers to
    assume PLATFORM_COMPILER_GNU.  I have been able to run the hello
    world example but wonder if I'm going to hit some subtle bug later.

    diff --git
    a/third-party/gasnet/GASNet-1.24.0/gasnet_atomic_bits.h
    b/third-party/gasnet/GASNet-1.24.0/gasnet_atomic_bits.h
    index f2d751e..97241e2 100644
    --- a/third-party/gasnet/GASNet-1.24.0/gasnet_atomic_bits.h
    +++ b/third-party/gasnet/GASNet-1.24.0/gasnet_atomic_bits.h
    @@ -2574,7 +2574,8 @@
         #endif
       /*
    
------------------------------------------------------------------------------------
    */
       #elif PLATFORM_ARCH_ARM && defined(GASNETI_HAVE_ARM_CMPXCHG)
    -    #if PLATFORM_COMPILER_GNU && PLATFORM_OS_LINUX
    +    //#if PLATFORM_COMPILER_GNU && PLATFORM_OS_LINUX
    +    #if PLATFORM_OS_LINUX
           #define GASNETI_HAVE_ATOMIC32_T 1

           typedef struct { volatile unsigned int ctr; }
    gasneti_atomic32_t;
    diff --git a/third-party/gasnet/GASNet-1.24.0/gasnet_membar.h
    b/third-party/gasnet/GASNet-1.24.0/gasnet_membar.h
    index 70e4ac6..17c0e93 100644
    --- a/third-party/gasnet/GASNet-1.24.0/gasnet_membar.h
    +++ b/third-party/gasnet/GASNet-1.24.0/gasnet_membar.h
    @@ -225,7 +225,7 @@
        #define GASNETI_RMB_IS_MB
        #define GASNETI_WMB_IS_MB
     /*
    
------------------------------------------------------------------------------------
    */
    -#elif PLATFORM_ARCH_ARM && PLATFORM_OS_LINUX &&
    PLATFORM_COMPILER_GNU
    +#elif PLATFORM_ARCH_ARM && PLATFORM_OS_LINUX //&&
    PLATFORM_COMPILER_GNU
        #if defined(GASNETI_UNI_BUILD)
          /* On a uniprocessor build avoid performing what reduces to
    an expensive no-op */
          #define gasneti_local_mb()  gasneti_compiler_fence()

    On Mon, Mar 16, 2015 at 8:54 PM, Brian Guarraci <[email protected]
    <mailto:[email protected]>> wrote:

        setting CHPL_TASKS=fifo works!  Thanks!  I'll see what I can
        get going now.

        On Mon, Mar 16, 2015 at 7:26 AM, Greg Titus <[email protected]
        <mailto:[email protected]>> wrote:

            Hi Brian --

            (I'm Greg Titus, on the Chapel core team. I work mainly
            on the runtime, especially tasking and communications.)

            I've built Chapel on a Cavium ARM system and run one test
            (hello world, of course!). I did have trouble with the
            third-party/qthreads build there, and so had to drop back
            to using our old fifo tasking layer by setting the
            CHPL_TASKS environment variable to 'fifo'. If you do this
            does the build get further or even succeed?

            (We're a little busy at present since we're right at the
            end of our release cycle, so I'll beg forgiveness ahead
            of time if we're a bit slow in responding to things.)

            greg



            On 3/16/2015 8:05 AM, Brian Guarraci wrote:
            I would definitely like to talk about Chapel as a great
            way to utilize a highly distributed system. What I've
            seen in these open-source communities, especially for
            systems such as Parallella (which I also have an 8 node
            version of), is that developers don't have a good way to
            actually use the hardware.  Python theano is one of the
            easiest ways I've seen so far for GPU.

            Regarding Chapel on ARM, I've tried compiling it
            yesterday and hit an issue compiling pthread.  The
            Jetson TK1 boards running Ubuntu 14 don't seem to have
            arm-uncontext.h.  In short, if I can get some help
            ironing out the build then I will work on some demos.

            Thanks!


            On Mon, Mar 16, 2015 at 6:56 AM, Michael Ferguson
            <[email protected] <mailto:[email protected]>> wrote:

                Hi Brian -

                You could certainly run Chapel on your system across
                the ARM chips
                and ignore running on the GPUs for your demo. It
                might be that
                the current version of Chapel will show better on
                one of the other
                clusters you plan to bring, also. In any case, I
                think it would
                be really exciting to have Chapel shown at such an
                event!

                Just to add a little bit to what Brad mentioned
                about GPU support.
                There are a number of possible paths to running
                Chapel code on GPUS:
                 - Generating CUDA code and then using nvcc (this
                was Albert's approach)
                 - Generating OpenACC directives is another possibility
                 - Generating OpenCL
                 - Generating LLVM that can run on a GPU and using
                e.g. OpenCL calls to
                launch it
                 - (and idea I haven't brought up before)
                integrating with the
                   Intel SPMD compiler and using its existing
                capabilities
                   as the Chapel back-end

                I'd be interested to know if you have an opinion
                about how we build
                GPU support. Besides that, any help you can offer in
                development and
                testing of such support would really help the project.

                Cheers,

                -michael

                On 3/15/15, 2:56 AM, "Brad Chamberlain"
                <[email protected] <mailto:[email protected]>> wrote:

                >
                >Hi Brian --
                >
                >There is no support for GPUs in the official Chapel
                releases or on the
                >master branch at GitHub.  Albert Sidelnik (formerly
                UIUC, now Nvidia) did
                >some work on porting Chapel to GPUs a few years
                back which was published
                >at IPDPS and the paper is available here:
                >
                > http://polaris.cs.uiuc.edu/~asideln2/ipdps12.pdf
                <http://polaris.cs.uiuc.edu/%7Easideln2/ipdps12.pdf>
                >
                >A few people have tried to resurrect this work from
                time-to-time and
                >catch
                >it up to the current release, but I'm not aware
                that any efforts have
                >been
                >terribly successful. Adding support for GPUs is on
                our TODO list, but
                >not
                >at the top at present.
                >
                >Thanks for your interest in Chapel, and we' d be
                curious to know more
                >about your demo as it approaches,
                >-Brad
                >
                >
                >On Sat, 14 Mar 2015, Brian Guarraci wrote:
                >
                >> Hi,
                >>
                >> I'm interested in using Chapel to illustrate
                parallel computing at a
                >>Maker
                >> Faire demo coming up in May.  I have a couple
                different cluster
                >>computers
                >> I'm going to be showing and one has 16 Nvidia
                Jetson TK1 boards, which
                >>is
                >> an ARM-based SoC w/ CUDA GPU.  I'm curious about
                using Chapel for
                >>showing
                >> some demos on how to leverage the system.  Has
                anyone done this kind of
                >> thing already?
                >>
                >> Thanks!
                >> Brian
                >>
                >
                
>--------------------------------------------------------------------------
                >----
                >Dive into the World of Parallel Programming The Go
                Parallel Website,
                >sponsored
                >by Intel and developed in partnership with Slashdot
                Media, is your hub
                >for all
                >things parallel software development, from weekly
                thought leadership
                >blogs to
                >news, videos, case studies, tutorials and more.
                Take a look and join the
                >conversation now. http://goparallel.sourceforge.net/
                >_______________________________________________
                >Chapel-developers mailing list
                >[email protected]
                <mailto:[email protected]>
                >https://lists.sourceforge.net/lists/listinfo/chapel-developers




            
------------------------------------------------------------------------------
            Dive into the World of Parallel Programming The Go Parallel 
Website, sponsored
            by Intel and developed in partnership with Slashdot Media, is your 
hub for all
            things parallel software development, from weekly thought 
leadership blogs to
            news, videos, case studies, tutorials and more. Take a look and 
join the
            conversation now.http://goparallel.sourceforge.net/


            _______________________________________________
            Chapel-developers mailing list
            [email protected]  
<mailto:[email protected]>
            https://lists.sourceforge.net/lists/listinfo/chapel-developers






------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Chapel-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/chapel-developers

Reply via email to