- 博客(118)
- 收藏
- 关注
原创 [11][go] go concurrency
绝妙的 CHANNELchannel1channel提供了一种强大的、在不使用锁或临界区的情况下,从某个 goroutine 向其他 goroutine 发送数据流的方法。发送者才能关闭channel一个已经被关闭的 channel 永远都不会阻塞已经被关闭的 channel。当一个 channel 一旦被关闭,就不能再向这个 channel 发送数据,不过你仍然可以尝试从 cha...
2020-02-03 18:20:56
231
原创 [10][lecture] Lecture 6: Raft (2)
6.824 2018 Lecture 6: Raft (2)KVservicekey/value service as the example, as in Lab 3 goal: 集群服务对客户端表现和单机一致 goal: 少数节点失效依旧可用 watch out for network partition and split brain! 系统层级 clients - k/...
2020-01-31 13:44:52
310
原创 [9][lecture] Lecture 5: Raft (1)
6.824 2017 Lecture 5: Raft (1)第一部分,介绍raft选举和log复制技术,相关的lab是lab2A 2B;第二部分设计,raft持久化,client行为以及快照技术,涉及lab 2C和lab 3目前为止,讨论的技术主要是使用RSM技术做容错,比如configure server,gfs master或者mapreduce主节点,要达到的效果就是复制集对于clie...
2020-01-30 20:37:16
213
原创 [8][lab] lab2: raft impl
lab 2 raft本节作为实现ft KV store的基础部分,实现raft状态机复制协议,lab3基于lab2的raft模块,构建KV service,lab4基于上述构建shared KV service一般来说,容错通过复制集实现状态的复制,保证在少数节点故障的场景下服务依旧可用,挑战是数据的一致性Raft控制一个服务的状态复制,保证故障后的一致性,保证所有operator log...
2020-01-30 14:18:12
269
原创 [7][lecture] Lecture 4:VMware fault-tolerant virtual machines
6.824 2018 Lecture 4: Primary/Backup ReplicationVMvare FT,一个极端例子下的主备复制容错,即使出错也可以继续提供服务,应该具备以下条件:第一部分组件失效仍然可用;第二对外隐藏分布式,提供单机一样的一致性;第三,对客户端开发友好透明,对server开发友好透明;第四,性能足够好可以处理哪些失效?Fail-Stop类型的失效,独立的失效,...
2020-01-30 00:27:49
315
原创 [6][lab] lab1: map reduce
lab1 map reduce对比了一下2020和之前的lab1,代码结构有一些变化,2018作业代码侧重于实现map reduce以及schedule部分,其他部分由框架给出,2020则是给出了map reduce部分,并将mr和app利用plugin分开表达,同时需要lab开发整个mr框架部分,借鉴已完成的2018可以顺利完成该部分实验。master,由启动+wait,变更为启动+轮询,...
2020-01-29 19:47:18
437
原创 [5][paper] gfs at 2003
paper gfs 2003经历了一次甚是吊诡的新年,肺炎盛行,春节假期延长,幸运的是这次的冠状病毒致死性并不强,虽然赶上了春运的扩散,好在反应及时,应对及时,开始朝着乐观的方向前进了。感受到了外卖送不进小区,感受到了口罩,消毒水断货,没有物流的供应,没有及时的外卖送达,没有集会,所有景点全部关门,根据籍贯开始清查,所有公共交通,整个世界的停转,光怪陆离的2020拉开序幕。那么言归正传,GFS...
2020-01-28 21:40:47
190
原创 [4][lecture] Lecture 3: GFS
6.824 2018 Lecture 3: GFShdfs based on系统级别论文,网络带宽权衡、容错、一致性权衡了一致性和性能,简化设计map/reduce底层依赖的网络存储什么是一致性?每次读都能读到最新的写入数据并发访问时,存在复制集场景下较难实现严格的一致性,写入要写入所有复制集,读才能任意节点读到数据,那么弱一致性允许读到老的数据,强一致性则不允许,强一致性的应...
2020-01-24 13:05:30
290
原创 [3][lecture] Infrastructure: RPC and threads
6.824 2018 Lecture 2: Infrastructure: RPC and threadsWhy Go? (多年来使用c++完成了也不错,但是内存问题始终是大问题,困扰了很多同学很多时间,这门课程重点不在于定位解决内存问题,c++ rpc package不太理想,估计主要还是过多的segment fault或者内存泄露… Go并发支持一流/rpc库也还不错/GC支持,内存不在成...
2020-01-23 23:29:51
195
原创 [2][paper] map reduce at 2004
2004 map reduce google2020年1月底,新年伊始之际,一场始自武汉开始的疫情随着春运蔓延到全国,每天看着地图开始慢慢沦陷,心中忐忑不安,打破不安开始学习很久之前就想学习的东西,分布式mit6.824课程,课程阅读分布式领域的论文,讲解,开发作业最终完成shared-KV storage,希望2020年可以顺利完成该课程,可以在分布式领域有些基础,开篇的论文是google J...
2020-01-23 22:44:09
208
原创 [1][lecture] Introduction to distributed system
6.824 2018 Lecture 1: Introductionsummary什么是分布式系统?(多机器,核心组件是多机器,比如map reduce系统)为什么学习分布式?(组织物理隔离的不同机器/实现物理隔离/失败恢复/横向扩展)分布式复杂度?(并发/网络引入的失败,超时,网络中断,硬件故障)why本课程?(有趣且有难度/现实中实际应用很多/活跃的研究领域/实际开发分...
2020-01-23 21:41:39
161
原创 [0][go] go tutorial
Go base(package,variable,function)package组织,如何引用 import,导出名首字母大写函数语法,多返回值,命名返回值变量声明,作用于级别包,函数,自动类型推导int, uint 和 uintptr 在 32 位系统上通常为 32 位宽,在 64 位系统上则为 64 位宽。当你需要一个整数值时应使用 int 类型,除非你有特殊的理由使用固定大小或...
2020-01-23 21:39:08
457
原创 TensorRT FAQ
What is TensorRT ?What is performance Gap between Pytorch/tensorflow/caffe and TensorRT ?Why TensorRT fast ?How fast about TensorRT ?How to make use of TRT ?What is TensorRT ?英伟达为了让用户更好的使用GPU,...
2019-08-19 11:48:34
188
原创 CUPTI - The CUDA Profiling Tools Interface
CUPTI - The CUDA Profiling Tools InterfaceUsageThe CUDA Profiling Tools Interface (CUPTI) enables the creation of profiling and tracing tools that target CUDA applications. CUPTI provides four A...
2018-05-23 16:38:08
4316
原创 Tools/Profiler
NVProfilerVisual Profilernvprof1.1. Focused Profiling 不需要对程序做任何修改就可以进行profiling,说明依赖的是GPU上的硬件计数器等等,和程序无关。但是可以通过一些开始和结束标识来标记profiling开始和结束的位置,来达到更好的效果,几种典型的场景适合这种固定区域的profiling: 代码分为初始化,拷贝数...
2018-05-22 17:15:37
1237
原创 TensorRT FB
TensorRTNVidia公司提供的前向框架(API形式提供),主要是C++接口。可以充分发挥GPU的计算能力,提高吞吐和时延。模型转换: - API自定义模型,要熟悉训练使用框架的格式以及TRT中layer对于权重格式的要求,把训练的权重转化并赋值给TRT layer - CaffeParser,从Caffe模型导出 - UffParser,从uff格式模型导出 - Onnx...
2018-05-15 20:33:25
425
原创 [入门-9] IO之文件输入和输出
文件对象文件对象 file类文件对象 file-like文件只是连续的字符序列文件内建函数无论是读取还是写入,换行符都需要程序员自己控制#open()file_object = open(filename, access_mode='r',buffering=-1)filename:文件字符串,相对路径绝对路径都可以access_mode:'r/w/a/U/b/+'#file()
2016-11-29 00:04:02
479
原创 [入门-8] 错误处理之异常
常见异常ErrorNameErrorZeroDivisionErrorSyntaxError(唯一非运行时错误)IndexErrorKeyErrorIOErrprOSErrorAttributeErrorValueErrorTypeError两个不是由错误引起的异常Error:SystemExit python程序需要退出KeyboardInterupt c
2016-11-27 23:24:13
431
原创 [入门-7] 基础类型之对象概述
对象身份,id (),内存地址类型,type(),注意类型本身也是对象值,数据项除了值外,前两者都是只读的,在对象创建的时候被赋值标准类型数字 整型、布尔型、长整型、浮点型、复数型字符串 string列表 list元组 tuple字典 dictionary其他内建类型集合 set固定集合 fronzenset类型Null对象,None文件函数/方法模块类内部
2016-11-27 18:00:58
322
原创 [入门-6] 基础类型之数字
基础数字提供标量的存储和直接访问,属于不可更改类型,更新数值就会生成新的对象不可变类型的更新都是如此的类型 布尔型 True False标准整型长整型,非常长好吧双精度浮点型#createaInt = 1aLong = -999999999999999999999999999999LaFloat = 3.14, -1., 4.2E-10, 4.3e25aComplex = 1
2016-11-27 12:06:31
369
原创 [妖路-1] 名称空间,作用域,生存期
引#!/usr/bin/env python# encoding: utf-8def func1(): x = 1 print globals() print 'before func1:', locals() def func2(): a = 1 print 'before fun2:', locals() a +
2016-11-26 22:24:53
275
原创 [入门-5] 程序组织之模块和包
基础逻辑组织和物理组织逻辑组织是模块,module物理组织是文件,file文件名=模块名.py导入的是模块或模块属性默认搜索路径环境变量,PYTHONPATH脚本(解释器)启动后,也可以使用,sys.path (list)查看;使用sys.path.append(r’/var/opt/lib’)添加新的路径到末尾使用sys.path.insert()到指定位置使用sys.modu
2016-11-26 21:51:42
723
原创 [妖路-0] 汉字字符串转unicode字符串
仅仅在python2.X做过实验可以把”\u0063\u0072”字符串转化为汉字字符串可以把汉字字符串转化为把”\u0063\u0072”字符串注意不是改变编码格式,是把编码格式的内容改变为字符串保存下来#!/usr/bin/python# -*- coding: utf-8 -*-#python2.XslashUStr = "\\u0063\\u0072\\u0069\\u0066\\
2016-11-25 22:31:35
562
原创 [入门-4] 基础类型之集合
集合对象是一组无序排列的可哈希的值基础操作#set and frozenset#createa = set('abcdefg')fronzenset(['a','b'...])b = #access'a' in a's' not in b#update 注意对fronzenset不能修改a.add('t')a.update('pypi')#deletea.remove('z')d
2016-11-25 22:27:47
268
原创 [入门-3] 基础类型之字典
Python的字典是可变hash实现的,类似perl中的关联数组基本操作#create adic = {}bdic = {'name':'zdsfsf', 'port': 90, 'dfs':['fd', 2, 9.0]}cdic = dict((['x', 1], ['y', 2]))ddic = {}.fromkeys(('x','y'), -1) #默认是 Nonefdic = {1
2016-11-25 22:26:24
335
原创 [入门-2] 基础类型之元组
元组和列表很像,唯一差别是不可变性,可以作为字典的键基础操作#createaTuple = (123, "abc", (45,6.7,'tuple'),['ds', 6.7, 89],None)bTuple = (123,)tuple('axvsaf')#accessaTuple[1:4]aTuple[1][2]#update,虽然无法改变,但是通过构造另一个元组来完成修改功能aTu
2016-11-23 00:09:49
362
原创 [入门-1]基础类型之列表
基础操作#createaList = [123, 'abc', [123, 4.45, 'hello'], 7-9j]bList = []list('foo')#accessaList[0]aList[2][1]aList[0:2]#remove add delete[].append()[].remove()del aList[1]del aList操作符#compare
2016-11-22 23:32:32
323
原创 [入门-0] 基础类型之字符串
序列通用操作序列类型操作符N = len(seq)seq[0], eq[N-1]seq[-N], seq[-1]obj in seq:obj not in seq:seq[index]seq[start:end]seq[start:end:step]seq*numseq1+seq2seq[::-1] 翻转seq[-100:100] 范围超过index值没关系序列BIF内建函数#类
2016-11-22 00:27:49
334
原创 file and dir
目录操作cd ..cd .cd -cd ~pwd -P:显示连接的原始文件mkdir -m 777 [配置目录权限]p[递归创建]rmdir -p = rm -r ls -al /var/logls -[a/A/d/F/h/i/l/n/r/R/S/t]cp -[a/d/f/i/l/p/r/s/u]rm -[f/i/r]mv -[f/i/u]touch -[acdmt]PAT
2016-11-18 00:02:22
439
原创 chmod、chown、chgrp
用户、用户组/etc/passwd /etc/shadow /etc/group chmod chown chgrp文件属性 ls -al 【权限】【连接数】【所有者】【用户组】【文件容量】【修改日期】【文件名】 d:目录 -:文件 l:连接文件 b:设备文件中可供存储的接口设备 c:串口设备,键盘,鼠标 s:sockets数据接口文件
2016-11-16 23:47:16
310
原创 crontab 定时任务
Linux系统自带的定时器at,只调度1次,atd进程,chkconfig atd oncron,周期性调度,crond进程anacron,唤醒执行任务 主要可以做一些后台定时的工作,当然也可以用来做监控进程,缺点是最少间隔是1mins,如果需要更少的定时器,则需要自己编写进程来完成了。 at服务/var/spool/at目录/etc/at.allow at.denyat
2016-11-16 00:03:26
425
原创 压缩与解压
压缩文件类型 *.Z,compress程序压缩的文件 *.gz,gzip压缩 *.bz2,bzip2压缩 *.tar,tar打包 *.tar.gz,混合 *.tar.bz2,混合compresscompress -rcv 文件或目录uncompress 文件.Zgzip、zcat、bzip2、bzcat略综合命令tar#解压tar -zxvf name.tar
2016-11-13 23:45:10
463
原创 Vim
3种模式一般模式(ESC)编辑模式(i,I,o,O,a,A,r,R)命令行模式(:,/,?)如何退出Vim 一般模式下 :q :q! :wq :wq!常用套路 行号:set nu 高亮:set hls shift + g:尾行 gg:首行 num + G:到多少行 0:行首 $:行尾 删除行:dd 复制行:yy
2016-11-13 22:08:20
222
原创 samba 服务
什么是sambaServer Message Block(SMB),后注册为SAMBA使用NetBIOS协议,Network Basic Input/Optput System,无法跨路由的协议,后续的NetBIOS over TCP/IP协议samba服务能干什么?linux上架设,可以共享给windows平台,跨平台的文件共享。可以通过windows系统,直接更改linux服务器中的文
2016-11-13 16:29:29
355
原创 [8] Word 合并审阅和批注
比较功能 如果你手上有两份word,要找不同,可以使用审阅-比较功能,在更多的选项中可以设置要比较的详细内容,最后点击确定即可。合并功能 多个文档需要合并,可以使用审阅-比较-合并。审阅和修订 审阅-修订,不同的作者会有不同的颜色。也可以自己设置,点击修订右下角-修订选项-高级选项,可以设置修订中的各种标记。打印是否显示修订 要保留修订,打印时,纸张方向选择-保留 不要修
2016-04-17 08:35:45
4831
原创 [7] Word 定制属于自己的表格样式
自定义表格样式帮助快速统一表格样式。快速增加表格中的行列? 鼠标放在需要插入的地方,会有+出现快速统一样式? 内置了很多样式,可以选择;可以选择修改表格样式,也可以新建表格样式,对表格的字体,字号,颜色,框线等等都自定义的设置,在格式中还有各种可以设置的东西,确定后,会出现在表格样式第一个位置。表格中不规则框线添加 斜线:选中单元格-右键-表格属性-边框和底纹,选择向左或者向右的斜线
2016-04-17 08:34:03
1687
原创 [6] Word Q&A
Q&A保存错了怎么办,恢复之前的版本 没有退出的时候,可以撤销ctrl+z,退出则要设置,文件-选项-高级,始终创建备份副本,文件-选项-保存,时间和位置以及保存频率如何显示所有字符? 文件-选项-显示如何显示拼写检查和语法检查? 文件-选项-校队哪些是打印到纸上的? 文件-打印,快捷键ctrl+p全角和半角空格 全角一个汉字大小,半角一个字符大小软硬回车? 自己输入的en
2016-04-13 08:04:49
621
原创 [5] Word 手把手教你写毕业论文-2
本文从前到后的介绍了使用word排版长文档诸如论文等的详细步骤,包括图表编号题注,专业的图和表制作,公式和参考文献,续上一篇目录与图表编号自动化目录 事先目录页留空,最后填上即可,目录一般保留三级标题,字体字号参看论文规定引用-目录-自定义目录,可以选择编号形式等等,最重要的是链接样式前导符间距过大,修改英文字体为times即可目录二字不想出现在目录中,修改格式为正文即可一级标题加粗,但是
2016-04-13 08:03:51
1256
原创 [4] Word 手把手教你写毕业论文-1
本文从前到后的介绍了使用word排版长文档诸如论文等的详细步骤,包括最开始的页面布局,到多级列表,样式链接,页码页眉页脚,续下一篇页面布局 大小,页边距(为了方便双面打印,奇数页和偶数页要设置不同的左右边距,通过页边距中多页的对称页边距实现)论文的三部分前置部分(中英文封面,独创性和授权说明,中英文摘要,目录) 主体部分(正文,参考文献,致谢) 后置部分(附录,个人简历,在校期间发表的学术
2016-04-13 08:01:43
917
原创 [3] Word 排版术
简要介绍word目录,页码,页眉,页脚,分节符,分页符,索引,脚注,题注,尾注,参考文献,交叉引用。目录引用-目录-选项和修改,注意链接样式还有表目录,包括图,表,公式等等还有索引和引文目录,设置方法都一致页码,分节,分页插入-页码,页眉和页脚利用分节符,分割页眉和页码,页脚等等,注意插入分节符后上方有一个回车符,需要手动删掉快速调出设置框,双击页面上部或下部脚注、尾注、题注,注释脚
2016-04-12 09:35:57
538
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人