Skip to content

julcst/tsnn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 

Repository files navigation

TSNN

Deep Learning framework for Slang, aimed to simplify neural texture compression, neural radiance caching, neural importance sampling, etc., inspired by tcnn and RTXNS.

This library only depends on Slang and has explicit support for Falcor and slangpy

Features

Modules

  • MLPs
  • Neural Spline Flows
  • Common loss functions (L1/L2, Relative L1/L2, Relative L2 Luminance)
  • Common activation functions (ReLU, Swish, LeakyReLU, etc)

Optimizers

  • Adam/AdamW

Encodings

  • Hash Grid 2D/3D
  • Spherical Harmonics
  • One Blob

Documentation

The framework is built around three manually-invoked fully-fused kernel invocations:

  1. Training
  2. Optimization
  3. Inference

The implementation of these kernels is highly problem-specific, so this repo only provides utility functions/classes.

Examples

For examples using slangpy see the texture compression and the neural density estimation example.

Falcor Usage

To use this library in Falcor just add it as a submodule and list it in external/CMakeLists.txt:

...
add_subdirectory(tsnn)

The shader library will be added automatically.

About

A small high-speed deep learning framework for Slang, entirely built on Slang auto-diff, allowing for full kernel fusion

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors