[图解tensorflow源码] 入门准备工作
Swig
|
1. Simplified Wrapper and Interface Generator (SWIG) ,基本思想就是向脚本语言接口公开 C/C++ 代码。SWIG 允许您向广泛的脚本语言公开 C/C++ 代码,包括 Ruby、Perl、Tcl 和 Python。
参考:
|
|||
Bazel
|
1. bazel假定每个目录为[package]单元,目录里面包含了源文件和一个描述文件BUILD,描述文件中指定了如何将源文件转换成构建的输出。
3. bazel命令: > bazel build -c opt //tensorflow/tools/pip_package:build_pip_package
4. 调试模式:
> bazel build -c dbg
参考:
1.安装bazel
> yum install java-1.8.0-openjdk
> yum install java-1.8.0-openjdk-devel
> https://github.com/google/bazel/ 下载最新版本bazel_xxx.sh安装
2. 使用bazel构建系统
3. bazel 命令手册
|
|
||
EIGEN |
1. Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms. http://eigen.tuxfamily.org/
2. 常用的矩阵计算工具有blas, cublas(caffe)、atlas、openblas(mxnet)、eigen,还有lapack、mkl(intel)、Armadillo(matlab)
![]() ![]() 3. Eigen库包含 Eigen模块和unsupported模块,其中Eigen模块为official module,unsupported模块为开源贡献者开发的,没有official support。
|
|||
protobuf
|
1. Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它很适合做数据存储或 RPC 数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。
2. 使用
> 编写.proto文件,编译后生成 .pb.h / .pb.cc文件 > Writer: SerializeToOstream(), Reader: ParseFromIstream()
> required:一个格式良好的消息一定要含有1个这种字段;
> optional:消息格式中该字段可以有0个或1个值(不超过1个)。
> repeated:在一个格式良好的消息中,这种字段可以重复任意多次(包括0次)。相当于java中的List。
3.
![]() ![]() 4. grpc需要理解4个方面(service,stub,channel,observer)
|
|
||
Stream
Executor
|
> google stream executor team: work on parallel programming models for CPUs, GPUs and other platforms. |
|
||
TF C++ |
1. TF源码安装: following the instructions here 2. example: tensorflow/cc/tutorials/example_trainer.cc 3. 自定义的op Kernel:tutorial for adding a new op in C++. 4. TF c++ 调试: debugging Tensorflow's C++ code behind the SWIG interface > The simplest interface between Python and C++ is the pure-C API in |
|
[图解tensorflow源码] 入门准备工作的更多相关文章
- [图解tensorflow源码] 入门准备工作附常用的矩阵计算工具[转]
[图解tensorflow源码] 入门准备工作 附常用的矩阵计算工具[转] Link: https://www.cnblogs.com/yao62995/p/5773142.html tensorf ...
- [图解tensorflow源码] [原创] Tensorflow 图解分析 (Session, Graph, Kernels, Devices)
TF Prepare [图解tensorflow源码] 入门准备工作 [图解tensorflow源码] TF系统概述篇 Session篇 [图解tensorflow源码] Session::Run() ...
- 图解tensorflow 源码分析
http://www.cnblogs.com/yao62995/p/5773578.html https://github.com/yao62995/tensorflow
- [图解tensorflow源码] TF系统概述篇
Rendezvous 1. 定义在core/framework/rendezvous.h 2. A Rendezvous is an abstraction for passing a Tensor ...
- [图解tensorflow源码] [转载] tensorflow设备内存分配算法解析 (BFC算法)
转载自 http://weibo.com/p/1001603980563068394770 @ICT_吴林阳 tensorflow设备内存管理模块实现了一个best-fit with coales ...
- [图解tensorflow源码] Graph 图优化 (graph optimizer)
- [图解tensorflow源码] Graph 图构建 (Graph Constructor)
- [图解tensorflow源码] Graph 图模块 —— Graph Loading
- [图解tensorflow源码] Graph 图模块 (UML视图)
随机推荐
- 【linux】Linux软连接和硬链接
1.Linux链接概念 Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln命令产生硬链接. [硬连接] 硬连接指通过索引 ...
- [OI向?] ubuntu下一些常用的技巧
想起来什么就写什么吧. Ubuntu下的对拍程序 python是最为简便的. from os import system while True: system("./make > in ...
- Gitlab 项目上传
一,登陆gitab,新建reject Repository name: 仓库名称 Description(可选): 仓库描述介绍 Public, Private : 仓库权限(公开共享,私有或指定合作 ...
- python selenium-4自动化测试模型
1.线性测试 特点:每一个脚本都是完整且独立的,可以单独执行. 缺点:用例的开发与维护成本很高 2.模块化驱动测试 特点:把重复的操作独立成公共模块,提高测试用例的可维护性 示例:将搜索封装到func ...
- jquey XMLHttpRequest cannot load url.Origin null is not allowed by Access-Control-Allow-Origin
此篇文章原文地址:http://blog.csdn.net/wangsky2/article/details/22961345 正文: 原文地址:http://stackoverflow.com/qu ...
- BPM与ESB
BPM:业务流程管理 --监控处理流程的轨迹以及处理过程 开源:JBPM 场景: 1.单一系统的协同工作比如审批流程,请假流程 2.多个系统的集成,复用各个子系统,构建新的处理流程(流程的优化与流程 ...
- Helm 入门安装指南
Helm 是 Kubernetes 生态系统中的一个软件包管理工具.本文将介绍 Helm 中的相关概念和基本工作原理,并通过一个具体的示例学习如何使用 Helm 打包.分发.安装.升级及回退 Kube ...
- 关于QT中“崩溃”问题
经常会遇到一个问题,程序运行崩溃! 1.release.debug直接运行崩溃. 2.程序可以运行但是点击界面崩溃. 3.debug模式崩溃,release正常. 4.软件里面的release和deb ...
- centos启用root账号登陆telnet
1,shutdown iptables或是放行23端口 2,shutdown selinux或是设置放行; 3,yum -y install telnet telnet-server 4,vim /e ...
- js实现点击按钮弹出上传文件的窗口
转自:https://www.jb51.net/article/100916.htm 1.详细描述 在页面上设置一个“选择文件”按钮,点击该按钮,会弹出本地磁盘信息用于选择文件. 2.代码 ? 1 2 ...