From: Jeremy Cowles (jeremy.cowles_at_gmail_dot_com)
Date: Sun Jul 20 2008 - 16:08:08 PDT
I think everything is setup now, but something strange is happening and I
want to make sure this is normal. I am compiling /upc-examples/cpi as
follows:
$ make UPCC='upcc -pthreads'
upcc -pthreads -o cpi cpi.upc
upcc -pthreads -o mcpi mcpi.upc
Which is successful, and I can run the example with 2 threads and no
problem. However, when I run with 3 threads, the first implementation (cpi)
completes, but I get a seg fault during mcpi. Is it safe to assume this is
because I have only 2 cores on this machine and am trying to run 3 threads?
It seems like both should crash. Here is the output:
--
$ make run UPCRUN='upcrun -shared-heap 20' THREADS=3
upcrun -shared-heap 20 -np 3 ./cpi
WARNING: Node 0 running more threads (3) than there are physical CPU's (2)
enabling "polite", low-performance synchronization algorithms
UPCR: UPC threads 0..2 of 3 on toaster (process 0 of 1, pid=269816)
WARNING: Conflicting environment values for
GASNET_COLL_GATHER_ALL_DISSEM_LIMIT (1024) and GASNET_CO
LL_GATHER_ALL_DISSEM_LIMIT_PER_THREAD (341)
WARNING: Using: 341
WARNING: Conflicting environment values for
GASNET_COLL_EXCHANGE_DISSEM_LIMIT (1024) and GASNET_COLL
_EXCHANGE_DISSEM_LIMIT_PER_THREAD (113)
WARNING: Using: 113
Approx: 3.14159357951571883 Error: 0.00000092592592571
upcrun -shared-heap 20 -np 3 ./mcpi
WARNING: Node 0 running more threads (3) than there are physical CPU's (2)
enabling "polite", low-performance synchronization algorithms
UPCR: UPC threads 0..2 of 3 on toaster (process 0 of 1, pid=268236)
WARNING: Conflicting environment values for
GASNET_COLL_GATHER_ALL_DISSEM_LIMIT (1024) and GASNET_CO
LL_GATHER_ALL_DISSEM_LIMIT_PER_THREAD (341)
WARNING: Using: 341
WARNING: Conflicting environment values for
GASNET_COLL_EXCHANGE_DISSEM_LIMIT (1024) and GASNET_COLL
_EXCHANGE_DISSEM_LIMIT_PER_THREAD (113)
WARNING: Using: 113
*** Caught a fatal signal: SIGSEGV(11) on node 0/1
NOTICE: Before reporting bugs, run with GASNET_BACKTRACE=1 in the
environment to generate a backtrac
e.
make: *** [run] Segmentation fault
--
I tried the same thing with GASNET_BACKTRACE=1, after if I run with 3
threads, mcpi seems to go into an infinite loop - if I run with np=2 and
GASNET_BACKTRACE=1, I get a seg fault right away:
--
$ make run UPCRUN='upcrun -shared-heap 20' THREADS=2
upcrun -shared-heap 20 -np 2 ./cpi
UPCR: UPC threads 0..1 of 2 on toaster (process 0 of 1, pid=312468)
*** Caught a fatal signal: SIGSEGV(11) on node 0/1
NOTICE: Before reporting bugs, run with GASNET_BACKTRACE=1 in the
environment to generate a backtrac
e.
make: *** [run] Segmentation fault
--
Seems like maybe something is not configured properly. I will also check out
the docs and try to see if I am missing something obvious.
Thanks again,
Jeremy
On Sun, Jul 20, 2008 at 12:45 PM, Jeremy Cowles <jeremy.cowles_at_gmail_dot_com>
wrote:
> Thank you so much! That did the trick. I was making/configuring/installing
> for hours last night... I'm just starting to learn about UPC/parallel
> programming, I cant wait to get running!
>
> Thanks again,
> Jeremy
>
>
>
> On Sun, Jul 20, 2008 at 12:34 PM, Paul H. Hargrove <PHHargrove_at_lbl_dot_gov>
> wrote:
>
>> Jeremy,
>>
>> I suspect you see "make: `install' is up to date." because there is a
>> file named "INSTALL" in the top source directory, and Cywin is
>> case-insensitive.
>> I think the simplest option for you would be "mv INSTALL INSTALL.txt".
>> In the future, it may be best to configure/make in a directory other than
>> the source directory (see step 1 in INSTALL, the part following "if you wish
>> to build in a separate directory") . That would also avoid this problem.
>>
>> I've created a bug entry for this problem:
>> http://upc-bugs.lbl.gov/bugzilla/show_bug.cgi?id=2304
>> where we can track a long-term solution (either documenting the issue or
>> working around it).
>>
>> -Paul
>>
>>
>> Jeremy Cowles wrote:
>>
>>> Hi,
>>>
>>> I am having a problem installing the Berkeley UPC runtime (2.6.0). I've
>>> done the following:
>>>
>>> $ ./configure (no options)
>>> > had permission issues, but completed with success after a few
>>> runs
>>>
>>> $ ./make
>>> > multiple permissions issues, same as above
>>>
>>> $ ./make install
>>> > make: `install' is up to date.
>>>
>>> $ ./make install-local
>>> > (this completed ok)
>>>
>>> However, when I run upcc I get:
>>>
>>> $ upcc
>>> WARNING: skipping match for opt, because
>>> /usr/local/berkeley_upc/opt/bin/upcc.pl does not exist.
>>> You may need to update your Berkeley UPC install or the configure file
>>> at: /usr/local/berkeley_upc/
>>> etc/multiconf.conf
>>> ERROR: No matching Berkeley UPC configuration found in
>>> /usr/local/berkeley_upc/etc/multiconf.conf!
>>>
>>> I do have a /usr/local/berkeley_upc/etc/multiconf.conf, unmodified.
>>> Also, this is the /usr/local/berkeley_upc listing:
>>>
>>> /usr/local/berkeley_upc$ ls -R
>>> .:
>>> bin etc
>>>
>>> ./bin:
>>> upcc upcc_multi upcc_multi.pl
>>>
>>> ./etc:
>>> multiconf.conf
>>>
>>>
>>> Which seems really slim.
>>> I am running
>>> Vista ultimate with Cygwin,
>>> gcc 3.4.4, and
>>> all the requirements listed on the Cygwin install notes.
>>> I have no MPI compiler.
>>>
>>> But the build does seem to work when I run upcc from the directory where
>>> i ./configured & made it:
>>>
>>> ~/Desktop/berkeley_upc-2.6.0
>>> $ ./upcc
>>> upcc: Error: no input files
>>>
>>> And from this location, I can compile and run the hello.upc test.
>>>
>>> ~/Desktop/berkeley_upc-2.6.0/upc-examples
>>> $ ../upcrun -n 2 hello
>>> UPCR: UPC threads 0..1 of 2 on toaster (process 0 of 1, pid=561368)
>>> UPC Runtime warning: Requested shared memory (128 MB) > available (126
>>> MB) on node 0 (toaster): using 63 MB per thread instead
>>> Welcome to Berkeley UPC!!!
>>> - Hello from thread 1
>>> - Hello from thread 0
>>>
>>>
>>> Any ideas on how I can make the make file stop thinking it's installed?
>>>
>>> Thanks,
>>> Jeremy
>>>
>>
>>
>> --
>> Paul H. Hargrove PHHargrove_at_lbl_dot_gov
>> Future Technologies Group HPC Research Department
>> Tel: +1-510-495-2352
>> Lawrence Berkeley National Laboratory Fax: +1-510-486-6900
>>
>>
>