cuBERT
Fast implementation of BERT inference directly on NVIDIA (CUDA, CUBLAS) and Intel MKL
File Explorer
Download Latest Version (.zip)- benchmark_cu.cpp
- benchmark_gemm.cpp
- benchmark_tf.cpp
- cub.cmake
- FindMKL.cmake
- Findtensorflow.cmake
- googletest.cmake
- mkl.cmake
- protobuf-c.cmake
- protobuf.cmake
- tf_core_framework.cmake
- utf8proc.cmake
- Benchmark.java
- CLibrary.java
- ComputeType.java
- Model.java
- Output.java
- OutputType.java
- ModelTest.java
- pom.xml
- CMakeLists.txt
- __init__.py
- _cuBERT.pxd
- cuBERT.pyx
- cuBERT_benchmark.py
- cuBERT_test.py
- setup.py
- Dense.cpp
- Dense.h
- Embedding.cpp
- Embedding.cu
- Embedding.h
- GELU.cpp
- GELU.cu
- GELU.h
- LayerNorm.cpp
- LayerNorm.cu
- LayerNorm.h
- Softmax.cpp
- Softmax.cu
- Softmax.h
- AttentionMask.cpp
- AttentionMask.cu
- AttentionMask.h
- AttentionSelf.cpp
- AttentionSelf.h
- BatchMatMul.cpp
- BatchMatMul.h
- Transformer.cpp
- Transformer.h
- BertEmbeddings.cpp
- BertEmbeddings.h
- BertPooler.cpp
- BertPooler.cu
- BertPooler.h
- AdditionalOutputLayer.cpp
- AdditionalOutputLayer.h
- Graph.cpp
- Graph.h
- Bert.cpp
- Bert.h
- BertM.cpp
- BertM.h
- common.cpp
- common.h
- tokenization.cpp
- tokenization.h
- cuBERT.cpp
- cuBERT.h
- half.hpp
- attr_value.proto
- function.proto
- graph.proto
- node_def.proto
- op_def.proto
- resource_handle.proto
- tensor.proto
- tensor_shape.proto
- types.proto
- versions.proto
- DenseTest.cpp
- EmbeddingTest.cpp
- GELUTest.cpp
- LayerNormTest.cpp
- SoftmaxTest.cpp
- attention_self_test.py
- AttentionMaskTest.cpp
- AttentionSelfTest.cpp
- BatchMatMulTest.cpp
- modeling.py
- transformer_test.py
- TransformerTest.cpp
- BertEmbeddingsTest.cpp
- BertPoolerTest.cpp
- AdditionalOutputLayerTest.cpp
- bert_test.py
- BertMTest.cpp
- BertTest.cpp
- common_test.cpp
- common_test.h
- tokenization_test.cpp
- cuBERT_test.cpp
- unit_test.cpp
- .gitignore
- .travis.yml
- CMakeLists.txt
- devel-cpu.Dockerfile
- devel-gpu.Dockerfile
- devel-py.Dockerfile
- LICENSE
- README.md
- test_vocab.txt
# Installation Guide
git clone https://github.com/zhihu/cuBERT
Downloads the entire project code from GitHub to your computer.
cd cuBERT
Moves into the project folder you just downloaded.
2. Official Install Script
Easy Recommended- Python 3 Python is required to use pip.
pip install dist/cuBERT-xxx.whl
Installs the package published on PyPI directly โ no need to clone the source.
Pulled directly from this repo's README.
3. CMake
Mediumcmake -DCMAKE_BUILD_TYPE=Release -DcuBERT_ENABLE_GPU=ON -DCUDA_ARCH_NAME=Common ..
Type this command into your terminal and run it.
cmake -DCMAKE_BUILD_TYPE=Release -DcuBERT_ENABLE_MKL_SUPPORT=ON ..
Type this command into your terminal and run it.
Pulled directly from this repo's README.
4. Maven (Java)
Medium- Git Needed to download the project code from GitHub.
- JDK (Java) Required to build and run Java projects.
- Maven The build tool used for the mvn command.
mvn clean package # -DskipTests
Installs dependencies and builds the project using Maven.
Pulled directly from this repo's README.
5. Python
Easypip install dist/cuBERT-xxx.whl
Installs the package published on PyPI directly โ no need to clone the source.
Pulled directly from this repo's README.
