Giter Site home page Giter Site logo

cpputils's Introduction

CPPUtils

A collection of various C++ utility classes and routines.

cpputils's People

Contributors

jackhunt avatar

Watchers

 avatar

cpputils's Issues

AXPY test and documentation

Is your feature request related to a problem? Please describe.
AXPY is not properly tested or documented.

Describe the solution you'd like
Add tests, similar to those for GEMM and add documentation for axpy<T> and AXPYCallConfig.

Describe alternatives you've considered
N/A

Additional context
Reuse existing test matrices where possible, though new single rank cases should also be added.

Document CSVFile

Is your feature request related to a problem? Please describe.
CSVFile is not documented.

Describe the solution you'd like
Full doxygen comments.

Describe alternatives you've considered
N/A

Additional context
N/A

Document Iterators

Is your feature request related to a problem? Please describe.
CountingIterator.hpp and ZipIterator.hpp are not documented.

Describe the solution you'd like
Full Doxygen comments.

Describe alternatives you've considered
N/A

Additional context
N/A

Test and document SampleStatistics.hpp

Is your feature request related to a problem? Please describe.
Neither RunningSampleStatistics nor WindowedSampleStatistics have tests or documentation.

Describe the solution you'd like
A google test suite similar to that for the BLAS routines, with known sequences and expected outputs. These can be randomly generated and computed with numpy as with the BLAS routines.

Documentation should be Doxygen.

Describe alternatives you've considered
N/A

Additional context
The maths itself should also be documented.

Complete Timer class

Is your feature request related to a problem? Please describe.
The Timer class in Timing/Timer.hpp is currently just a stub.

Describe the solution you'd like
A working implementation of a timer as per the existing (minimal) API, documentation and tests. Tests could force thread sleeps and test the timer w.r.t some degree of tolerance.

Describe alternatives you've considered
Removing it. However, it will be useful soon for GPIB runtime stuff.

Additional context
N/A

Test and document CPUBuffer

Is your feature request related to a problem? Please describe.
CPUBuffer<> is not properly tested or documented.

Describe the solution you'd like
A simple test suite, verifying basic functionality (except host/GPU copies, at present) and documentation.

Describe alternatives you've considered
Deferring test writing as it does seem to work and is very simple.

Additional context
Perhaps a not implemented exception should be raised when trying to do host/GPU copying until CUDABuffer<> has been implemented also.

Document Graph

Is your feature request related to a problem? Please describe.
Graph is not documented.

Describe the solution you'd like
Full doxygen comments.

Describe alternatives you've considered
N/A

Additional context
N/A

Enable Doxygen generation from CMake

Is your feature request related to a problem? Please describe.
N/A

Describe the solution you'd like
An option in CMakeLists.txt to BUILD_DOCS or suchlike.

Describe alternatives you've considered
N/A

Additional context
N/A

Implement SGD under Algorithms/GradientOptimizers.hpp

Is your feature request related to a problem? Please describe.
Currently there is only a base optimiser class, there should be at least one concrete optimiser.

Describe the solution you'd like
An implementation (CPU only as a start) of simple SGD (no momentum, nester etc) following the API of GradientOptimizerBase. Simple test cases testing convergence and documentation should also be present.

Describe alternatives you've considered
Removing GradientOptimizerBase until a concrete optimiser is required, but this seems wasteful.

Additional context
Should not contain f and df implementations, only implementing the logic of the optimiser. The mathematical functions should be user provided.

GEMM Documentation

Is your feature request related to a problem? Please describe.
Currently, I have to refer to gemm API docs online.

Describe the solution you'd like
Clear documentation for gemm<T> and GEMMCallConfig.

Describe alternatives you've considered
N/A

Additional context
N/A

ContainerTools Docs

Is your feature request related to a problem? Please describe.
N/A

Describe the solution you'd like
Add doxygen comments for each current implementation under ContainerTools.

Describe alternatives you've considered
N/A

Additional context
N/A

Test and document Tokenizing.hpp

Is your feature request related to a problem? Please describe.
Currently there is no test or documentation for splitOnDelimiter.

Describe the solution you'd like
A small set of Gtest cases and doxygen comments.

Describe alternatives you've considered
N/A

Additional context
N/A

Algorithms docs

Is your feature request related to a problem? Please describe.
N/A

Describe the solution you'd like
Add doxygen comments for each current implementation under Algorithms.

Describe alternatives you've considered
N/A

Additional context
N/A

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.