Hi,

I suppose you meant D1 and D2 in simple-coexist.chpl file (the top level 
program)? In that case any combination of const/var caused the error without 
--no-inline, whereas using --no-inline fixed the problem in every case.

17.03.2015, 17:32, "Lydia Duncan" <[email protected]>:
> Hi John,
>
> How does the program respond to changing either domain (or both) to a
> variable instead of a constant?  This sounds to me like it could be an
> initialization/assignment issue that is happening to be triggered by the
> loops - I'm curious to see if it is a general problem or one that is
> specific to consts.
>
> Lydia Duncan
>
> On 03/17/2015 03:01 AM, John MacFrenz wrote:
>>  Hi,
>>
>>  I tried this with --no-inline, and with this flag the program doesn't crash 
>> and works perfectly fine. Just let me know if there are any backtraces or 
>> other info you'd like to see.
>>
>>  I tried setting breakpoint at chpl_check_nil but couldn't produce any 
>> backtraces I'd find helpful... Anyway, here's a stack trace I suppose is 
>> from the same point in the program:
>>
>>  #0  _default_wrap__construct_DefaultRectangularDom2 ()
>>       at DefaultRectangular.chpl:81
>>  #1  0x0000000000442d84 in DefaultRectangularDom2 (dist3=0x7fffffffa950)
>>       at DefaultRectangular.chpl:87
>>  #2  0x0000000000441222 in dsiNewRectangularDom2 (this65=0x7fffffffa950)
>>       at DefaultRectangular.chpl:45
>>  #3  0x00000000004dba7e in newRectangularDom2 (this65=0x7fffffffada0)
>>       at ChapelArray.chpl:598
>>  #4  0x00000000004d68ea in chpl__convertRuntimeTypeToValue2 
>> (d=0x7fffffffada0,
>>       _retArg=0x7fffffffad60) at ChapelArray.chpl:165
>>  #5  0x0000000000585122 in _default_wrap__construct_EvenPolicy_chpl ()
>>       at VariBlockPolicies.chpl:327
>>  #6  0x0000000000585f1b in EvenPolicy_chpl (dom_chpl=0x8e2360 <Space_chpl>,
>>       targetLocales_chpl=0x7fffffffb140) at VariBlockPolicies.chpl:334
>>  #7  0x0000000000586447 in _default_wrap_EvenPolicy_chpl (
>>       dom_chpl=0x8e2360 <Space_chpl>) at VariBlockPolicies.chpl:334
>>  #8  0x000000000051d896 in chpl__init_test2 (_ln_chpl=1,
>>       _fn_chpl=0x689e13 "src/test2.chpl") at test2.chpl:25
>>  #9  0x000000000052408c in chpl_gen_main (_arg=0x8eeaf0 <chpl_gen_main_arg>)
>>       at test2.chpl:1
>>  #10 0x00000000005c9f4a in chpl_executable_init () at chpl-init.c:269
>>  #11 0x00000000005ced4d in chpl_task_callMain (
>>       chpl_main=0x5c9f2d <chpl_executable_init>) at tasks-fifo.c:394
>>  #12 0x00000000005c06e6 in main (argc=7, argv=0x7fffffffd908) at main.c:32
>>
>>  17.03.2015, 02:15, "Brad Chamberlain" <[email protected]>:
>>>  Hi John --
>>>
>>>  Seeing this stack trace is very helpful (and saves me time I don't have to
>>>  reproduce locally), thanks!
>>>
>>>  Would you try this once more adding the --no-inline flag to your list of
>>>  'chpl' compiler options?  I'm curious whether that'll give us additional
>>>  information in the stack trace about some routines that may have been
>>>  inlined in the previous version.
>>>
>>>  Thanks,
>>>  -Brad
>>>
>>>  On Mon, 16 Mar 2015, John MacFrenz wrote:
>>>>    Hi,
>>>>
>>>>    this was the problem, now I managed to get the backtrace. Unfortunately 
>>>> I really can't make much sense of it... I'm rather surprised that the 
>>>> error happens in constructor of the class (EvenPolicy), but commenting out 
>>>> a seemingly unrelated forall loop makes the program work... Anyway, here's 
>>>> the stack
>>>>
>>>>    #0  gdbShouldBreakHere () at gdb.c:27
>>>>    #1  0x0000000000618063 in chpl_exit_common (status=1, all=0) at 
>>>> chplexit.c:38
>>>>    #2  0x00000000006180d1 in chpl_exit_any (status=1) at chplexit.c:57
>>>>    #3  0x0000000000611d7a in chpl_error (
>>>>       message=0x6d713d "attempt to dereference nil", lineno=165,
>>>>       filename=0x6d77f0 
>>>> "/home/john/projects/chapel/chapel/modules/internal/ChapelArray.chpl") at 
>>>> error.c:85
>>>>    #4  0x00000000004c085d in chpl_check_nil (
>>>>       filename=0x6d77f0 
>>>> "/home/john/projects/chapel/chapel/modules/internal/ChapelArray.chpl", 
>>>> lineno=165, ptr=0x0)
>>>>       at 
>>>> /home/john/projects/chapel/chapel/runtime//include/chpl-comm-compiler-macros.h:196
>>>>    #5  chpl__convertRuntimeTypeToValue2 (d=0x7fffffffa4b0, 
>>>> _retArg=0x7fffffffa4a0)
>>>>       at ChapelArray.chpl:165
>>>>    #6  0x00000000005c0547 in EvenPolicy_chpl (dom_chpl=0x91bc00 
>>>> <Space_chpl>,
>>>>       targetLocales_chpl=0x7fffffffcbb0) at VariBlockPolicies.chpl:334
>>>>    #7  0x0000000000518652 in chpl__init_test2 (_ln_chpl=1,
>>>>       _fn_chpl=0x6d7dbb "src/test2.chpl") at test2.chpl:25
>>>>    #8  0x000000000051f9bf in chpl_gen_main (_arg=0x928330 
>>>> <chpl_gen_main_arg>)
>>>>       at test2.chpl:1
>>>>    #9  0x0000000000617fe8 in chpl_executable_init () at chpl-init.c:269
>>>>    #10 0x000000000061cdeb in chpl_task_callMain (
>>>>       chpl_main=0x617fcb <chpl_executable_init>) at tasks-fifo.c:394
>>>>    ---Type <return> to continue, or q <return> to quit---
>>>>    #11 0x000000000060e784 in main (argc=6, argv=0x7fffffffd948) at 
>>>> main.c:32
>>>>
>>>>    The line 334 in VariBlockPolicies.chpl is
>>>>
>>>>    proc EvenPolicy(dom: domain, targetLocales: [] locale = Locales, param 
>>>> rank = dom.rank, type idxType = dom.idxType) {
>>>>
>>>>    17.03.2015, 00:37, "Brad Chamberlain" <[email protected]>:
>>>>>    I thought --gdb should set this breakpoint automatically, but must be
>>>>>    mis-remembering...  Would you try typing:
>>>>>
>>>>>             break gdbShouldBreakHere
>>>>>
>>>>>    in each of the gdb consoles before typing 'run' and see if that helps?
>>>>>
>>>>>    Thanks, and sorry for my bad memory if this works,
>>>>>    -Brad
>>>>>
>>>>>    On Mon, 16 Mar 2015, John MacFrenz wrote:
>>>>>>     Hi,
>>>>>>
>>>>>>     I had already tried that, and tried again after your post, but
>>>>>>     unfortunately couldn't get it work. I can get the program run in gdb 
>>>>>> and
>>>>>>     crash, but when trying to see the backtrace gdb just says "no stack" 
>>>>>> on
>>>>>>     both locales.
>>>>>>
>>>>>>     17.03.2015, 00:13, "Brad Chamberlain" <[email protected]>:
>>>>>>>     Hi John --
>>>>>>>
>>>>>>>     Since everyone here is sprinting toward the code freeze for 1.11, 
>>>>>>> I'll
>>>>>>>     send out a pointer rather than diving into an analysis at present:
>>>>>>>
>>>>>>>     Have you discovered the CHPL_COMM_USE_GDB environment variable 
>>>>>>> described
>>>>>>>     in doc/[release/]README.executing?  With it and GASNet, you can run 
>>>>>>> your
>>>>>>>     program, popping up an xterm per locale which tends to work for 
>>>>>>> failures
>>>>>>>     that fail on a small number of nodes (< 4 or so).  Compiling with 
>>>>>>> -g and
>>>>>>>     --cpp-lines and running with the --gdb flag should cause the 
>>>>>>> program to
>>>>>>>     break when this error is printed out, permitting you to get the 
>>>>>>> stack
>>>>>>>     trace that led to the error, which may help.
>>>>>>>
>>>>>>>     If you get a stack trace but still can't determine why the error is
>>>>>>>     occurring, feel free to send it along.
>>>>>>>
>>>>>>>     -Brad
>>>>>>>
>>>>>>>     On Mon, 16 Mar 2015, John MacFrenz wrote:
>>>>>>>>      Hi,
>>>>>>>>
>>>>>>>>      I'm having a problem where my program fails with error:
>>>>>>>>      
>>>>>>>> /home/john/projects/chapel/chapel/modules/internal/ChapelArray.chpl:165:
>>>>>>>>  error: attempt to dereference nil
>>>>>>>>
>>>>>>>>      I haven't had success in trying to isolate the problem so 
>>>>>>>> unfortunately I don't have a simple example file which would reproduce 
>>>>>>>> the problem. However I have a test in my git branch of chapel which 
>>>>>>>> causes the problem. The branch in question is here
>>>>>>>>      https://github.com/jfrenz/chapel/tree/VariBlockDist
>>>>>>>>      The failing test is located at 
>>>>>>>> test/distributions/jfrenz/block-variblock/simple-coexist.chpl . If you 
>>>>>>>> comment out either of the forall loops in that file it runs fine. I 
>>>>>>>> have had it fail at least with GASNET_SPAWNFN=L and two or four 
>>>>>>>> locales.
>>>>>>>>
>>>>>>>>      In that git branch I have modified only files in modules/dists , 
>>>>>>>> modules/standard and in test .
>>>>>>>>
>>>>>>>>      Chpl info:
>>>>>>>>
>>>>>>>>      CHPL_HOST_PLATFORM: linux64
>>>>>>>>      CHPL_HOST_COMPILER: gnu
>>>>>>>>      CHPL_TARGET_PLATFORM: linux64
>>>>>>>>      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: gmp
>>>>>>>>      CHPL_HWLOC: none
>>>>>>>>      CHPL_REGEXP: re2
>>>>>>>>      CHPL_WIDE_POINTERS: struct
>>>>>>>>      CHPL_LLVM: none
>>>>>>>>      CHPL_AUX_FILESYS: none
>>>>>>>>
>>>>>>>>      
>>>>>>>> ------------------------------------------------------------------------------
>>>>>>>>      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-bugs mailing list
>>>>>>>>      [email protected]
>>>>>>>>      https://lists.sourceforge.net/lists/listinfo/chapel-bugs
>>  
>> ------------------------------------------------------------------------------
>>  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-bugs mailing list
>>  [email protected]
>>  https://lists.sourceforge.net/lists/listinfo/chapel-bugs

------------------------------------------------------------------------------
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-bugs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/chapel-bugs

Reply via email to