Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: src-d/kmcuda
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v6.0.0
Choose a base ref
...
head repository: src-d/kmcuda
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref

Commits on Jan 26, 2017

  1. Fix Travis build

    vmarkovtsev committed Jan 26, 2017
    Copy the full SHA
    90fd529 View commit details
  2. Merge branch 'develop'

    vmarkovtsev committed Jan 26, 2017
    Copy the full SHA
    20c6d9c View commit details

Commits on Jan 27, 2017

  1. Update README.md

    vmarkovtsev authored Jan 27, 2017
    Copy the full SHA
    ffe5abe View commit details

Commits on Jan 31, 2017

  1. Port to macOS

    Resolves #6
    vmarkovtsev committed Jan 31, 2017
    Copy the full SHA
    1785a12 View commit details
  2. Copy the full SHA
    fa1ec8b View commit details

Commits on Feb 1, 2017

  1. Copy the full SHA
    34840ce View commit details

Commits on Feb 2, 2017

  1. Fix macOS Travis build

    vmarkovtsev committed Feb 2, 2017
    Copy the full SHA
    45c28a8 View commit details
  2. Copy the full SHA
    803900b View commit details

Commits on Feb 9, 2017

  1. Add DOI to README.md

    vmarkovtsev authored Feb 9, 2017
    Copy the full SHA
    46f897d View commit details

Commits on Feb 12, 2017

  1. Copy the full SHA
    d781992 View commit details
  2. Copy the full SHA
    1b458f7 View commit details
  3. Copy the full SHA
    08be486 View commit details
  4. Fix Knn (simple tests)

    vmarkovtsev committed Feb 12, 2017
    Copy the full SHA
    0ee11e9 View commit details
  5. Copy the full SHA
    cb18e40 View commit details

Commits on Feb 13, 2017

  1. Copy the full SHA
    4dec69c View commit details
  2. Copy the full SHA
    c7094be View commit details
  3. Copy the full SHA
    a4008ad View commit details
  4. Copy the full SHA
    1acf8d6 View commit details
  5. Add uint32 overflow test

    vmarkovtsev committed Feb 13, 2017
    Copy the full SHA
    3b76985 View commit details
  6. Copy the full SHA
    b2523dd View commit details
  7. Copy the full SHA
    df273bc View commit details
  8. Copy the full SHA
    2678533 View commit details
  9. Copy the full SHA
    cbdfabe View commit details
  10. Add some benchmarks

    vmarkovtsev committed Feb 13, 2017
    Copy the full SHA
    5c663c8 View commit details

Commits on Feb 14, 2017

  1. Add C example

    Fixes #9
    vmarkovtsev committed Feb 14, 2017
    Copy the full SHA
    6260c4f View commit details
  2. Fix the tables in README

    vmarkovtsev committed Feb 14, 2017
    Copy the full SHA
    c5f1974 View commit details
  3. Copy the full SHA
    3b1c982 View commit details
  4. Add TOC

    vmarkovtsev committed Feb 14, 2017
    Copy the full SHA
    9c5f74b View commit details
  5. Move sources to src

    vmarkovtsev committed Feb 14, 2017
    Copy the full SHA
    a5c5906 View commit details
  6. Copy the full SHA
    7d092b1 View commit details
  7. Bump version to 6.1.0

    vmarkovtsev committed Feb 14, 2017
    Copy the full SHA
    9936733 View commit details
  8. Merge branch 'develop'

    vmarkovtsev committed Feb 14, 2017
    Copy the full SHA
    2fedf49 View commit details
  9. Reorder readme header

    vmarkovtsev committed Feb 14, 2017
    Copy the full SHA
    65c5197 View commit details
  10. Copy the full SHA
    9067036 View commit details
  11. Merge branch 'develop'

    vmarkovtsev committed Feb 14, 2017
    Copy the full SHA
    6ec130a View commit details
  12. Add initial R stub

    vmarkovtsev committed Feb 14, 2017
    Copy the full SHA
    3096ade View commit details

Commits on Feb 15, 2017

  1. Add second benchmark

    vmarkovtsev committed Feb 15, 2017
    Copy the full SHA
    25abc45 View commit details
  2. Copy the full SHA
    bfae3b0 View commit details

Commits on Feb 16, 2017

  1. Copy the full SHA
    865e0bc View commit details

Commits on Feb 17, 2017

  1. Copy the full SHA
    d45e726 View commit details

Commits on Feb 18, 2017

  1. Pass two basic tests

    vmarkovtsev committed Feb 18, 2017
    Copy the full SHA
    2868527 View commit details
  2. Copy the full SHA
    4997bc8 View commit details
  3. Copy the full SHA
    21bc6c4 View commit details

Commits on Feb 20, 2017

  1. Pass K-nn R test

    K-means tests are still partially broken
    vmarkovtsev committed Feb 20, 2017
    Copy the full SHA
    b14efb9 View commit details

Commits on Feb 21, 2017

  1. Fix the last bugs

    vmarkovtsev committed Feb 21, 2017
    Copy the full SHA
    69d4c8a View commit details
  2. Copy the full SHA
    8481b03 View commit details
  3. Add R docs

    vmarkovtsev committed Feb 21, 2017
    Copy the full SHA
    a345d14 View commit details
  4. Copy the full SHA
    3546a21 View commit details
  5. Add R build in Travis

    vmarkovtsev committed Feb 21, 2017
    Copy the full SHA
    f160e26 View commit details
  6. Fix macOS build

    vmarkovtsev committed Feb 21, 2017
    Copy the full SHA
    02e824a View commit details
Showing with 2,696 additions and 407 deletions.
  1. +2 −0 .github/dco.yml
  2. +9 −0 .gitignore
  3. +0 −8 .travis.setup
  4. +12 −5 .travis.yml
  5. +0 −36 CMakeLists.txt
  6. +73 −0 CODE_OF_CONDUCT.md
  7. +55 −0 CONTRIBUTING.md
  8. +37 −0 DCO
  9. +0 −21 LICENSE
  10. +194 −0 LICENSE.md
  11. +1 −0 MAINTAINERS
  12. +331 −45 README.md
  13. +13 −0 doc/Doxyfile
  14. +468 −0 img/kmeans_image.ipynb
  15. BIN img/sourced.png
  16. +0 −72 setup.py
  17. +78 −0 src/CMakeLists.txt
  18. +1 −0 src/README.md
  19. +55 −0 src/cmake/FindR.cmake
  20. +4 −0 { → src}/fp_abstraction.h
  21. +79 −43 { → src}/kmcuda.cc
  22. +104 −6 { → src}/kmcuda.h
  23. +111 −108 { → src}/kmeans.cu
  24. +14 −18 { → src}/knn.cu
  25. +122 −5 { → src}/metric_abstraction.h
  26. +95 −8 { → src}/private.h
  27. +12 −23 { → src}/python.cc
  28. +419 −0 src/r.cc
  29. +113 −0 src/setup.py
  30. +105 −0 src/test.R
  31. +48 −2 { → src}/test.py
  32. +119 −0 src/transpose.cu
  33. +14 −7 { → src}/tricks.cuh
  34. +8 −0 { → src}/wrappers.h
2 changes: 2 additions & 0 deletions .github/dco.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
require:
members: false
9 changes: 9 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,13 @@
.idea
cmake-build-*
**/*.cbp
**/CMakeCache.txt
**/CMakeFiles
**/.DS_Store
**/Makefile
**/cmake_install.cmake
**/dist
**/libKMCUDA.egg-info
# Compiled Object files
*.slo
*.lo
8 changes: 0 additions & 8 deletions .travis.setup

This file was deleted.

17 changes: 12 additions & 5 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,24 @@
language: cpp
dist: trusty
os:
- linux
# - osx TODO(vmarkovtsev): osx used to be supported once, but then CUDA updated, Homebrew updated, and I gave up fixing the CI in #63
dist: xenial
sudo: required

before_install:
- . .travis.setup
- rm -rf /opt/python
- wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_8.0.44-1_amd64.deb
- sudo dpkg -i cuda-repo-ubuntu1604_8.0.44-1_amd64.deb
- sudo apt-get update
- sudo apt-get install -y --no-install-suggests --no-install-recommends python3-dev python3-numpy r-base-core cuda-cudart-dev-8-0 cuda-curand-dev-8-0 cuda-core-8-0 cuda-misc-headers-8-0

before_script:
- mkdir build
- cd build
- mkdir src/build
- cd src/build
- cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-8.0 ..

script:
- make -j2 VERBOSE=1

notifications:
email: false
email: false
36 changes: 0 additions & 36 deletions CMakeLists.txt

This file was deleted.

73 changes: 73 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# Contributor Covenant Code of Conduct

## Our Pledge

In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, gender identity and expression, level of experience,
education, socio-economic status, nationality, personal appearance, race,
religion, or sexual identity and orientation.

## Our Standards

Examples of behavior that contributes to creating a positive environment
include:

* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting

## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.

## Scope

This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at conduct@sourced.tech. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html

[homepage]: https://www.contributor-covenant.org
55 changes: 55 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Contributing Guidelines

KMCUDA project is [Apache licensed](LICENSE.md) and accepts
contributions via GitHub pull requests. This document outlines some of the
conventions on development workflow, commit message formatting, contact points,
and other resources to make it easier to get your contribution accepted.

## Certificate of Origin

By contributing to this project you agree to the [Developer Certificate of
Origin (DCO)](DCO). This document was created by the Linux Kernel community and is a
simple statement that you, as a contributor, have the legal right to make the
contribution.

In order to show your agreement with the DCO you should include at the end of commit message,
the following line: `Signed-off-by: John Doe <john.doe@example.com>`, using your real name.

This can be done easily using the [`-s`](https://github.com/git/git/blob/b2c150d3aa82f6583b9aadfecc5f8fa1c74aca09/Documentation/git-commit.txt#L154-L161) flag on the `git commit`.


## Support Channels

The official support channels, for both users and contributors, are:

- GitHub [issues](https://github.com/src-d/kmcuda/issues)*
- Slack: #machine-learning room in the [source{d} Slack](https://join.slack.com/t/sourced-community/shared_invite/enQtMjc4Njk5MzEyNzM2LTFjNzY4NjEwZGEwMzRiNTM4MzRlMzQ4MmIzZjkwZmZlM2NjODUxZmJjNDI1OTcxNDAyMmZlNmFjODZlNTg0YWM)

*Before opening a new issue or submitting a new pull request, it's helpful to
search the project - it's likely that another user has already reported the
issue you're facing, or it's a known issue that we're already aware of.


## How to Contribute

Pull Requests (PRs) are the main and exclusive way to contribute to the official go-git project.
In order for a PR to be accepted it needs to pass a list of requirements:

- All the tests pass.
- Python code is formatted according to [![PEP8](https://img.shields.io/badge/code%20style-pep8-orange.svg)](https://www.python.org/dev/peps/pep-0008/).
- If the PR is a bug fix, it has to include a new unit test that fails before the patch is merged.
- If the PR is a new feature, it has to come with a suite of unit tests, that tests the new functionality.
- In any case, all the PRs have to pass the personal evaluation of at least one of the [maintainers](MAINTAINERS.md).


### Format of the commit message

The commit summary must start with a capital letter and with a verb in present tense. No dot in the end.

```
Add a feature
Remove unused code
Fix a bug
```

Every commit details should describe what was changed, under which context and, if applicable, the GitHub issue it relates to.
37 changes: 37 additions & 0 deletions DCO
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.


Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or

(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or

(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.

(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
21 changes: 0 additions & 21 deletions LICENSE

This file was deleted.

Loading