Code Monkey home page Code Monkey logo

planc's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

planc's Issues

something about mu

this->H = (this->H % AtW) / (this->H * WtW + EPSILON_1EMINUS16);
what is %?

command line parsing of --input is broken

It seems that the comparison being done here always results in the user input being interpreted as a parameter for rand_ rather than an input filename. Overriding the expression with if (true) allows the program to load the matrix as expected.

planc/nmf/nmf.cpp

Lines 56 to 57 in f8f4486

if (!this->m_Afile_name.empty() &&
!this->m_Afile_name.compare(this->m_Afile_name.size() - 4, 4, "rand")) {

Unreliable CMake module references

Hi Ramki,

The lines at

include(${ARMADILLO_INCLUDE_DIR}/../cmake_aux/Modules/ARMA_FindOpenBLAS.cmake)
include(${ARMADILLO_INCLUDE_DIR}/../cmake_aux/Modules/ARMA_FindBLAS.cmake)
include(${ARMADILLO_INCLUDE_DIR}/../cmake_aux/Modules/ARMA_FindLAPACK.cmake)

are not generally available in portable builds. The armadillo CMake modules would exist for a local in-place source build of armadillo but are not generally available for builds of PLANC when armadillo is already installed.

I would recommend instead of directly including these modules (ARMA_FindOpenBlas, etc) to rely on CMake's builtin package finding mechanisms, something like ():

set(BLA_VENDOR OpenBLAS)  # force following two lines to look for OpenBlas only
find_package(BLAS REQUIRED)  # Set other constraints as necessary
find_package(LAPACK REQUIRED)

The stock FindBLAS.cmake and FindLAPACK.cmake modules should be quite sufficient (the ARMA_Find* versions shipped with the armadillo source code didn't appear to me to actually do much since OpenBLAS support was added to cmake in version 3.6.0. Their developers should probably up the minimum cmake requirement and drop these custom modules too). One of the things the stock FindBlas module doesn't do is set "${OpenBLAS_FOUND}" which should be unnecessary given BLAS_FOUND and BLA_VENDOR.

If using the stock FindPKG modules is not possible, then the required external custom cmake modules should be shipped with this source code so builds of this don't need to fetch both this and armadillo sources in the case that armadillo is previously installed.

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.