- 博客(57)
- 资源 (6)
- 收藏
- 关注
转载 OpenMP中几个容易混淆的函数
[转]OpenMP中几个容易混淆的函数(线程数量/线程ID/线程最大数)以及并行区域线程数量的确定说明:这部分内容比较基础,主要是分析几个容易混淆的OpenMP函数,加以理解。(1)并行区域数量的确定:在这里,先回顾一下OpenMP的parallel并行区域线程数量的确定,对于一个并行区域,有一个team的线程去执行,那么该分配多少个线程去执行呢?OpenMP的遇到parallel指令后创建的线程team的数量由如下过程决定:1. if子句的结果2.num_threads的设置.
2021-10-12 10:51:35
400
原创 003.lengthOfLongestSubstring
给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: s = "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: s = "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: s = "pwwkew"输出: 3解释: 因为无重复字符的最长子串是"wke",所以其长度为 3。 请注意,你的答案必须是 子串 的长度,"pwke"...
2021-01-03 17:23:22
214
原创 002.addTwoNumbers
给你两个非空 的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.示例 2:输入:l1 = [0], l2 = [0]输出:[0]示例 3:输入:l1 = [9,9,9,9,9,9,9]...
2021-01-03 17:22:09
366
原创 000.twoSum
链接:https://leetcode-cn.com/problems/two-sum给定一个整数数组 nums和一个整数目标值 target,请你在该数组中找出 和为目标值 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0,...
2021-01-03 16:03:23
170
翻译 gemmlowp上的低精度范例以及如何实现
Introduction“低精度”意味着输入和输出矩阵至多只能是8位的整数,标量类型为uint8_t并不是在uint8_t上做简单的矩阵乘法,因为会溢出。为了避免溢出,我们内部在累加结果时会采用超过8位的数字,最后只保留一些有效的8位。这依赖于调用者提供合适的偏移/乘数/移位参数,从而有效地控制了我们如何从大于8位的临时累加器中提取一些有效的8位数据。Low-precision paradigmsgemmlowp足够的灵活来支持多种低精度的案例,并且可以通过多种方式将含义附加到8bit值上,
2020-10-14 16:55:57
1072
原创 python使用intel 编译器自定义包
python上层应用使用自编译的代码方式:(1)在tensorflow中,当op满足不了我们的需求或者需要自定义op时,可以在tf提供的接口user_ops中export出来方法,在编译tensorflow阶段,可以将自定义的op导出,在python阶段通过tf.user_ops.XXX方法名调用;(2)使用python自定义包,通过pip install 来安装,之后采用跟tensorflow相同的方式引用即可。python自定义包需要包括setup.py、__init__.py、需要编译的c++
2020-05-09 11:13:52
704
原创 使用intel tensorflow量化NLP之类的模型
在NLP之类的深度学习模型中,用的最为广泛的两类模型是bert模型和transformer模型,两者都是采用Attention的机制实现的。由于这两类模型处理的时候都比较长,所以在准确率上升的同时,平均延时也随之上升了,对于这两类模型的优化成为了重点,目前针对NLP的优化主要停留在底层的tensorflow优化,但是往往优化的操作比较有限,并且提升的空间并不大。所以进一步考虑对NLP之类...
2019-08-27 10:25:06
349
原创 tensorflow 添加自定义op
在tensorflow中实现自定义op,在引用时有两种方式:(1)将自定义实现的op编译成.so文件,在python测试代码中直接引用即可(2)在python的user_ops中定义,这样不用再python测试代码中引入,调用起来更加方便两种实现方式如下所示:方式一:编译成.so文件...
2019-05-20 17:26:16
733
转载 自定义op 编译到tensorflow
本教程是使用Bazel把自定义op编译进入TensorFlow并用C++和Python调用,使之在全局生效;不是像之前的加载.so文件的方式调用局部生效。克隆最新版Tensorflow,包括依赖:git clone --recurse-submodules https://github.com/tensorflow/tensorflow.git自定义运算的两个cpp,my_add.cc和...
2019-05-20 11:07:37
862
4
原创 python 虚拟环境使用
为什么需要使用虚拟环境?主要在做性能优化实验时,需要比较两种方式的不同效果,但是为了保证结果的准确性,最好让两种方法在相同的环境中执行,所以使用virtualenv创建虚拟环境虚拟环境创建:sudo pip install virtualenv虚拟环境的使用方式?virtualenv youname 常见虚拟环境 virtualenv --system-site-packages ...
2019-04-17 13:02:13
256
原创 使用pycharm访问远端hbase集群
当前环境:pycharm 64位ubuntuhbase2.0.3从windows环境使用pycharm访问hbase,前提hbase集群已经搭建好,在ubuntu上搭建的集群环境为hbase2.0.3步骤:一、在ubuntu的hbase主节点上安装thrift1.ubuntu系统执行以下命令:sudo apt-get updatesudo apt-get au...
2018-12-10 14:57:24
1740
1
原创 docker基本使用
在项目中使用docker部署环境,docker常见的命令如下:docker命令使用: (1)查看docker信息docker versiondocker info(2)查看容器日志docker logs –f 容器id(3)查看docker中所有镜像docker images(4)查询docker中的容器docker ps:查询docker中正...
2018-08-04 17:20:23
237
原创 java性能优化总结
1.判断元素是否在集合中,可以使用HashSet、HashMap代替List因为List比较集合中的所有元素,才能查找到具体的值,HashMap、HashSet分桶存储,通过查找key的hash值可以快速找到其所在的桶,接近线性的时间复杂度2.字符串连接操作大量字符串连接,使用append连接,不建议使用+,每次使用+会产生很多无用的String对象,占用过多的内存,加重GC的负担。...
2018-07-30 14:12:04
252
原创 git操作流程
在公司项目中用到了git上传和下载代码,以前在实验室都是使用svn进行下载和上传代码,刚学习git操作的时候,总是觉得git好麻烦,不如使用svn方便快捷,但是用了一段时间上传和下载代码后,发现为什么公司里面一般是使用git操作了,git功能比svn强大很多,并且可以创建分支,这对项目开发来说是挺好的。下面来领略一下吧。一、git安装(1)下载git,TortoiseGit-2.3.0.0...
2018-07-30 14:07:09
1841
原创 HBase添加协处理器导致集群异常解决方式
在做HBase二级索引实验时,使用了HBase的协处理器,在插入数据的时候,由于协处理器抛出了异常,导致HRegionServer挂了,重启之后,使用jps查看,马上又消失了,查询HMaster和HRegionServer的日志如下:java.lang.RuntimeException: HRegionServer Aborted at org.apache.hadoop.hbas...
2018-05-01 17:18:25
1483
原创 C语言实现链表、栈、队列的基本操作
一、链表的基本操作#include <stdio.h>#include <stdlib.h>typedef struct LNode{ int data; struct LNode *next;}LNode,*LinkList;//头插法 LinkList create_list_head(int n){ LinkList head = (Link...
2018-04-18 16:10:03
2108
1
原创 项目生成scaladoc和javadoc方式
一、生成scaladoc方式目前网上关于scala类自动生成scaladoc的方式特别少,笔者在项目中也遇到这个问题,解决方式如下:(1)在需要导出项目的pom.xml文件中添加:<plugin> <groupId>net.alchim31.maven</groupId> ...
2018-03-26 15:49:50
1873
原创 Spark集群运行junit测试类
首先:我们的项目是多模块构建的,所以打包的时候会遇到各种模块之间依赖的问题,我们项目用到的是junit测试类,没有用main方法做测试,所以在打包运行的时候可能跟main函数运行方式有很大区别。1. 测试类需要继承TestCase类,如需要运行ESReadTest,则需要将其继承TestCase: 2. 将需要...
2018-03-17 18:27:30
1334
原创 ElasticSearch5.5.0 通过IK分词 建立IK映射
一、IK分词安装:(1)下载对应版本的IK分词安装包,下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases,我的ES版本为5.5.0,所以下载IK:(2)在ES集群的plugins目录下新建ik文件夹:(3)将IK的ZIP上传到新建的ik文件夹下,用unzip ***.zip 解压这个zip文件,并且将这个zip包上传到E...
2018-03-08 15:42:10
2554
原创 FastDFS异地备份
关于FastDFS备份:网上有关于FastDFS异地备份的资料少之又少,笔者正好在做这一方面的项目,并且经过实践是能成功的,所以想写出来跟大家一起交流,笔者主要想到的是两种方法,两种方法都可行,各有缺点和优点,如果各位有更好的想法或者意见可以写在留言区,一起学习交流。因为FastDFS本身没有提供异地备份的功能,所以需要自己实现:(1)第一种方法也是FastDFS作者推荐的方式:根据FastDFS...
2018-03-05 16:08:09
5662
4
原创 Linux常用Shell命
切割文件命令:split -l 300 large_file.txt new_file_prefix查看CPU、内存使用率、网络带宽、磁盘读写速率top #实时查询sudo nethogs #查看网络带宽利用率iostat -d -k 1 10 #查看磁盘速率查看CPU核数:# 总核数 =物理CPU个数 X 每颗物理CPU的核数# 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核...
2018-01-16 16:01:03
681
原创 Apache Beam访问HDFS文件
Apache Beam发布的第一个稳定版本2.0.0,想比较于之前的版本来说,API改变了很多,比如读取HDFS文件的API,以前的读取文件的类已经不适用了,改为使用普通的Text.IO就能读取HDFS文件,前提是建立了HDFS之间的连接,以前用的版本是Apache Beam 2.1.0,如有问题或者改进,可以在留言区给我留言package com.fzu.test.kafka_bea...
2017-11-26 16:50:39
984
2
原创 Rstudio安装使用xgboost
安装xgboost如果以上安装不能成功,则修改Rstudio的镜像路径,详见:http://baijiahao.baidu.com/s?id=1571342845267983&wfr=spider&for=pc 2.加载xgboost
2017-10-10 20:32:50
1356
转载 完全备份、差异备份以及增量备份的区别
数据备份的方式有完全备份、差异备份以及增量备份,那么这三种备份方式有什么区别,在具体应用中又该如何选择呢?本文就这些问题作以介绍。一、备份方式简介1、完全备份(Full Backup)备份全部选中的文件夹,并不依赖文件的存档属性来确定备份那些文件。在备份过程中,任何现有的标记都被清除,每个文件都被标记为已备份。换言之,清除存档属性。完全备份就是指对某一个时间点上的所
2017-09-13 09:44:04
12358
1
原创 CentOS7+Rsync3.09 实现两个主机之间的备份
Rsync是在两台虚拟机之间实现文件复制,CentOS7本身自带了Rsync工具,可以直接使用,备份的示例图如下:备份的执行步骤如下:在源主机(172.17.169.246)上 (1)用root用户执行:vi /etc/rsyncd.conf打开文件后,文件中默认的内容如下:输入以下内容替换这个文件中的内容:uid = rootgid= rootusechroot = nomaxconnec...
2017-09-12 15:54:14
1170
原创 FastDFS客户端多线程上传文件问题
在项目中用到FastDFS,用来存图片,刚开始单线程进行测试,所以没什么问题,但是在多个客户端进行上传后,发现经常性的会报一下错误:FastDFS多线程经常性会遇到这样的问题,这是因为FastDFS本身提供的是简单的客户端上传代码,源码中没有包含连接池,线程测试的代码如下:(1)多线程下载测试代码import edu.fzu.cmp.thirdpackage.fastdfs.Fastdfs...
2017-08-07 21:55:56
5700
原创 FastDFS插入图片
FastDFS插入数据真叫一个心累,不是这个错,就是那个错,刚开始在eclipse中写程序跑,插入的图片感觉不太好,想删除插入的图片,FastDFS没有提供shell端,所以想着删除data文件夹下面的图片,结果就尴尬了,感觉删除有点错误,所以导致重启FastDFS的跟踪节点和存储节点后,导致插入数据直接报异常,后面终于找到了解决方法:(1)首先在存储节点执行:/usr/bin/fdfs_m...
2017-06-05 09:13:17
964
7
原创 TFS和FastDFS使用
分布式系统的选型: 最近一个项目需要存储很多小文件,文件大小大约在200KB左右, 刚开始考虑是FastDFS和TFS,但是项目中需要用到异地备份的功能,FastDFS读写性能还是不错的,至少比TFS要好,可惜没有异地备份这块,TFS满足我们项目所有的功能,很想使用它,可阿里的东西,开源了就不去维护了,2015年就不更新了,并且社区也不活跃,问的问题没人回,资料文档少,用的公司也比较少...
2017-05-21 15:01:38
10387
1
原创 通过SecureCRT安装JDK
第一步 首先在官网上下载JDK的Linux版本。第二步 打开SecureCRT连接远程的Linux主机第三步 在usr下新建目录Java,然后通过winSCP软件将下载下来的JDK拷贝到Java的目录下第四步 解压jdk文件,这一步网上百度一条解压的命令即可。第五步 进入root模式,输入sudo -i,进行root,当然还有很多种方法进入
2017-03-09 09:32:45
4676
原创 Hadoop中Sequencefile和Text相互转化
http://blog.youkuaiyun.com/sinat_29508201/article/details/49155127
2017-02-05 20:27:34
1879
原创 机器学习基础概念
聚类:将本身没有类别的样本聚集成不同的组,这样的一组数据对象的集合叫做簇,并且对每一个这样的簇进行描述的过程,他的目的是使得属于同一个簇的样本之间应该彼此相似,而不同簇的样本应该足够不相似。 数据预处理:在数据挖掘之前使用,大大提高了数据挖掘的质量处理缺失值:将含有缺失值的记录删除根据变量之间的相关关系填补缺失值根据案例之间的相似性填补缺失值
2016-12-30 11:36:51
1209
原创 Apriori算法和FP-growth算法比较
关联分析可以用于回答“哪些商品经常被同时购买?”之类的问题关联分析是在大规模数据集中寻找有趣关系的任务,这些关系可以有两种形式:频繁项集:是经常出现在一块儿的物品的集合关联规则:按时两种物品之间可能存在很强的关系。支持度是针对项集来说的,因此可以定义一个最小支持度,而只保留满足最小值尺度的项集。可信度或者是置信度是针对关联规则来定义的,我们的规则对其中多少的记录都适用Apriori算法是发现频繁项...
2016-11-28 11:11:38
22387
1
原创 Rstudio安装包遇到的问题
使用install.packages("devtools", dependencies = TRUE),一直不能安装包,其实是一直没有从网上下载,总报如下错误:Warning in install.packages : InternetOpenUrl failed: '无法与服务器建立连接'解决方法:在Rstudio中输入 chooseCRANmirror() 如下命令,再选择相应的镜像,这里
2016-10-12 16:07:11
8542
2
原创 Rstudio连接数据库
一、使用Rstudio连接mysql数据库 我们常常会把大量的数据存储在MySQL这样的数据库中,这样方便我们进行数据提取和操作,而很多时候当我们在用R进行数据分析的时候,通常都希望R能够直接和mysql数据库连接,方便我们直接对大规模数据进行处理。当然,mysql中存储的是结构化数据。 有些朋友在使用R连接mysql等数据库的时候会遇到一些问题,因而本文着重以mysql为例,介绍如何利用R连...
2016-10-09 16:30:30
8523
原创 R语言数据预处理
数据预处理函数 数据修改修改数据标签行列删除 例如data[-1,-3]:表示删除数据集data的第一行和第三行缺失值处理:判断是否缺失判断缺失模式在有缺失数据的情况下进行的数据分析是不可能的,处理缺失数据主要有三种方法:删除缺失样本:前提是缺失数据的比例比较少,而且确实数据是随机出现的,这样删除缺失数据后对分析结果影响不大,R可以使用complete.cases()指令选取完整的记录,有缺...
2016-09-30 20:53:33
1722
原创 R语言数据读取以及数据保存
一、R语言读取文本文件:1、文件目录操作:getwd() : 返回当前工作目录setwd("d:/data") 更改工作目录2、常用的读取指令readread.table() : 读取文本文件read.csv(): 读取csv文件如果出现缺失值,read.table()会报错,read.csv()读取时会自动在缺失的位置填补NA3、灵活的读取指令scan() : 4、读取固定宽度格式的文件:re...
2016-09-30 20:22:35
86463
原创 R语言数据框 因子 列表
数据框:data <- data.frame(col1,col2,)数据框patientID <- c(1,2,3,4)age <- c(25,34,28,52)diabetes <- c("Type1","Type2","Type3","Type2")status <- c("poor","improved",&quo
2016-09-29 22:25:08
1568
转载 Java读取文件的方法
1、按字节读取文件内容2、按字符读取文件内容3、按行读取文件内容4、随机读取文件内容 public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 */ public static void readFileByBytes(String fileName) { File file ...
2016-09-24 22:07:53
274
web端实现考勤管理系统
2017-07-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人