Jittor(计图)

即时编译深度学习框架
授权协议 Apach 2.0
开发语言 C/C++ Python
所属分类 神经网络/人工智能、 机器学习/深度学习
软件类型 开源软件
地区 国产
投 递 者 袁鸿雪
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

计图(Jittor)是一个完全基于动态编译(Just-in-time),内部使用创新的元算子和统一计算图的深度学习框架。元算子和 Numpy 一样易于使用,而统一计算图则是融合了静态计算图和动态计算图的诸多优点,在易于使用的同时,提供高性能的优化。基于元算子开发的深度学习模型,可以被计图实时的自动优化并且运行在指定的硬件上,如 CPU、GPU。

特性:

  • 算子动态编译:Jittor 内置元算子编译器,可以将用户通过元算子编写的 Python 代码,动态编译成高性能的C++ 代码。
  • 自动优化:jittor 内置优化编译遍(complier pass),同时和 LLVM 兼容,这些编译遍会根据硬件设备自动优化动态编译的代码,常见的优化编译遍有循环重排、循环分裂、循环融合、数据打包、向量化、GPU并行。这些编译遍对 C++ 代码进一步优化,生成对计算设备友好的底层算子。
  • 统一内存管理:Jittor 使用了统一内存管理,统一 GPU 与 CPU 之间的内存,当深度学习模型将 GPU 内存耗尽时,将使用 CPU 内存来弥补。
  • 高效同步异步接口:Jittor 同时提供两种接口,同步和异步接口之间切换不会产生性能损失。
  • 模型迁移:Jittor 采用和 PyTorch 相似的模块化接口,同时提供辅助转换脚本,可将 PyTorch 的代码转换成 Jittor 的模型,并可以相互加载和调用。
  • 元算子融合:可将神经网络的基本算子(元算子)融合成复杂算子,如卷积层、归一化层,进一步构成神经网络和深度学习应用。
  • 高阶导数以及反向传播闭包:元算子是反向传播闭包(元算子反向传播也是元算子),同时支持计算任意高阶导数。在深度学习算子开发过程中,免去反向传播算子重复开发工作,同时可以使用统一的优化策略。

安装:

Jittor前端语言为Python,使用了模块化的设计,类似于PyTorch,Keras;后端则使用高性能语言编写,如CUDA,C++。当前Jittor支持三种即时编译器:

  • CPU 编译器 (需要下列至少一个)
    • g++ (>=5.4.0)
    • clang (>=8.0)推荐
  • GPU 编译器(可选)
    • nvcc(>=10.0)
  • Jittor[1]的推出,让机器学习多了一个框架可以供人选择。迫不及待地,我在本人的笔记本和服务器上进行了安装尝试。 实验1,台式机的操作系统是windows10,遇到了: 1.pip3 install git+https://github.com/Jittor/jittor.git:错误, 没网络 2.pip3 install git+https://git.net9.org/cjld/jitt

 相关资料
  • 主要内容 课程列表 专项课程学习 辅助课程 论文专区 课程列表 课程 机构 参考书 Notes等其他资料 卷积神经网络视觉识别 Stanford 暂无 链接 神经网络 Tweet 暂无 链接 深度学习用于自然语言处理 Stanford 暂无 链接 自然语言处理 Speech and Language Processing 链接 专项课程学习 下述的课程都是公认的最好的在线学习资料,侧重点不同,但推

  • Google Cloud Platform 推出了一个 Learn TensorFlow and deep learning, without a Ph.D. 的教程,介绍了如何基于 Tensorflow 实现 CNN 和 RNN,链接在 这里。 Youtube Slide1 Slide2 Sample Code

  • 本文向大家介绍Python编程深度学习计算库之numpy,包括了Python编程深度学习计算库之numpy的使用技巧和注意事项,需要的朋友参考一下 NumPy是python下的计算库,被非常广泛地应用,尤其是近来的深度学习的推广。在这篇文章中,将会介绍使用numpy进行一些最为基础的计算。 NumPy vs SciPy NumPy和SciPy都可以进行运算,主要区别如下 最近比较热门的深度学习,比

  • torch是什么 torch就是诸多深度学习框架中的一种 业界有几大深度学习框架:1)tensorflow,谷歌主推,时下最火,小型试验和大型计算都可以,基于python,缺点是上手相对较难,速度一般;2)torch,facebook主推,用于小型试验,开源应用较多,基于lua,上手较快,网上文档较全,缺点是lua语言相对冷门;3)mxnet,大公司主推,主要用于大型计算,基于python和R,缺

  • 我太菜了,C++需要恶补才行,面试完基本上就知道自己寄,面试官特别好给我说了很多,也让我充分认识到自己的不足 如果是项目的话,会问你项目背景以及项目最终的实现结果等等 如果是自己学习的项目的话,会问你对这个项目的学习心得 最后问对C++对掌握程度 实现vector

  • 本文向大家介绍Python编程深度学习绘图库之matplotlib,包括了Python编程深度学习绘图库之matplotlib的使用技巧和注意事项,需要的朋友参考一下 matplotlib是python的一个开源的2D绘图库,它的原作者是John D. Hunter,因为在设计上借鉴了matlab,所以成为matplotlib。和Pillow一样是被广泛使用的绘图功能,而在深度学习相关的部分,ma