Home My Page Projects Scotch
Summary Activity Forums Tracker Lists Tasks Docs News SCM Files

[#19407] compiler error graph_coarsen.c 6.0.4.

Date:
2015-07-10 08:58
Priority:
3
State:
RESOLVED
Submitted by:
Denis Davydov (den59)
Assigned to:
Francois PELLEGRINI (pelegrin)
Category:
none
Group:
none
Resolution:
Fixed
Summary:
compiler error graph_coarsen.c 6.0.4.

Detailed description
dear all,

i have the following compiler error on mac:

clang -O3 -fPIC -Drestrict=__restrict -DCOMMON_PTHREAD_BARRIER -DSCOTCH_CHECK_AUTO -DCOMMON_RANDOM_FIXED_SEED -DCOMMON_TIMING_OLD -DSCOTCH_RENAME -DCOMMON_FILE_COMPRESS_BZ2 -DCOMMON_FILE_COMPRESS_GZ -c graph_io_mmkt.c -o graph_io_mmkt.o
graph_coarsen.c:352:20: error: no member named 'thrdnbr' in 'struct ThreadGroupHeader_'
coarptr->thrddat.thrdnbr = 1;
~~~~~~~~~~~~~~~~ ^
1 error generated.

regards,
Denis.
Message  ↓
Date: 2018-02-11 22:30
Sender: Francois PELLEGRINI

This is fixed in the 6.0.5.
Sorry for the delay,
f.p.

Date: 2017-06-20 07:50
Sender: Christophe Peyret

it worked to compile but when running my program, I have this message :

ERROR: c_PartKway_f2c calling ParMETIS_V3_PartKway

it seems, it is still using parmetis rather than pt-scotch in order to create my partitions.

Date: 2017-06-20 07:45
Sender: Christophe Peyret

Trick of M Janssens worked for me !

Thank you :)

Date: 2016-07-29 19:37
Sender: Eric Bavier

Why not just remove the assignment to thrdnbr in graph_coarsen.c (ignoring that some compilers might choke on an empty struct)? The variable doesn't seem to be referenced anywhere else when COMMON_PTHREAD or SCOTCH_PTHREAD are unset.

--- scotch_6.0.4/src/libscotch/graph_coarsen.c
+++ scotch_6.0.4/src/libscotch/graph_coarsen.c
@@ -348,8 +348,6 @@
#ifdef GRAPHCOARSENTHREAD
thrdnbr =
coarptr->thrddat.thrdnbr = SCOTCH_PTHREAD_NUMBER; /* Required by graphMatchInit */
-#else /* GRAPHCOARSENTHREAD */
- coarptr->thrddat.thrdnbr = 1;
#endif /* GRAPHCOARSENTHREAD */

if (coarptr->finematetax == NULL) { /* If no user-provided mating array */

Date: 2016-04-11 14:15
Sender: M Janssens

To get the compilation to proceed:
In src/libscotch/common.h line 309 add a dummy thrdnbr integer

ThreadLaunchJoinFunc joifptr; /*+ Pointer to join routine +*/
ThreadBarrier barrdat; /*+ Barrier data structure +*/
#else
/* MEJ: dummy member to get compilation to proceed */
int thrdnbr;
#endif /* ((defined COMMON_PTHREAD) || (defined SCOTCH_PTHREAD)) */

Don't know what it does to the behaviour though but it seems to work.


Date: 2015-07-27 13:38
Sender: M Janssens

Same error on linux.

Date: 2015-07-13 12:30
Sender: Denis Davydov

see https://github.com/Homebrew/homebrew-science/pull/2508#issuecomment-120891417 for a detailed explanation why this happens.

Field Old Value Date By
ResolutionNone2018-02-11 22:30pelegrin
status_idOpen2018-02-11 22:30pelegrin
close_dateNone2018-02-11 22:30pelegrin
assigned_tonone2018-02-11 22:30pelegrin