Giter Club home page Giter Club logo

Comments (4)

barracuda156 avatar barracuda156 commented on July 28, 2024

Ginkgo backend also fails:

In file included from /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.cpp:55:
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.hpp: In constructor 'hiop::hiopLinSolverSymSparseSTRUMPACK::hiopLinSolverSymSparseSTRUMPACK(const int&, const int&, hiop::hiopNlpFormulation*)':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.hpp:97:8: error: 'hiop::hiopLinSolverSymSparseSTRUMPACK::index_covert_extra_Diag2CSR_' will be initialized after [-Werror=reorder]
   97 |   int *index_covert_extra_Diag2CSR_;
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.hpp:89:12: error:   'int hiop::hiopLinSolverSymSparseSTRUMPACK::n_' [-Werror=reorder]
   89 |   int      n_;                         // number of cols of the whole matrix
      |            ^~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.cpp:63:3: error:   when initialized here [-Werror=reorder]
   63 |   hiopLinSolverSymSparseSTRUMPACK::hiopLinSolverSymSparseSTRUMPACK(const int& n, const int& nnz, hiopNlpFormulation* nlp)
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.cpp: In member function 'virtual int hiop::hiopLinSolverSymSparseSTRUMPACK::matrixChanged()':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.cpp:241:11: error: unused variable 'rowID_tmp' [-Werror=unused-variable]
  241 |       int rowID_tmp{0};
      |           ^~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.hpp: In constructor 'hiop::hiopLinSolverNonSymSparseSTRUMPACK::hiopLinSolverNonSymSparseSTRUMPACK(const int&, const int&, hiop::hiopNlpFormulation*)':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.hpp:145:8: error: 'hiop::hiopLinSolverNonSymSparseSTRUMPACK::index_covert_extra_Diag2CSR_' will be initialized after [-Werror=reorder]
  145 |   int *index_covert_extra_Diag2CSR_;
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.hpp:137:12: error:   'int hiop::hiopLinSolverNonSymSparseSTRUMPACK::n_' [-Werror=reorder]
  137 |   int      n_;                         // number of cols of the whole matrix
      |            ^~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.cpp:301:3: error:   when initialized here [-Werror=reorder]
  301 |   hiopLinSolverNonSymSparseSTRUMPACK::hiopLinSolverNonSymSparseSTRUMPACK(const int& n, const int& nnz, hiopNlpFormulation* nlp)
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.cpp: In member function 'virtual int hiop::hiopLinSolverNonSymSparseSTRUMPACK::matrixChanged()':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseSTRUMPACK.cpp:384:11: error: unused variable 'rowID_tmp' [-Werror=unused-variable]
  384 |       int rowID_tmp{0};
      |           ^~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/Optimization/hiopKKTLinSysSparseCondensed.cpp: In member function 'hiop::hiopLinSolverSymSparse* hiop::hiopKKTLinSysCondensedSparse::determine_and_create_linsys()':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/Optimization/hiopKKTLinSysSparseCondensed.cpp:461:7: error: unused variable 'n' [-Werror=unused-variable]
  461 |   int n = M_condensed_->m();
      |       ^
cc1plus: all warnings being treated as errors
make[2]: *** [src/LinAlg/CMakeFiles/hiopLinAlg.dir/hiopLinSolverSparseSTRUMPACK.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 39%] Building CXX object src/Optimization/CMakeFiles/hiopOptimization.dir/hiopKKTLinSysSparseNormalEqn.cpp.o
cd /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/build/src/Optimization && /opt/local/bin/mpicxx-mpich-gcc13 -DZFP_INT64="long long" -DZFP_INT64_SUFFIX=ll -DZFP_UINT64="unsigned long long" -DZFP_UINT64_SUFFIX=ull -I/opt/local/include/eigen3 -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/build -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/Interface -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/ExecBackends -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/Optimization -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/Utils -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/_Internals -I/opt/local/include/strumpack -isystem /opt/local/include -isystem /opt/local/include/bpack -Wall -Werror -arch ppc -mmacosx-version-min=10.6 -fPIC -Wno-overloaded-virtual -fopenmp -std=gnu++14 -MD -MT src/Optimization/CMakeFiles/hiopOptimization.dir/hiopKKTLinSysSparseNormalEqn.cpp.o -MF CMakeFiles/hiopOptimization.dir/hiopKKTLinSysSparseNormalEqn.cpp.o.d -o CMakeFiles/hiopOptimization.dir/hiopKKTLinSysSparseNormalEqn.cpp.o -c /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/Optimization/hiopKKTLinSysSparseNormalEqn.cpp
cc1plus: all warnings being treated as errors
make[2]: *** [src/Optimization/CMakeFiles/hiopOptimization.dir/hiopKKTLinSysSparseCondensed.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/Optimization/hiopKKTLinSysSparseNormalEqn.cpp: In member function 'hiop::hiopLinSolverSymSparse* hiop::hiopKKTLinSysSparseNormalEqn::determine_and_create_linsys()':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/Optimization/hiopKKTLinSysSparseNormalEqn.cpp:380:13: error: unused variable 'n' [-Werror=unused-variable]
  380 |   size_type n = M_normaleqn_->m();
      |             ^
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp: In lambda function:
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:215:50: error: 'static std::shared_ptr<gko::CudaExecutor> gko::CudaExecutor::create(int, std::shared_ptr<gko::Executor>, bool, gko::allocation_mode, CUstream_st*)' is deprecated: device_reset is deprecated entirely, call cudaDeviceReset directly. alloc_mode was replaced by the Allocator type hierarchy. [-Werror=deprecated-declarations]
  215 |                  return gko::CudaExecutor::create(0, gko::ReferenceExecutor::create(),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  216 |                                                   true);
      |                                                   ~~~~~
In file included from /opt/local/include/ginkgo/core/base/polymorphic_object.hpp:41,
                 from /opt/local/include/ginkgo/core/base/abstract_factory.hpp:40,
                 from /opt/local/include/ginkgo/ginkgo.hpp:40,
                 from /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.hpp:55,
                 from /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:55:
/opt/local/include/ginkgo/core/base/executor.hpp:1532:42: note: declared here
 1532 |     static std::shared_ptr<CudaExecutor> create(
      |                                          ^~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp: In lambda function:
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:220:49: error: 'static std::shared_ptr<gko::HipExecutor> gko::HipExecutor::create(int, std::shared_ptr<gko::Executor>, bool, gko::allocation_mode, CUstream_st*)' is deprecated: device_reset is deprecated entirely, call hipDeviceReset directly. alloc_mode was replaced by the Allocator type hierarchy. [-Werror=deprecated-declarations]
  220 |                  return gko::HipExecutor::create(0, gko::ReferenceExecutor::create(),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  221 |                                                  true);
      |                                                  ~~~~~
/opt/local/include/ginkgo/core/base/executor.hpp:1746:41: note: declared here
 1746 |     static std::shared_ptr<HipExecutor> create(
      |                                         ^~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp: In function 'std::shared_ptr<gko::LinOpFactory> hiop::{anonymous}::setup_solver_factory(std::shared_ptr<const gko::Executor>, std::shared_ptr<gko::matrix::Csr<double, int> >, gko::solver::trisolve_algorithm, unsigned int, double, unsigned int)':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:239:56: error: 'Mc64' is not a member of 'gko::reorder'; did you mean 'gko::experimental::reorder::Mc64'?
  239 |     auto preprocessing_fact = gko::share(gko::reorder::Mc64<double, int>::build().on(exec));
      |                                                        ^~~~
In file included from /opt/local/include/ginkgo/ginkgo.hpp:140:
/opt/local/include/ginkgo/core/reorder/mc64.hpp:105:12: note: 'gko::experimental::reorder::Mc64' declared here
  105 | class Mc64 final
      |            ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:239:61: error: expected primary-expression before 'double'
  239 |     auto preprocessing_fact = gko::share(gko::reorder::Mc64<double, int>::build().on(exec));
      |                                                             ^~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:239:69: error: expected primary-expression before 'int'
  239 |     auto preprocessing_fact = gko::share(gko::reorder::Mc64<double, int>::build().on(exec));
      |                                                                     ^~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:241:65: error: 'Glu' is not a member of 'gko::experimental::factorization'
  241 |     auto lu_fact = gko::share(gko::experimental::factorization::Glu<double, int>::build_reusable()
      |                                                                 ^~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:241:69: error: expected primary-expression before 'double'
  241 |     auto lu_fact = gko::share(gko::experimental::factorization::Glu<double, int>::build_reusable()
      |                                                                     ^~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:241:77: error: expected primary-expression before 'int'
  241 |     auto lu_fact = gko::share(gko::experimental::factorization::Glu<double, int>::build_reusable()
      |                                                                             ^~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:264:53: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
  264 |     auto reusable_factory = gko::share(gko::solver::ScaledReordered<>::build()
      |                                                     ^~~~~~~~~~~~~~~
In file included from /opt/local/include/ginkgo/ginkgo.hpp:144:
/opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
   72 | class ScaledReordered
      |       ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:264:69: error: expected primary-expression before '>' token
  264 |     auto reusable_factory = gko::share(gko::solver::ScaledReordered<>::build()
      |                                                                     ^
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:264:72: error: '::build' has not been declared
  264 |     auto reusable_factory = gko::share(gko::solver::ScaledReordered<>::build()
      |                                                                        ^~~~~
cc1plus: all warnings being treated as errors
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp: In member function 'virtual int hiop::hiopLinSolverSymSparseGinkgo::matrixChanged()':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:333:38: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
  333 |                 gko::as<gko::solver::ScaledReordered<>>(
      |                                      ^~~~~~~~~~~~~~~
/opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
   72 | class ScaledReordered
      |       ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:333:38: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
  333 |                 gko::as<gko::solver::ScaledReordered<>>(
      |                                      ^~~~~~~~~~~~~~~
/opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
   72 | class ScaledReordered
      |       ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:333:22: error: parse error in template argument list
  333 |                 gko::as<gko::solver::ScaledReordered<>>(
      |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:334:35: error: 'using std::__shared_ptr_access<gko::LinOp, __gnu_cxx::_S_atomic, false, false>::element_type = class gko::LinOp' {aka 'class gko::LinOp'} has no member named 'get_solver'; did you mean 'get_size'?
  334 |                     gko_solver_)->get_solver())->get_preconditioner()) :
      |                                   ^~~~~~~~~~
      |                                   get_size
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:336:34: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
  336 |             gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
      |                                  ^~~~~~~~~~~~~~~
/opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
   72 | class ScaledReordered
      |       ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:336:34: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
  336 |             gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
      |                                  ^~~~~~~~~~~~~~~
/opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
   72 | class ScaledReordered
      |       ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:336:18: error: parse error in template argument list
  336 |             gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
      |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:336:67: error: 'using std::__shared_ptr_access<gko::LinOp, __gnu_cxx::_S_atomic, false, false>::element_type = class gko::LinOp' {aka 'class gko::LinOp'} has no member named 'get_solver'; did you mean 'get_size'?
  336 |             gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
      |                                                                   ^~~~~~~~~~
      |                                                                   get_size
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:339:56: error: 'gko::experimental::factorization::status' has not been declared
  339 |     return status == gko::experimental::factorization::status::success ? 0 : -1;
      |                                                        ^~~~~~
make[2]: *** [src/Optimization/CMakeFiles/hiopOptimization.dir/hiopKKTLinSysSparseNormalEqn.cpp.o] Error 1

from hiop.

nychiang avatar nychiang commented on July 28, 2024

@barracuda156 We had a PR#673 to address this issue, by moving -Werror from the release mode. This PR has already been merged into the develop branch. Would you mind testing the develop branch, or maybe wait for the next release, i.e., 1.0.2?

from hiop.

barracuda156 avatar barracuda156 commented on July 28, 2024

@barracuda156 We had a PR#673 to address this issue, by moving -Werror from the release mode. This PR has already been merged into the develop branch. Would you mind testing the develop branch, or maybe wait for the next release, i.e., 1.0.2?

@nychiang Thank you, it does compile with -Werror removed. I have patched CMakeLists for now: https://github.com/macports/macports-ports/blob/dd0d69855be2f9611ba4fc975f8b68af66244cef/math/hiop/files/patch-no-werror.diff#L1-L9

from hiop.

barracuda156 avatar barracuda156 commented on July 28, 2024

Since the fix was merged to the develop branch, closing this.

from hiop.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.