Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Project build fail on sc16-sgd branch #42

Open
KevinLikesDringCoffe opened this issue Jul 11, 2022 · 0 comments
Open

Project build fail on sc16-sgd branch #42

KevinLikesDringCoffe opened this issue Jul 11, 2022 · 0 comments

Comments

@KevinLikesDringCoffe
Copy link

Hi, I'm trying to build the sc16-sgd branch as a CP-SGD benchmark. But the make stage failed with the following error. I'm using cmake version 3.24.0-rc3, icc and icpc version 2021.6.0.

make -C build/Linux-x86_64 all 
make[1]: Entering directory '/home/zywu/bench/splatt/build/Linux-x86_64'
make[2]: Entering directory '/home/zywu/bench/splatt/build/Linux-x86_64'
make[3]: Entering directory '/home/zywu/bench/splatt/build/Linux-x86_64'
make[3]: Leaving directory '/home/zywu/bench/splatt/build/Linux-x86_64'
make[3]: Entering directory '/home/zywu/bench/splatt/build/Linux-x86_64'
[  1%] Building C object lib/CMakeFiles/splatt.dir/__/src/base.c.o
icc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
[  3%] Building C object lib/CMakeFiles/splatt.dir/__/src/bench.c.o
icc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
[  5%] Building CXX object lib/CMakeFiles/splatt.dir/__/src/bfs.cc.o
icpc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
[  6%] Building C object lib/CMakeFiles/splatt.dir/__/src/ccp/ccp.c.o
icc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
[  8%] Building C object lib/CMakeFiles/splatt.dir/__/src/completion/als.c.o
icc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
remark #11074: Inlining inhibited by limit max-size 
remark #11076: To get full report use -qopt-report=4 -qopt-report-phase ipo
[ 10%] Building C object lib/CMakeFiles/splatt.dir/__/src/completion/ccd.c.o
icc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
/home/zywu/bench/splatt/src/completion/ccd.c(153): warning #191: type qualifier is meaningless on cast type
      mats[m] = (val_t const * restrict) model->factors[csf->dim_perm[m]] +
                 ^

/home/zywu/bench/splatt/src/completion/ccd.c(294): warning #191: type qualifier is meaningless on cast type
      mats[m] = (val_t const * const restrict) model->factors[csf->dim_perm[m]] +
                 ^

/home/zywu/bench/splatt/src/completion/ccd.c(418): warning #191: type qualifier is meaningless on cast type
      mats[m] = (val_t const * const restrict) model->factors[csf->dim_perm[m]] +
                 ^

/home/zywu/bench/splatt/src/completion/ccd.c(551): warning #191: type qualifier is meaningless on cast type
      mats[m] = (val_t const * const restrict) model->factors[csf->dim_perm[m]] +
                 ^

remark #11074: Inlining inhibited by limit max-size 
remark #11076: To get full report use -qopt-report=4 -qopt-report-phase ipo
[ 11%] Building CXX object lib/CMakeFiles/splatt.dir/__/src/completion/completion.cc.o
icpc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
[ 13%] Building C object lib/CMakeFiles/splatt.dir/__/src/completion/gd.c.o
icc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
[ 15%] Building C object lib/CMakeFiles/splatt.dir/__/src/completion/gradient.c.o
icc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
remark #11074: Inlining inhibited by limit max-size 
remark #11076: To get full report use -qopt-report=4 -qopt-report-phase ipo
[ 16%] Building C object lib/CMakeFiles/splatt.dir/__/src/completion/lbfgs.c.o
icc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
[ 18%] Building C object lib/CMakeFiles/splatt.dir/__/src/completion/liblbfgs/lbfgs.c.o
icc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
[ 20%] Building C object lib/CMakeFiles/splatt.dir/__/src/completion/nlcg.c.o
icc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
[ 21%] Building CXX object lib/CMakeFiles/splatt.dir/__/src/completion/sgd.cc.o
icpc: command line remark #10412: option '-mkl' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl'
/home/zywu/bench/splatt/src/completion/sgd.cc(2315): error: identifier "sgd_comm_t" is undefined
      sgd_comm_t * sgd_comm,
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2315): error: identifier "sgd_comm" is undefined
      sgd_comm_t * sgd_comm,
                   ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2316): error: type name is not allowed
      tc_model const * const model,
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2316): error: too many initializer values
      tc_model const * const model,
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2316): error: expected a ")"
      tc_model const * const model,
               ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2318): error: expected a ";"
  {
  ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2325): error: this pragma must immediately precede a statement
    #pragma omp parallel reduction(+:reg_obj)
            ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2335): error: this pragma must immediately precede a statement
        #pragma omp for schedule(static) nowait
                ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2340): warning #12: parsing restarts here after previous syntax error
        reg_obj += ws->regularization[m] * accum;
                                                ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2341): error: expected a declaration
      }
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2344): warning #12: parsing restarts here after previous syntax error
    MPI_Allreduce(MPI_IN_PLACE, &reg_obj, 1, SPLATT_MPI_VAL, MPI_SUM, MPI_COMM_WORLD);
                                                                                     ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2346): error: expected an identifier
    assert(reg_obj > 0);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2346): error: expected a type specifier
    assert(reg_obj > 0);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2347): error: expected a declaration
    return reg_obj;
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2348): error: expected a declaration
  }
  ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2373): warning #12: parsing restarts here after previous syntax error
          sizeof(val_t)*nlocalrow*nfactors);
                                           ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2375): error: expected a declaration
        for(int p=0; p < rinfo->layer_size[m]; ++p) {
        ^

/home/zywu/bench/splatt/src/completion/sgd.cc(2377): error: this pragma must immediately precede a statement
  #pragma omp parallel for
          ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3194): warning #12: parsing restarts here after previous syntax error
    splatt_csf *csf = NULL;
                          ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3197): error: expected a declaration
    if(ws->csf) {
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3221): warning #12: parsing restarts here after previous syntax error
    val_t loss = tc_loss_sq(train, model, ws);
                                             ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3222): error: identifier "model" is undefined
    val_t frobsq = tc_frob_sq(model, ws);
                              ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3222): error: identifier "ws" is undefined
    val_t frobsq = tc_frob_sq(model, ws);
                                     ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3223): error #77: this declaration has no storage class or type specifier
    tc_converge(train, validate, model, loss, frobsq, 0, ws);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3223): error: declaration is incompatible with "bool splatt_tc_converge(const sptensor_t *, const sptensor_t *, const tc_model *, splatt_val_t={double}, splatt_val_t={double}, splatt_idx_t={uint64_t={__uint64_t={unsigned long}}}, tc_ws *)" (declared at line 377 of "/home/zywu/bench/splatt/src/completion/completion.h")
    tc_converge(train, validate, model, loss, frobsq, 0, ws);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3223): error: identifier "train" is undefined
    tc_converge(train, validate, model, loss, frobsq, 0, ws);
                ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3223): error: identifier "validate" is undefined
    tc_converge(train, validate, model, loss, frobsq, 0, ws);
                       ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3223): error: identifier "loss" is undefined
    tc_converge(train, validate, model, loss, frobsq, 0, ws);
                                        ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3223): error: too many initializer values
    tc_converge(train, validate, model, loss, frobsq, 0, ws);
                       ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3229): error #77: this declaration has no storage class or type specifier
    timer_start(&ws->tc_time);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3229): error: declaration is incompatible with "void timer_start(sp_timer_t *)" (declared at line 132 of "/home/zywu/bench/splatt/src/completion/../timer.h")
    timer_start(&ws->tc_time);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3232): error: expected a declaration
    for(e=1; e < ws->max_its+1; ++e) {
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3243): error: this pragma must immediately precede a statement
  #pragma omp parallel for
          ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3253): error: this pragma must immediately precede a statement
  #pragma omp parallel for
          ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3259): warning #12: parsing restarts here after previous syntax error
      timer_stop(&ws->train_time);
                                 ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3262): error #77: this declaration has no storage class or type specifier
      timer_start(&ws->test_time);
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3262): error: variable "timer_start" has already been defined
      timer_start(&ws->test_time);
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3263): error #77: this declaration has no storage class or type specifier
      loss = tc_loss_sq(train, model, ws);
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3264): error #77: this declaration has no storage class or type specifier
      frobsq = tc_frob_sq(model, ws);
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3264): error: variable "frobsq" has already been defined
      frobsq = tc_frob_sq(model, ws);
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3265): error #77: this declaration has no storage class or type specifier
      obj = loss + frobsq;
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3265): error: variable "obj" has already been defined
      obj = loss + frobsq;
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3266): error: expected a declaration
      if(tc_converge(train, validate, model, loss, frobsq, e, ws)) {
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3270): warning #12: parsing restarts here after previous syntax error
      timer_stop(&ws->test_time);
                                ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3273): error: expected a declaration
      if(e > 1) {
      ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3281): warning #12: parsing restarts here after previous syntax error
      prev_obj = obj;
                    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3282): error: expected a declaration
    }
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3285): error #77: this declaration has no storage class or type specifier
    printf("     update_time %g (%g)\n", (ws->train_time.seconds - ws->shuffle_time.seconds), (ws->train_time.seconds - ws->shuffle_time.seconds)/e);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3285): error: declaration is incompatible with "int printf(const char *, ...)" (declared at line 318 of "/usr/include/stdio.h")
    printf("     update_time %g (%g)\n", (ws->train_time.seconds - ws->shuffle_time.seconds), (ws->train_time.seconds - ws->shuffle_time.seconds)/e);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3285): error: too many initializer values
    printf("     update_time %g (%g)\n", (ws->train_time.seconds - ws->shuffle_time.seconds), (ws->train_time.seconds - ws->shuffle_time.seconds)/e);
                                         ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3285): error: a value of type "const char *" cannot be used to initialize an entity of type "int"
    printf("     update_time %g (%g)\n", (ws->train_time.seconds - ws->shuffle_time.seconds), (ws->train_time.seconds - ws->shuffle_time.seconds)/e);
           ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3286): error #77: this declaration has no storage class or type specifier
    printf("     shuffle_time %g (%g)\n", ws->shuffle_time.seconds, ws->shuffle_time.seconds/e);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3286): error: variable "printf" has already been defined
    printf("     shuffle_time %g (%g)\n", ws->shuffle_time.seconds, ws->shuffle_time.seconds/e);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3286): error: too many initializer values
    printf("     shuffle_time %g (%g)\n", ws->shuffle_time.seconds, ws->shuffle_time.seconds/e);
                                          ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3286): error: a value of type "const char *" cannot be used to initialize an entity of type "int"
    printf("     shuffle_time %g (%g)\n", ws->shuffle_time.seconds, ws->shuffle_time.seconds/e);
           ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3287): error #77: this declaration has no storage class or type specifier
    printf("   test_time %g (%g)\n", ws->test_time.seconds, ws->test_time.seconds/e);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3287): error: variable "printf" has already been defined
    printf("   test_time %g (%g)\n", ws->test_time.seconds, ws->test_time.seconds/e);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3287): error: too many initializer values
    printf("   test_time %g (%g)\n", ws->test_time.seconds, ws->test_time.seconds/e);
                                     ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3287): error: a value of type "const char *" cannot be used to initialize an entity of type "int"
    printf("   test_time %g (%g)\n", ws->test_time.seconds, ws->test_time.seconds/e);
           ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3295): error #77: this declaration has no storage class or type specifier
    splatt_free(perm);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3295): error: declaration is incompatible with "void splatt_free(void *)" (declared at line 70 of "/home/zywu/bench/splatt/src/completion/../base.h")
    splatt_free(perm);
    ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3295): error: a value of type "splatt_idx_t={uint64_t={__uint64_t={unsigned long}}} *" cannot be used to initialize an entity of type "int"
    splatt_free(perm);
                ^

/home/zywu/bench/splatt/src/completion/sgd.cc(3299): error: expected a declaration
  }
  ^

compilation aborted for /home/zywu/bench/splatt/src/completion/sgd.cc (code 2)
lib/CMakeFiles/splatt.dir/build.make:243: recipe for target 'lib/CMakeFiles/splatt.dir/__/src/completion/sgd.cc.o' failed
make[3]: *** [lib/CMakeFiles/splatt.dir/__/src/completion/sgd.cc.o] Error 2
make[3]: Leaving directory '/home/zywu/bench/splatt/build/Linux-x86_64'
CMakeFiles/Makefile2:178: recipe for target 'lib/CMakeFiles/splatt.dir/all' failed
make[2]: *** [lib/CMakeFiles/splatt.dir/all] Error 2
make[2]: Leaving directory '/home/zywu/bench/splatt/build/Linux-x86_64'
Makefile:135: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/home/zywu/bench/splatt/build/Linux-x86_64'
Makefile:11: recipe for target 'all' failed
make: *** [all] Error 2

Seems there are some bugs with the code. How can I solve this problem?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant