|
发表于 2023-1-15 23:21:41
|
显示全部楼层
|阅读模式
来自 中国–浙江–温州–平阳县
在Taichi社区,经常有人问这样一个问题:同样运行在GPU上,Taichi编程语言相比深度学习领域的PyTorch或Tensorflow有哪些不同?在这一系列博客中,前PyTorch核心开发者,现Taichi编译器工程师Ailing,将带大家了解Taichi编程语言和Torch的基本概念和组件,共同探寻两者之间微妙的相似与差异。
首先,Taichi编程语言与PyTorch的主要应用场景并不相同:Torch是计算机视觉、自然语言处理等深度学习任务的首选。Taichi则更适用于并行高性能数值计算、物理仿真以及计算机图形学。在可微物理仿真或者强化学习等交叉领域中,Taichi和PyTorch可以被结合使用,能够极大地减少重复造轮子的痛苦。
相似之处
从上层设计来看,Taichi和Torch的设计初衷都是降低用户的使用门槛。相比Tensorflow 1.0的静态构建图,eager模式下的PyTorch允许用户在Python的执行中动态构建图,极大地增强了PyTorch的易用性和可调试性。同样,易用性也是Taichi最关心的指标之一,我们希望让更多人无需掌握艰深的CUDA、OpenGL或Vulkan等专业知识,仍然可以便捷地编写高性能并行程序。
Taichi和Torch都选择成为目前非常受欢迎的Python语言的生态圈的一部分,两者和其他通用的Python包都是以Python package的形式发布新版本,在命令行pip install taichi或pip install torch就可以一键安装。
各有不同
taichi尽管Taichi和Torch有一些相似之处,两者仍然存在诸多明显差别。对于Torch eager模式的用户来说,这种差别更加明显。在eager模式下,PyTorch程序由Python解释器执行,而Taichi(这里Taichi代码特指被 ti.kernel修饰的python function里面的代码)则是由Taichi的编译器编译运行的。taichi https://taichi-lang.cn/
|
|