Skip to main content

Hidet: a compilation-based DNN inference framework.

Project description

Hidet: An open-source deep learning framework

Documentation | Research Paper | Releases | Contributing

GitHub GitHub Workflow Status

Hidet is an open-source deep learning inference framework based on compilation. It supports end-to-end compilation of DNN models from PyTorch and ONNX to efficient cuda kernels. A series of graph-level and operator-level optimizations are applied to optimize the performance.

News

  • We will host a tutorial about Hidet at ASPLOS 2023 on March 25th. Welcome to attend and ask questions!

Getting Started

Installation

pip install hidet

See here for building from source.

Usage

Optimize a PyTorch model through hidet (require PyTorch 2.0):

import torch

# Define pytorch model
model = torch.hub.load('pytorch/vision:v0.6.0', 'resnet18', pretrained=True).cuda().eval()
x = torch.rand(1, 3, 224, 224).cuda()

# Compile the model through Hidet
# Optional: set optimization options (see our documentation for more details)
#   import hidet 
#   hidet.torch.dynamo_config.search_space(2)  # tune each tunable operator
#   hidet.torch.dynamo_config.use_fp16()       # use float16 for acceleration
model_opt = torch.compile(model, backend='hidet')  

# Run the optimized model
y = model_opt(x)

See the following tutorials to learn other usages:

Publication

Hidet originates from the following research work.

Hidet: Task-Mapping Programming Paradigm for Deep Learning Tensor Programs
Yaoyao Ding, Cody Hao Yu, Bojian Zheng, Yizhi Liu, Yida Wang, and Gennady Pekhimenko.
To appear in ASPLOS 2023.

If you used Hidet in your research, welcome to cite our paper.

Development

Hidet is currently under active development by a team at CentML Inc.

Contributing

We welcome contributions from the community. Please see contribution guide for more details.

License

Hidet is released under the Apache 2.0 license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

hidet-0.2.1-py3-none-any.whl (518.2 kB view details)

Uploaded Python 3

File details

Details for the file hidet-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: hidet-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 518.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for hidet-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 408aef44072f774305ade477b5477c11ded2061aece71c8163ccfe3eacf2974d
MD5 656e2fdaa7b5865114c024cd2303cf7d
BLAKE2b-256 299db4ba30ef3bf6c11da0b0d78709010a193ddd16206ab185a39411c1cc343c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page