- changed status to resolved
Confusing behavior for nobs external GASNET variable
Issue #5
resolved
The nobs $GASNET input variable is used to specify an external GASNet.
However there are two possible directory structures for an external GASNet:
- A GASNet build directory, where the conduit fragment lives in
$builddir/NETWORK-conduit/NETWORK-seq.mak
- A GASNet install directory, where the conduit fragment lives in
$installdir/include/NETWORK-conduit/NETWORK-seq.mak
Consequently, nobs currently requires GASNET=$builddir for the former case and GASNET=$installdir/include for the latter case. This seems unnecessarily confusing, and the error one gets when it's wrong would make no sense to an end user (see below).
It would be nice if nobs was smart enough to accept GASNET=$installdir
$ export GASNET=$installdir DBGSYM=1 OPTLEV=0 ; nobs exe test/dist_object.cpp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Uncaught exception
Traceback (most recent call last):
File "/home/bonachea/UPC/upcxx/nobs/nobs/tool_main.py", line 85, in main
printed.wait()
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 403, in wait
return me.wait_futurized().value()
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 707, in fire
arg = gen_throw(arg.exception, None, arg.traceback)
File "/home/bonachea/UPC/upcxx/nobs/nobs/memodb.py", line 458, in memo_execute
yield result
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 707, in fire
arg = gen_throw(arg.exception, None, arg.traceback)
File "/home/bonachea/UPC/upcxx/nobsrule.py", line 495, in execute
yield fresh_src(main_src)
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 557, in fire1
proxied = lam(arg_result)
File "/home/bonachea/UPC/upcxx/nobs/nobs/memodb.py", line 539, in result
return resultoid()
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 707, in fire
arg = gen_throw(arg.exception, None, arg.traceback)
File "/home/bonachea/UPC/upcxx/nobs/nobs/memodb.py", line 458, in memo_execute
yield result
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 707, in fire
arg = gen_throw(arg.exception, None, arg.traceback)
File "/home/bonachea/UPC/upcxx/nobsrule.py", line 380, in execute
comp_pp, src = yield me.get_comp_pp_and_src()
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 557, in fire1
proxied = lam(arg_result)
File "/home/bonachea/UPC/upcxx/nobs/nobs/memodb.py", line 539, in result
return resultoid()
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 707, in fire
arg = gen_throw(arg.exception, None, arg.traceback)
File "/home/bonachea/UPC/upcxx/nobsrule.py", line 375, in get_comp_pp_and_src
comp_pp = yield cxt.comp_lang_pp(src)
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 707, in fire
arg = gen_throw(arg.exception, None, arg.traceback)
File "/home/bonachea/UPC/upcxx/nobsrule.py", line 208, in comp_lang_pp
libs = yield cxt.libraries(src)
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 707, in fire
arg = gen_throw(arg.exception, None, arg.traceback)
File "/home/bonachea/UPC/upcxx/nobsrule.py", line 312, in libraries
maybe_upcxx_backend = yield cxt.upcxx_backend()
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 707, in fire
arg = gen_throw(arg.exception, None, arg.traceback)
File "/home/bonachea/UPC/upcxx/nobsrule.py", line 232, in upcxx_backend
gasnet = yield cxt.gasnet()
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 707, in fire
arg = gen_throw(arg.exception, None, arg.traceback)
File "/home/bonachea/UPC/upcxx/nobs/nobs/memodb.py", line 458, in memo_execute
yield result
File "/home/bonachea/UPC/upcxx/nobs/nobs/async.py", line 705, in fire
arg = gen_send(arg.value())
File "/home/bonachea/UPC/upcxx/nobsrule.py", line 777, in execute
GASNET_LD = makefile_extract(makefile, 'GASNET_LD').split()
File "/home/bonachea/UPC/upcxx/nobsrule.py", line 803, in makefile_extract
raise Exception('Makefile %s not found.'%makefile)
Exception: Makefile /home/bonachea/UPC/bupcr-ex/dbg/upcxx/gasnet/smp-conduit/smp-seq.mak not found.
Comments (2)
-
Account Deleted -
-
assigned issue to
-
assigned issue to
- Log in to comment
Fixed issue 8: https://bitbucket.org/berkeleylab/upcxx/issues/8/regression-on-external-gasnet-build-tree Regression on GASNET env var behavior.
Fixed issue 5: https://bitbucket.org/berkeleylab/upcxx/issues/5/confusing-behavior-for-nobs-external More flexible GASNET env var handling. GASNET can now point to a tarball url, tarball file, gasnet source tree, gasnet build tree, gasnet install tree, or nothing (gets default url).
Errors are displayed through $PAGER (otherwise less -R) when in a TTY.
→ <<cset b31a52d57bec>>