自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

NG7711

专注LINUX 与虚拟化

  • 博客(37)
  • 收藏
  • 关注

原创 使用tensorflow object detection API 进行物体识别

背景物体识别是目前神经网络的一个比较热门的应用领域。尤其是RCCN,FAST-RCNN, FASTER-RCNN出现之后。google把当前比较热门的网络和论文都实现成了API(当然是基于tensorflow),还发布了一些训练好的模型。具体可以看github上面的文档 链接。这篇博客是我github上面一个小项目的说明文档,同时也记录我优化这个程序的过程项目效果Github项目代码链接当前状态硬件

2017-10-22 15:31:15 2176

原创 在kubernetes 集群上运行分布式tensorflow训练

这几天参考google的参考代码,在kubernetes 集群上面进行分布式训练。因为之前主要不是做上层的,也没有接触过分布式系统,所以花了三天才跑起来。记录一下,如果有和我相同背景的同学可以参考一下。因为CSDN上传代码不方便,所以代码我都是放在github。这是整个过程的介绍和所用到的代码整个过程需要用到的第三方工具docker这个比较简单,把官网的tutorial看一下就能够满足这个任务的需求

2017-09-06 08:13:57 6127 8

转载 Introduction NFS, or Network File System, is a distributed filesystem protocol that allows you to m

转载: 好东西自己备份一下,五分钟搞定一个NFS 服务器IntroductionNFS, or Network File System, is a distributed filesystem protocol that allows you to mount remote directories on your server. This allows you to leverag

2017-09-04 17:31:35 758

原创 Tensorflow: 保存和复原模型(save and restore)

目前我主要看到了两种方法来保存和复原tensorflow model,先总结一下:MetaGraph这种就是我们经常看到的 tf.train.Saver 对应的东西。使用这种方法保存模型,会产生两种文件。meta: 里面存储的是整个graph的定义checkpoint: 这里保存的是 variable 的状态。 这里通过如下的方式保存一个模型checkpoint_dir = "mysaver

2017-09-01 10:35:30 19278

转载 A GENTLE GUIDE TO USING BATCH NORMALIZATION IN TENSORFLOW

今天看这个源码models/tutorials/image/cifar10_estimator是看到这么一行code:update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS, name_scope)为了找到什么地方往 UPDATE_OPS 添加了东西。找到了这篇文章,因为暂时我的重心在学会用tensorflow编程,先大概看看,等以后再仔细研究。

2017-08-30 17:11:52 575

原创 如何使用timeline profile tensorflow 程序

和其他的程序一样,tensorflow也有两类问题 * 功能问题:这类问题适合用tfdbg来调试,如果问题出在graph之外,那么就是一个简单的python程序了,直接上pdb, 或者打log * 性能问题:这类使用timeline, 同样如果是graph之外,那么使用cPrfile, line_profile就好了。如何添加代码生成RunMetaDatarun_metadata = tf.

2017-08-26 15:40:11 7364 1

原创 tensorflow: name_scope 和 variable_scope的差别

Variable sharing 简介因为我目前对variable_scope 的理解,这个功能主要是是针对Variable sharing 来做的,所以先介绍一下variable sharing: 主要有两种方法实现 * 直接在各个ops,function之间传递variable reference. * 把variable 封装在variable_scope/name_scope 中var

2017-08-22 10:35:36 4092

原创 安装TensorFlow with GPU

安装TensorFlow with GPU首先需要安装 NVIDIA CUDA 相关的工具,包括两部分CUDA® Toolkit 8.0 NVIDIA’s documentation我选择使用UBUNTU 包管理器的方式安装,根据网站的指示安装,和安装其他的deb没有差别,但是有一个地方出错了。在这一步 6.2.2.2. Compiling the Examples. 错误信息是这样的(抛掉了不重要

2017-08-21 15:07:05 1448

原创 使用memory_profiler 与 cProfile ,line_profiler 优化Python程序运行时间和内存消耗实例

1. 一个用来分析log(XML格式)的程序,运行起来时间很长,有时候内存消耗也会很高。 2. 使用memory_profiler 分析内存消耗,使用cProfile, line_profiler 分析时间消耗

2017-08-19 14:03:19 2451

原创 使用Tensorboard 分析cifar10 model

背景Tensorboard 是google推出了一个可视化分析TensorFlow graph 和 运行过程的工具: tensorboard on githubcifar10 model 是google发布了一个简单的基于cifar10 data的的模型: model on the githubTensorboard 的关键概念和APIsummary Ops: Tensorboard需要数据

2017-08-16 15:17:23 3401

原创 python 3 module of the week

在网上看到一篇比较好的学习python标准库的tutoria: Python 3 Module of the Week. 决定学习一下,因为很多是时候等到需要用的时候再去临时学习,虽然大多数情况下也能对付过去,但是缺点很明显:分散精力:我需要集中精力学习这些基础知识, 而不是专注于我要解决的问题。不知道某些库的存在:有时候没想到有些操作会有标准库实现,如果我感觉这个任务很简单,我会自己去实现。

2017-08-14 18:40:02 5943

转载 Django logging set up

转载自:https://www.webforefront.com/django/setupdjangologging.htmlDjango logging set upProblemYou want to set up Django logging to debug a project's workflow or detect potential errors.

2017-06-20 14:32:16 1841

转载 用datetime和pytz来转换时区

Python标准库里提供了time、datetime和calendar这3个模块来进行时间和日期的处理,其中应用最广的是datetime,而转换时区也是靠它来做的。时区这个玩意非常抽象,处理它时经常弄得我头晕,只好记录下来,免得以后再犯晕。首先要知道时区之间的转换关系,其实这很简单:把当地时间减去当地时区,剩下的就是格林威治时间了。例如北京时间的18:00就是18:00+0

2017-05-28 11:56:56 938

转载 yield and Generators

转载: https://jeffknupp.com/blog/2013/04/07/improve-your-python-yield-and-generators-explained/Prior to beginning tutoring sessions, I ask new students to fill out a brief self-assessment wh

2016-07-29 19:28:46 536

转载 linux块设备读写流程

在学习块设备原理的时候,我最关系块设备的数据流程,从应用程序调用Read或者Write开始,数据在内核中到底是如何流通、处理的呢?然后又如何抵达具体的物理设备的呢?下面对一个带Cache功能的块设备数据流程进行分析。1、 用户态程序通过open()打开指定的块设备,通过systemcall机制陷入内核,执行blkdev_open()函数,该函数注册到文件系统方法(file_operations)中的

2015-02-09 11:50:52 1322

转载 Linux下截图工具 -- scrot

在Linux下很多软件使用命令就可以很好的操作,截图软件也不例外。刚好要截图使用一下,就找到了这款小巧的却很使用的Linux下的截图工具,就是scrot。 如何安装及使用?  1.安装篇很简单,想安装其他软件一样,Fedora下 yum install scrot , Ubuntu下apt-get install scrot就可以。  2.使用篇一般用法就一般而言,使用 scrot 可以抓

2015-01-26 21:23:08 818

转载 x86 calling conventions

This article describes the calling conventions used when programmingx86 architecturemicroprocessors.Calling conventions describe the interface of called code:The order in which atomic (sca

2015-01-21 15:50:10 1529

转载 如何设置fedora默认从命令行启动: systemd

转载至:http://www.cnblogs.com/yizhifendou2013/p/4231561.htmlSumary:因为在fedora中没有/etc/initab文件我们不方便从这里设置它的runlevel target,但是linux又给我们提供了一个强悍的工具systemd,我们可以用system来链接默认的启动级别,所以开始吧!一、实现代码(1)删除目标链接并创建

2015-01-20 17:38:42 888

转载 CentOS 7 巨大变动之 firewalld 取代 iptables

转自 http://www.oracle-base.com/articles/linux/linux-firewall-firewalld.php?utm_source=tuicoolFedora 18 introduced firewalld as a replacement for the previous iptables service. Since RHEL7 and Oracl

2015-01-18 09:51:19 1136

转载 QEMU KVM系列一: Intel VT-x 硬件虚拟化产生的背景

参考文章:http://blog.csdn.net/yearn520/article/details/6461047虚拟化分为 para-virtualization 和 full virtualization. Para-Virtualization 的主要目的是在不支持硬件虚拟化的平台上面实现虚拟化,但是需要改动操作系统。而FULL virtualization是由硬件提供支持的虚拟化

2015-01-02 21:46:18 2309

转载 浅析 Linux 初始化 init 系统,第 3 部分: Systemd

Systemd 的简介和特点Systemd 是 Linux 系统中最新的初始化系统(init),它主要的设计目标是克服 sysvinit 固有的缺点,提高系统的启动速度。systemd 和 ubuntu 的 upstart 是竞争对手,预计会取代 UpStart,实际上在作者写作本文时,已经有消息称 Ubuntu 也将采用 systemd 作为其标准的系统初始化系统。Systemd 的很多

2015-01-02 11:14:01 578

转载 浅析 Linux 初始化 init 系统,第 2 部分: UpStart

Upstart 简介假如您使用的 Linux 发行版是 Ubuntu,很可能会发现在您的计算机上找不到/etc/inittab 文件了,这是因为 Ubuntu 使用了一种被称为 upstart 的新型 init 系统。开发 Upstart 的缘由大约在 2006 年或者更早的时候, Ubuntu 开发人员试图将 Linux 安装在笔记本电脑上。在这期间技术人员发现经典的 sysvini

2015-01-02 11:12:49 579

转载 浅析 Linux 初始化 init 系统,第 1 部分: sysvinit

从IBM developer works转载了三篇,分别介绍了system init, upstart, systemd. 了解了这三种主流init system,这样以后学习起来就能对号入座,不至于每次都被不同的指令弄糊涂了:http://www.ibm.com/developerworks/cn/linux/1407_liuming_init1/什么是 Init 系统,init

2015-01-02 11:08:33 472

转载 Linux内存:内存管理的实质

1. 内核初始化:    * 内核建立好内核页目录页表数据库,假设物理内存大小为len,则建立了[3G--3G+len]::[0--len]这样的虚地址vaddr和物理地址paddr的线性对应关系;    * 内核建立一个page数组,page数组和物理页面系列完全是线性对应,page用来管理该物理页面状态,每个物理页面的虚地址保存在page->virtual中;    * 内核建

2014-12-28 10:10:32 438

转载 使用 monitor command 监控 QEMU 运行状态

进入 QEMU monitor在启动 QEMU 的时候,同时也会启动 monitor 的控制台,通过这个控制台,可以与 QEMU 或者运行状态的虚拟机进行交互。虽然现在有诸如 virt-manager 之类的图形界面的虚拟机管理工具,但是在 monitor 的控制台窗口输入命令似乎更符合 Linux 程序员的开发习惯,而且还能完成一些图形化管理工具所不具备的功能。在 monitor 控

2014-12-24 22:47:40 1307

转载 sigwait函数

转载至CU, 转载请标明: http://blog.chinaunix.net/uid-26983585-id-3323457.html?bsh_bid=288121259--------------------------------------------------------------------------------------------------------------

2014-12-09 00:27:04 529

转载 __attribute__ ((constructor));

gcc为函数提供了几种类型的属性,其中包含:构造函数(constructors)和析构函数(destructors)。程序员应当使用类似下面的方式来指定这些属性:   static void start(void) __attribute__((constructor));    static void stop(void)__attribute__ ((destructor));

2014-12-03 15:39:05 1082

原创 static inline内联函数

今天在看HAL层的头文件的时候,看到static inline int sensors_open,        对inline有些不了解,在这记录一下内联函数有些类似于宏。内联函数的        代码会被直接嵌入在它被调用的地方,调用几次就嵌入几次,没有使用call        指令。这样省去了函数调用时的一些额外开销,比如保存和恢复函数返回地址        等,可以加快速

2014-11-26 15:31:23 596

转载 proc_create的使用方法

转载至:http://blog.csdn.net/ricks_wu/article/details/22213451学习LDD3,

2014-11-25 03:58:35 3821

转载 systemd详解

转载至linux eye, 自己有做小幅改动:http://blog.linuxeye.com/400.html

2014-11-24 16:23:17 1866

转载 Linux 内嵌汇编

简要说下GNU汇编编译器的语法GCC,linux下的GNU c编译器,用的是AT&T的语法,下面列出一些,但并不是全部,,只是和内嵌汇编相关的部分寄存器的命名在寄存器的名字前加前缀%, 比如你要用eAx,那就要这样用%eAx源操作数与目的操作数的顺序源操作数在前,目的操作数在后,这点和Intel 语法刚好相反比如: mov %eAx,%ebx  表示把eAx中的内容传到eb

2014-09-23 14:17:08 2744

转载 浅析GLib

GLib是GTK+和GNOME工程的基础底层核心程序库,是一个综合用途的实用的轻量级的C程序库,它提供C语言的常用的数据结构的定义、相关的处理函数,有趣而实用的宏,可移植的封装和一些运行时机能,如事件循环、线程、动态调用、对象系统等的API。它能够在类UNIX的操作系统平台(如LINUX, HP-UNIX等),WINDOWS,OS2和BeOS等操作系统台上运行GLib需要一个支持线

2014-09-19 15:03:03 642

转载 fcntl使用

转载自:http://www.cnblogs.com/andtt/articles/2178875.html

2014-09-19 11:12:38 457

原创 undefined reference to 'pthread_create'

查看 pthread_create 的man page, 出现如下错误

2014-09-16 23:31:46 649

转载 linux thread mutex

为保持thread同步,需要使用mutex。主要的API 如下pthread_mutex_init,pthread_mutex_destory,pthread_mutex_lock,pthread_mutex_unlo

2014-09-11 14:42:47 600

转载 Linux 库文件的配置:pkg-config的使用

一、编译和连接        一般来说,如果库的头文件不在 /usr/include 目录中,那么在编译的时候需要用 -I 参数指定其路径。由于同一个库在不同系统上可能位于不同的目录下,用户安装库的时候也可以将库安装在不同的目录下,所以即使使用同一个库,由于库的路径的 不同,造成了用 -I 参数指定的头文件的路径也可能不同,其结果就是造成了编译命令界面的不统一。如果使用 -L 参数,也会造

2014-09-09 14:44:27 854

转载 KVM虚拟机代码揭秘——设备IO虚拟化

前言:本文针对intel VT-X技术,结合QEMU和KVM代码以及自己写的实例详细分析了一个虚拟设备的IO虚拟化过程。虽然现在KVM虚拟化性能非常好,发展也非常迅速,但是资料相对比较少,理论知识不是很成熟,其中理解上可能会有些偏差,希望大家指出并与本人联系和讨论. 联系方式:EMAIL:[email protected]  QQ:150197475  QQ群:33273092转载的请

2014-08-29 15:46:47 731

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除