[关闭]
@songying 2018-12-04T15:49:31.000000Z 字数 2039 阅读 1451

TensorFlow 源码结构

TensorFlow


源码结构

顶层目录

  1. - tensorflow: TensorFlow 项目自身的源码
  2. - third_party: 部分第三方源代码以及针对第三方项目的Bazel构建规则文件
  3. - toolsBazel构建过程所需的环境配置脚本

tensorflow子目录

  1. - c C语言应用层API,也是CC++,以外的其他语言应用层API组件的源代码
  2. - cc: c++ 语言应用层API
  3. - compiler XLA 编译优化组件的源代码
  4. - contrib 社区托管的第三方贡献组件,一旦组件成熟,会迁移到core
  5. - core TensorFlow核心运行时库的源代码,主要采用c++实现
  6. - docs_src: Tensorflow 软件文档的markdown源代码
  7. - examples Tensorflow 应用开发示例代码
  8. - go go语言应用层API
  9. - java java语言应用层API
  10. - js JavaScript 语言应用层API
  11. - lite TensorFlow lite 移动设备上的 TensorFlow
  12. - python python 语言应用层API
  13. - stream_executor: StreamExecutor 库的源代码,主要使用C++ 语言实现,用于管理CUDA GPU上的计算。
  14. - tools Tensorflow 构建时护额运行时使用的工具程序和脚本。

tensorflow/core 子目录

  1. - common_runtime: 核心库的公共运行时源代码,实现了Tensorflow数据流图计算的主要逻辑
  2. - debug 用于核心库调试的组件
  3. - distributed_runtime: 核心库的分布式运行时源代码,实现了TensorFlow 分布式运行模式的主要逻辑
  4. - example 使用Protocol Buffers创建自定义数据结构并访问序列化文件的示例代码。
  5. - framework 核心库的框架性组件,包含Tensorflow编程框架中主要抽象的C++或Protocol Buffers定义
  6. - graph 数据流图相关抽象和工具类的源代码
  7. - grappler Grappler 优化器的源代码
  8. - kernels 数据流图操作针对各类计算设备实现的核函数源代码。
  9. - lib 公共基础库
  10. - ops 数据流图操作的接口定义源代码
  11. - platform 用于访问特定操作系统或云服务接口的平台相关代码
  12. - protobuf 数据流图基本抽象以外的序列化数据结构的Protocol Buffers 源代码
  13. - public 对应用层可见的公开接口的头文件
  14. - user_ops: 用户自行开发的数据流图操作,包含一组示例代码。
  15. - util 核心库内部使用的多种实用工具类或函数的集合。

tensorflow/python 子目录

  1. - client: TensorFlow 主-从模型中的客户端组件,主要包括会话抽象,用于维护数据流图计算的生命周期。
  2. - debug 用于python应用程序调试的组件
  3. - estimator 各类模型评价器
  4. - feature_column: 特征列组件
  5. - framework: python API的框架型组件,包含TensorFlow 编程框架中主要抽象的python语言定义。
  6. - grapper Grappler优化器的python语言接口。
  7. - keras tensorflow keras 源码实现
  8. - kernel_tests: 数据流图操作的单元测试代码,有助于用户学习各种操作的使用方法。
  9. - layers 预置的社交网络模型层组件。
  10. - lib 公共基础库,涉及专用数据结构访问和文件系统IO等。
  11. - ops 数据流图操作的python语言接口
  12. - platform 用于访问特定操作系统或云服务接口的平台相关代码。
  13. - saved_model: 用于访问TensorFlow 通用模型序列话格式(SavadModel)的组件。
  14. - summary 用于生成Tensorflow 事件汇总文件的组件,以便在TensorFlow 中可视化计算过程。
  15. - tools 若干可独立运行的python脚本工具,涉及访问和优化模型文件等功能。
  16. - training 与模型训练过程相关的组件:optimizer saver
  17. - user_ops: 用于存放用户自行开发的数据流图操作的python语言接口
  18. - util python API内部使用的多种实用工具类或函数的集合。
  19. - build_defs.bzl: Bazel 构建过程所需的辅助脚本。
  20. - pywrap_dlopen_global_flags.py: 简洁封装核心库通过C API导出的函数,以便在python API内部调用核心库的功能。

StreamExecutor

《tensorflow-internals》

Compiler

《tensorflow-internals》

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注