
Torchsparse adalah perpustakaan jaringan saraf berkinerja tinggi untuk pemrosesan point cloud.
Point Cloud Computation telah menjadi beban kerja yang semakin penting untuk mengemudi otonom dan aplikasi lainnya. Tidak seperti komputasi 2D yang padat, konvolusi cloud titik memiliki pola perhitungan yang jarang dan tidak teratur dan dengan demikian membutuhkan dukungan sistem inferensi khusus dengan kernel berkinerja tinggi khusus. Sementara pustaka Point Cloud Deep Learning yang ada telah mengembangkan berbagai data data untuk konvolusi pada awan titik, mereka mengasumsikan satu dataflow tunggal di seluruh pelaksanaan seluruh model. Dalam pekerjaan ini, kami secara sistematis menganalisis dan meningkatkan dataflow yang ada. Sistem kami yang dihasilkan, Torchsparse, mencapai speedup ujung ke ujung 2,9x , 3.3x , 2.2x dan 1.7x pada GPU NVIDIA A100 di atas MinkowskiEngine yang canggih, SPCONV 1.2, Torchsparse (MLSYS) dan SPCONV V2 secara masing-masing.
[2024/11] Torchsparse ++ sekarang mendukung MMDetection3D dan OpenPCDet melalui plugin! Demo penuh tersedia.
[2023/11] Torchsparse ++ telah diadopsi oleh One-2-3-45 ++ dari Prof. Hao Su's Lab (UCSD) untuk pembuatan objek 3D!
[2023/10] Kami menyajikan Torchsparse ++ di Simposium Internasional IEEE/ACM ke -56 tentang Mikroarsitektur (Micro 2023). Kami juga sepenuhnya merilis kode sumber Torchsparse ++.
[2023/6] Torchsparse ++ telah diadopsi oleh One-2-3-45 dari Prof. Hao Su's Lab (UCSD) untuk rekonstruksi 3D mesh!
[2023/6] Torchsparse ++ telah dirilis dan disajikan pada lokakarya CVPR 2023 tentang mengemudi otonom. Ini mencapai 1,7-2.9x inferensi speedup atas sistem canggih sebelumnya.
[2023/1] Dataset Argoverse 2 mengimplementasikan detektor dasar mereka dengan Torchsparse.
[2022/8] Torchsparse disajikan di MLSYS 2022. Video bicara tersedia di sini.
[2022/6] Torchsparse telah diadopsi oleh Sparseneus untuk rekonstruksi permukaan saraf.
[2022/1] Torchsparse telah diterima untuk MLSYS 2022, menampilkan pengelompokan multiplikasi matriks adaptif dan akses memori yang sadar-lokalitas.
[2021/6] Torchsparse v1.4 telah dirilis.
Kami menyediakan paket Torchsparse V2.1.0 yang sudah dibangun (disarankan) dengan versi Pytorch dan CUDA yang berbeda untuk menyederhanakan bangunan untuk sistem Linux.
Pastikan setidaknya Pytorch 1.9.0 diinstal:
python -c " import torch; print(torch.__version__) "
>>> 1.10.0Jika Anda ingin menggunakan Torchsparse dengan GPU, harap pastikan Pytorch diinstal dengan CUDA:
python -c " import torch; print(torch.version.cuda) "
>>> 11.3Kemudian roda Torchsparse yang tepat dapat ditemukan dan diinstal dengan menjalankan skrip instalasi:
python -c " $( curl -fsSL https://raw.githubusercontent.com/mit-han-lab/torchsparse/master/install.py ) "Jika server PYPI tidak berfungsi seperti yang diharapkan, jangan khawatir, Anda masih dapat mengunduh roda secara manual. Roda tercantum di situs web ini. Seseorang dapat menggunakan skrip instalasi kami untuk secara otomatis menentukan nomor versi yang digunakan untuk mengindeks roda. Misalnya, jika Anda menggunakan Pytorch 1.11.0, CUDA 11.5, nomor versi akan berakhir menjadi 2.1.0+torch111cu115. Anda kemudian dapat memilih roda yang tepat sesuai dengan versi Python Anda.
Anda juga dapat menginstal perpustakaan kami dari sumber melalui:
python setup.py installdi repositori, atau menggunakan
pip install git+https://github.com/mit-han-lab/torchsparse.git
tanpa perlu mengkloning repositori.

Torchsparse secara signifikan mengungguli mesin inferensi awan titik yang ada dalam deteksi objek 3D dan tolok ukur segmentasi lidar di tiga generasi arsitektur GPU (Pascal, Turing dan Ampere) dan semua presisi (FP16, TF32, FP32). Hingga 1,7x lebih cepat dari SPCONV 2.3.5 yang canggih dan hingga 2,2x lebih cepat dari
Torchsparse-Mlsys di Cloud GPU. Ini juga meningkatkan latensi SPCONV 2.3.5 dengan 1,25 × pada Orin.

Torchsparse mencapai kecepatan pelatihan presisi campuran superior dibandingkan dengan minkowskiengine, Torchsparse-MLSYS dan SPCONV 2.3.5. Secara khusus, 1,16x lebih cepat pada Tesla A100, 1,27x lebih cepat pada RTX 2080 Ti daripada SPCONV 2.3.5 yang canggih. Ini juga secara signifikan mengungguli MinkowskiEngine sebesar 4,6-4,8x di tujuh tolok ukur pada A100 dan 2080 Ti. Diukur dengan ukuran batch = 2.
Anda mungkin menemukan tolok ukur kami dari tautan ini. Untuk mengakses set data preproses, silakan hubungi penulis. Kami tidak dapat secara terbuka merilis data mentah dari Semantickitti, Nuscenes dan Waymo karena persyaratan lisensi.
Torchsparse dikembangkan oleh tim luar biasa berikut:
Jika Anda menggunakan Torchsparse, silakan gunakan entri Bibtex berikut untuk mengutip:
Torchsparse ++ (Torchsparse V2.1) disajikan pada mikro 2023:
@inproceedings { tangandyang2023torchsparse ,
title = { TorchSparse++: Efficient Training and Inference Framework for Sparse Convolution on GPUs } ,
author = { Tang, Haotian and Yang, Shang and Liu, Zhijian and Hong, Ke and Yu, Zhongming and Li, Xiuyu and Dai, Guohao and Wang, Yu and Han, Song } ,
booktitle = { IEEE/ACM International Symposium on Microarchitecture (MICRO) } ,
year = { 2023 }
}Versi awal dari TorchSparse ++ (Torchsparse V2.1) disajikan di CVPR Workshops 2023:
@inproceedings { tangandyang2023torchsparse++ ,
title = { {TorchSparse++: Efficient Point Cloud Engine} } ,
author = { Tang, Haotian and Yang, Shang and Liu, Zhijian and Hong, Ke and Yu, Zhongming and Li, Xiuyu and Dai, Guohao and Wang, Yu and Han, Song } ,
booktitle = { Computer Vision and Pattern Recognition Workshops (CVPRW) } ,
year = { 2023 }
}Torchsparse disajikan di MLSYS 2022:
@inproceedings { tang2022torchsparse ,
title = { {TorchSparse: Efficient Point Cloud Inference Engine} } ,
author = { Tang, Haotian and Liu, Zhijian and Li, Xiuyu and Lin, Yujun and Han, Song } ,
booktitle = { Conference on Machine Learning and Systems (MLSys) } ,
year = { 2022 }
}Versi awal Torchsparse adalah bagian dari kertas SPVNAS di ECCV 2020:
@inproceedings { tang2020searching ,
title = { {Searching Efficient 3D Architectures with Sparse Point-Voxel Convolution} } ,
author = { Tang, Haotian and Liu, Zhijian and Zhao, Shengyu and Lin, Yujun and Lin, Ji and Wang, Hanrui and Han, Song } ,
booktitle = { European Conference on Computer Vision (ECCV) } ,
year = { 2020 }
}Kertas pcengine diterima oleh MLSYS 2023:
@inproceedings { hong2023pcengine ,
title = { {Exploiting Hardware Utilization and Adaptive Dataflow for Efficient Sparse Convolution in 3D Point Clouds} } ,
author = { Hong, Ke and Yu, Zhongming and Dai, Guohao and Yang, Xinhao and Lian, Yaoxiu and Liu, Zehao and Xu, Ningyi and Wang, Yu } ,
booktitle = { Sixth Conference on Machine Learning and Systems (MLSys) } ,
year = { 2023 }
}Kami berterima kasih kepada Yan Yan dari Tusimple untuk diskusi yang bermanfaat. Harap lihat juga perpustakaan DGSparse, yang dirancang untuk perhitungan jarang yang cepat dan efisien pada grafik dan awan titik. Tim Pekerjaan dari Pcengine (MLSYS 2023) juga sangat terkait dengan kami.
Torchsparse terinspirasi oleh banyak perpustakaan open-source yang ada, termasuk (tetapi tidak terbatas pada) MinkowskiEngine, Second dan SPARSECONVNET.
Kami juga berterima kasih kepada AtributEDICT karena memberikan cara yang elegan untuk mengelola konfigurasi kernel/model.