All Projects → spearow → Juice

spearow / Juice

Licence: other
The Hacker's Machine Learning Engine

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Juice

Futhark
💥💻💥 A data-parallel functional programming language
Stars: ✭ 1,641 (+120.86%)
Mutual labels:  hacktoberfest, opencl, cuda
Primitiv
A Neural Network Toolkit.
Stars: ✭ 164 (-77.93%)
Mutual labels:  framework, opencl, cuda
Gocv
Go package for computer vision using OpenCV 4 and beyond.
Stars: ✭ 4,511 (+507.13%)
Mutual labels:  hacktoberfest, cuda
Bubbletea
A powerful little TUI framework 🏗
Stars: ✭ 7,886 (+961.37%)
Mutual labels:  hacktoberfest, framework
Xray Oxygen
🌀 Oxygen Engine 2.0. [Preview] Discord: https://discord.gg/P3aMf66
Stars: ✭ 481 (-35.26%)
Mutual labels:  opencl, cuda
Ilgpu
ILGPU JIT Compiler for high-performance .Net GPU programs
Stars: ✭ 374 (-49.66%)
Mutual labels:  opencl, cuda
Hipsycl
Implementation of SYCL for CPUs, AMD GPUs, NVIDIA GPUs
Stars: ✭ 377 (-49.26%)
Mutual labels:  opencl, cuda
Polaris
A cross-platform, minimalist web framework for PowerShell
Stars: ✭ 464 (-37.55%)
Mutual labels:  hacktoberfest, framework
Loopback Next
LoopBack makes it easy to build modern API applications that require complex integrations.
Stars: ✭ 3,972 (+434.59%)
Mutual labels:  hacktoberfest, framework
Silk.net
The high-speed OpenAL, OpenGL, Vulkan, and GLFW bindings library your mother warned you about.
Stars: ✭ 534 (-28.13%)
Mutual labels:  hacktoberfest, opencl
Arrayfire Rust
Rust wrapper for ArrayFire
Stars: ✭ 525 (-29.34%)
Mutual labels:  opencl, cuda
Luxcore
LuxCore source repository
Stars: ✭ 601 (-19.11%)
Mutual labels:  opencl, cuda
Loopy
A code generator for array-based code on CPUs and GPUs
Stars: ✭ 367 (-50.61%)
Mutual labels:  opencl, cuda
Arrayfire Python
Python bindings for ArrayFire: A general purpose GPU library.
Stars: ✭ 358 (-51.82%)
Mutual labels:  opencl, cuda
Amgcl
C++ library for solving large sparse linear systems with algebraic multigrid method
Stars: ✭ 390 (-47.51%)
Mutual labels:  opencl, cuda
Freedomotic
Open IoT Framework
Stars: ✭ 354 (-52.36%)
Mutual labels:  hacktoberfest, framework
Bitcracker
BitCracker is the first open source password cracking tool for memory units encrypted with BitLocker
Stars: ✭ 463 (-37.69%)
Mutual labels:  opencl, cuda
Symfony
The Symfony PHP framework
Stars: ✭ 26,220 (+3428.94%)
Mutual labels:  hacktoberfest, framework
Pode
Pode is a Cross-Platform PowerShell web framework for creating REST APIs, Web Sites, and TCP/SMTP servers
Stars: ✭ 329 (-55.72%)
Mutual labels:  hacktoberfest, framework
Bayadera
High-performance Bayesian Data Analysis on the GPU in Clojure
Stars: ✭ 342 (-53.97%)
Mutual labels:  opencl, cuda

Juice

This is the workspace project for

Please conduct the individual README.md files for more information.

Juice Examples

CLI for running juice examples. More examples and benchmark tests can be found at the juice examples directory.

Install CLI

DISCLAIMER: Currently both CUDA and cuDNN are required for the examples to build.

Compile and call the build.

# install rust, if you need to
curl -sSf https://static.rust-lang.org/rustup.sh | sh
# download the code
git clone [email protected]:spearow/juice.git && cd juice/juice-examples
# build the binary
cargo build --release
# and you should see the CLI help page
../target/release/juice-examples --help
# which means, you can run the examples from the juice-examples README

Dependencies

Cap'n'Proto

cpanp is a data interchange format that is used to store and load networks with weights for Juice.

capnproto and capnproto-libs plus their development packages are the ones needed from your package manager.

Cuda

Getting the cuda libraries up poses to be the first road-block many users face.

To get things working one needs to set the following environment variables:

# examplary paths, unlikely to work for your local setup!
export CUDNN_INCLUDE_DIR=/opt/cuda/include
export CUDNN_LIB_DIR=/opt/cuda/targets/x86_64-linux/lib/
export CUBLAS_INCLUDE_DIR=/opt/cuda/include
export CUBLAS_LIB_DIR=/opt/cuda/targets/x86_64-linux/lib/

depending on your local installation setup.

The currently supported cuda version is cuda-10 (details in #114 and #115 )

Note that you need a capable nvidia device in order to run the cuda backend.

OpenCL

You need the apropriate loader and device libraries. Since the OpenCL backend is still WIP, this will be detailed at a later point of time.

BLAS

Blas is a linear algebra used by the native backend.

openblas or blas is required to be present. Choose explicitly via BLAS_VARIANT.

By default an attempt is made to resolve the library via pkg-config.

Overriding via

# examplary paths, unlikely to work for your local setup!
export BLAS_LIB_DIR=/opt/blas/lib64/
export BLAS_INCLUDE_DIR=/opt/blas/include/

is also supported.

Linkage for the blas library variant is determined by setting BLAS_STATIC to 1 or unsetting BLAS_STATIC.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].