From: Evi Dube (dube1_at_llnl.gov)
Date: Fri Feb 05 2010 - 16:48:02 PST
When I try to access that translator - I get the following error:
upcc.cgi: Illegal arch_size parameter: '' at
/srv/www/htdocs/upcc-2.10.0.cgi line 149.
Additionally, once I started to actually use real UPC commands - i.e.
upc-forall - which I believe need the translator - then I got the
following error from the UPC complier:
yana4{dube}168: ../bin/upcc vector_add_upc.v2.c -o vector_add_upc.v2
Error during remote HTTP translation:
upcc: error during UPC-to-C translation (sgiupc stage):
As for the parrallelization error - I figured out in using the linux
cluster parallel job scheduled we have at livermore that I was not
using the correct option for the number of processes.
thanks for your help,
evi
At 04:04 PM 2/5/2010, you wrote:
>Evi,
>
>Default translator is http://*upc-translator.lbl.gov/upcc-2.10.0.cgi
>This and much more info about the configuration is available by
>running "upcc -V".
>
>When you say you asked for 4 UPC threads and got only 1, what did
>your upcrun command line look like exactly?
>
>-Paul
>
>Evi Dube wrote:
>>Thank you for your thoughts below - they, of course, generated more
>>questions :-)
>>
>>1. I did get the "Berkeley UPC Runtime" to build - the latest
>>version from the web site - berkeley_upc-2.10.0 - however it was
>>not happy with the gnu 4.0, 4.1 or 4.2 versions compilers - called
>>them "buggy compilers", it liked the 4.3 versions, so I used the
>>configure options CC and CXX. Since I did not get
>>the berkeley_upc_translator-2.10.0 to build, however noticed that
>>I had a "upcc" in the bin directory, I figured I would try to
>>compile and build a small test code from some UPC tutorials (hello
>>world, then Monte Carlo PI) and they actually built and ran.
>>*QUESTION*: What translator is it using?
>>
>>2. From your info below, that information is helpful, since I
>>actually asked to run 4 processors - and you are telling me it said
>>I was only running 1 - so I need to figure out how to run 4 on this
>>machine - this is my homework.
>>
>>thanks
>>evi
>>
>>
>>
>>At 11:09 AM 2/5/2010, you wrote:
>>>Evi,
>>>
>>>Welcome to the UPC community.
>>>
>>>Some answers for you:
>>>
>>>1. The "Berkeley UPC Runtime" contains the runtime libraries that
>>>implement the UPC language features and communication, plus the
>>>compiler driver "upcc" and the launcher "upcrun". The "upcc"
>>>driver functions by passing UPC code to a UPC-to-C translator
>>>which generates C code with calls to the runtime libraries. The
>>>translated code is then compiled and linked by the normal C
>>>compiler. This is described briefly at
>>>http://**upc.lbl.gov/docs/system/index.html .
>>>
>>>As you have noticed, the Translator is less portable than the
>>>Runtime. For that reason we package them separately and provide
>>>the ability to use a web-based UPC translator we have built (or
>>>you can build your own on your local network).
>>>
>>>The manual is mostly mute on the subject of translator because it
>>>should be totally transparent once setup. The default behavior of
>>>the runtime is to use our network based translator, meaning that
>>>as a developer you don't NEED to download or build the translator
>>>unless you have concerns over the privacy/security of your code or
>>>about the latency/throughput of compilation. Information about
>>>seting up the translator can be found in the "SPECIFYING THE
>>>LOCATION OF THE UPC-TO-C TRANSLATOR" section in the file
>>>INSTALL.TXT of the Berkeley UPC Runtime (or online at
>>>http://**upc.lbl.gov/download/dist/INSTALL.TXT)
>>>
>>>2a. As mentioned above the translator is less portable than the
>>>runtime. In particular it is very sensitive to the g++ version in
>>>use. We hope over time to improve this, but it is not our highest
>>>priority. The current release should work with most g++ 4.0, 4.1
>>>or 4.2 versions, but has problems with 4.3.
>>>
>>>2b. The output you see is just telling you are running 1 UPC
>>>thread and what hostname and pid it has. This output is useful to
>>>confirm that you are running the number of threads expected and
>>>that they are spread over multiple hosts in the expected manner
>>>(or if you need to kill the processes for some reason). However,
>>>if you pass "-q" to upcrun then this output will be suppressed.
>>>
>>>
>>>-Paul
>>>
>>>
>>>Evi Dube wrote:
>>>>I am just starting to use UPC, so my questions will be on the naive side:
>>>>
>>>>1. What is the difference between the Berekely UPC Runtime and
>>>>the UPC-to_C Translator - why would I need both of them from a
>>>>developer's view? The manual does not talk about the translator?
>>>>
>>>>2. I actually think I was able to get the Runtime to build on
>>>>some Linux x86-64 clusters at Livermore using gnu compilers,
>>>>version 4.3.2. I could not get the translator to compile,
>>>>thought. When I run a simple hello world program, or the Monte
>>>>Carlo Pi program, I get the following message:
>>>>
>>>>UPCR: UPC thread 0 of 1 on yana8 (process 0 of 1, pid=23899)
>>>>
>>>>What does that mean?
>>>>
>>>>thank you
>>>>
>>>>evi
>>>
>>>
>>>--
>>>Paul H. Hargrove PHHargrove_at_lbl_dot_gov
>>>Future Technologies Group Tel: +1-510-495-2352
>>>HPC Research Department Fax: +1-510-486-6900
>>>Lawrence Berkeley National Laboratory
>
>
>--
>Paul H. Hargrove PHHargrove_at_lbl_dot_gov
>Future Technologies Group Tel: +1-510-495-2352
>HPC Research Department Fax: +1-510-486-6900
>Lawrence Berkeley National Laboratory
>