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

Fix dist tests #147

Merged
merged 44 commits into from
May 2, 2020
Merged

Commits on Apr 24, 2020

  1. turning back on dist tests(?)

    l-hoang committed Apr 24, 2020
    Configuration menu
    Copy the full SHA
    c44e5b0 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e517595 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5ec32f6 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    68d7d18 View commit details
    Browse the repository at this point in the history

Commits on Apr 28, 2020

  1. Add BFS and PageRank in cython using Galois libraries

    Gurbinder singh Gill authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    2e53d46 View commit details
    Browse the repository at this point in the history
  2. Package cython bindings

    I used the more modern PEP 518 (pyproject.toml) packaging standard
    rather than setuptools, requirements.txt, etc. directly.
    
    Instead of using Cython.Build.cythonize and distuils.Extensions in
    setup.py, a typical method to create cython extensions, I opted to use
    the scikit-build package, which handles gluing setup.py with CMake.
    
    In particular, some changes to the directory structure, imports and
    Cython modules themselves needed to be made to work with scikit-build
    because it uses the cython executable rather than the
    Cython.Build.cythonize API. This seems a net positive anyway because one
    can reproduce the build steps manually for debugging purposes with:
    
      cython -3 --cplus -I .. -I .. file.pyx
    
    Development can be done in the traditional Python way with some
    adjustments for the underlying CMake build system:
    
      python setup.py build_ext --inplace -- -DCMAKE_OPTIONS=...
      # or
      export GALOIS_CMAKE_ARGS=-DCMAKE_OPTIONS=...
      pip install -e . --no-build-isolation
    
    The python directory structure was reorganized to ease packaging as
    well. All Galois Python packages are now under the package galois. The
    libgalois_shem bindings are in galois.shmem. To avoid conflicts with
    existing CMake target names, the test applications are under
    galois._bfs, ... with import aliases galois.bfs, ... respectively.
    ddn0 authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    cf33042 View commit details
    Browse the repository at this point in the history
  3. Update BFS and PageRank in Cython

    Need a better way to initialize shared memory runtime.
    Using explicit "new" as Default constructors are not being
    called.
    Ubuntu authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    c5b3d38 View commit details
    Browse the repository at this point in the history
  4. pangolin: Use standard CMake build

    - Rather than create new symbols like USE_GPU follow the pattern of other
      libgpu/libdist which uses ENABLE_HETRO_GALOIS
      (-D__GALOIS_HET_CUDA__=1) to signal GPU configurations.
    
    - Namespace MAX_SIZE macro to avoid clobbering MAX_SIZE symbols defined
      elsewhere.
    
    - Depend on libraries to provide their include directories and other
      configuration rather than obsolete app function.
    
    - Move third-party dependencies to distinguished external directory
      rather than burying them in our own code.
    
    - Delete unreferenced and non-building code.
    ddn0 authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    748a6f6 View commit details
    Browse the repository at this point in the history
  5. pangolin: Prefix include directories

    Without prefixes it is difficult to determine where to find the source
    of includes. Also it makes installation difficult because there there
    may be filename conflicts among installations (e.g., util.h vs util.h).
    
    Add "pangolin/" as a directory prefix to all pangolin includes. I didn't
    go further to distinguish GPU and CPU versions of pangolin; though that
    is an obvious next step. The pangolin library relies on include tricks
    to work so defer further refactoring until the library is more separated
    from its applications.
    ddn0 authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    9efc67c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    ca27285 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    2540298 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    a3abf3b View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    706aebd View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    1581c42 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    5db158d View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    6612000 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    0bcbd57 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    d5e56b7 View commit details
    Browse the repository at this point in the history
  15. Remove survey propagation

    Survey propagation is not well-maintained and is racy, which leads to
    poor correctness behavior with high concurrency (e.g., increased error,
    divergence).
    ddn0 authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    7b4fc19 View commit details
    Browse the repository at this point in the history
  16. Remove gtuple

    icc fails to compile gtuple due to errors like the following:
    
      [...]gtuple.h(77): error: pack expansion does not make use of any argument packs
          using append = integer_seq<T, Is..., I>;
                                          ^
                detected during instantiation of class "galois::integer_seq<T, Is...> [with T=int, Is=<>]" at line 104
    
    Similar errors are reported by icc when it compiles <tuple> from the GCC
    9 STL library. Currently, icc 12 only supports GCC 8 as a backend.
    
    So, it appears that there are some C++17 features that still trip up
    icc. As a workaround, reformulate gtuple in terms of standard C++17 STL
    features. Since, gtuple itself was designed to provide transitional
    support for integer sequences and related functionality in mixed C++11
    codebases, this gives us an opportunity to remove custom code.
    ddn0 authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    ae090e1 View commit details
    Browse the repository at this point in the history
  17. build: Disable inline warning with icc

    icc is very verbose about mismatches between inline, noinline and
    implicitly inlined methods (like method definitions in class
    definitions). Disable these warnings.
    
    (Apparently, we are not the only ones to do so [1])
    
    [1] https://eigen.tuxfamily.org/dox/DisableStupidWarnings_8h_source.html
    ddn0 authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    029c68d View commit details
    Browse the repository at this point in the history
  18. Simplify Reducible

    Previously, there were two different classes for reductions. One for
    types that are efficiently copyable (GSimpleReducible) and one for types
    are are expensive to copy (GBigReducible). STL containers manage to deal
    with inefficient-to-copy elements without resorting to completely
    separate implementations by using move semantics and adding API
    adjustments like emplace. This commit does the same.
    
    Replace the two reducible classes with a single Reducible class.
    Reducible tries to use move semantics throughout, which will naturally
    fall-back to copying if there is no appropriate specialization.
    
    Remove the subclasses of GBigReducible, which existed to handle updating
    container types while avoiding creating large intermediate values.
    Instead, rely on the getLocal (previously peek_local) method to access
    the current per-thread value and require clients to manipulate the value
    directly.
    
    This change does lose the clean abstraction property of the previous
    approach but having wrapper classes for each composition of container
    types seems unwieldy and difficult for users to understand and extend.
    ddn0 authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    681bed0 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    ad72078 View commit details
    Browse the repository at this point in the history
  20. GALOIS_LOW_MEMORY CMAKE option

    when set, reduces amount of per thread storage for each
    thread from default of 32MB per thread; useful for machines with
    low RAM or for running on CI where memory is limited + multiple
    processes are spawned
    l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    1253ea4 View commit details
    Browse the repository at this point in the history
  21. CI testing: add low mem flag

    l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    c903e49 View commit details
    Browse the repository at this point in the history
  22. fixing dist tc compilation error due to moderngpu

    Vishwesh Jatala authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    e76833b View commit details
    Browse the repository at this point in the history
  23. fix namespace and cmake

    Vishwesh Jatala authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    c7e50ff View commit details
    Browse the repository at this point in the history
  24. corrected the implementation of leiden clustering

    Udit Agarwal authored and l-hoang committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    ce78fe5 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    72bc380 View commit details
    Browse the repository at this point in the history

Commits on Apr 29, 2020

  1. Configuration menu
    Copy the full SHA
    083897d View commit details
    Browse the repository at this point in the history
  2. Revert "CI testing: add low mem flag"

    This reverts commit c903e49.
    l-hoang committed Apr 29, 2020
    Configuration menu
    Copy the full SHA
    168562c View commit details
    Browse the repository at this point in the history
  3. Revert "GALOIS_LOW_MEMORY CMAKE option";

    also got rid of mem hack define
    
    This reverts commit 1253ea4.
    l-hoang committed Apr 29, 2020
    Configuration menu
    Copy the full SHA
    50376f0 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    04c79b5 View commit details
    Browse the repository at this point in the history
  5. remove mem.h include

    cannot build locally right now so have to test via CI
    l-hoang committed Apr 29, 2020
    Configuration menu
    Copy the full SHA
    ebe0a02 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1ac7eec View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    31b2577 View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2020

  1. fix warnings in AIG rewriting except for signed comparison & unused f…

    …unctions
    Yi-Shan Lu authored and l-hoang committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    5fd7bac View commit details
    Browse the repository at this point in the history
  2. fix warnings in aigRewriting; only unused functions and veriables use…

    …d only by assert left
    Yi-Shan Lu authored and l-hoang committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    17e1aff View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    367c346 View commit details
    Browse the repository at this point in the history

Commits on May 1, 2020

  1. Configuration menu
    Copy the full SHA
    06c4286 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    48159f5 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ba0bc71 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d5bd749 View commit details
    Browse the repository at this point in the history

Commits on May 2, 2020

  1. Configuration menu
    Copy the full SHA
    79ff6ca View commit details
    Browse the repository at this point in the history