- 博客(7)
- 资源 (30)
- 收藏
- 关注
原创 CPU数据预取对软件性能的影响
一、什么是预取预取是指将内存中的指令和数据提前存放到cache(L1、L2、L3)中,从而加快处理器执行速度。Cache预取可以通过硬件或者软件实现,也就是分为硬件预取和软件预取两类。硬件预取,是通过处理器中专门的硬件来实现的,该硬件监控正在执行程序中请求的指令或数据,识别下一个程序需要的流然后预取到处理器中。软件预取,是通过编译器分析代码然后在程序编译的过程中插入prefetch。这样在执行过程中在指定位置就会进行预取的动作。本文讨论的预取指软件预取。二、使用_mm_prefetch预取
2020-07-31 18:52:54 4557
转载 Perf -- Linux下的系统性能调优工具
目录Perf 简介背景知识性能相关的处理器硬件特性,PMU 简介硬件特性之 cache硬件特性之流水线,超标量体系结构,乱序执行硬件特性之分支预测Tracepointsperf 的基本使用准备使用 perfPerf list,perf 事件Perf statperf Top3使用 perf record, 解读 report使用 PMU 的例子小结Perf 简介Perf 是用来进行软件性能分析的工具。通过它,应用程序可以利用..
2020-07-31 17:15:40 913
原创 CPU基础知识之Cache介绍
一、什么是CacheCache就是CPU缓存,它是位于CPU和内存之间的临时存储器。CPU在读取数据进行计算的时候,首先是从内部的缓存中查找需要的数据,如果有,可以最短时间最快速度交付CPU。但是如果没有找到,CPU就会提出“要求”经过缓存从内存中读取,再原路返回到CPU进行计算。同时,把这个数据所在的数据也调入缓存,可以使得以后对整块数据的读取都从缓存中进行,不必再调用内存。换句话说,CPU中缓存是为了加快CPU读取数据的速度,也是为了给内存一个缓冲期。因为CPU运算速度太快了,光靠内存读写完全跟不上
2020-07-31 17:00:07 13038 3
原创 linux下设置线程亲和性
linux下线程亲和性主要就是通过pthread_setaffinity_np()函数来完成。首先将线程需要绑定的core编号,添加到一个集合中,然后调用此函数就ok。测试代码如下:#define _GUN_SOURCE#include <unistd.h>#include <pthread.h>#include <sched.h>#include <stdio.h>void *testfunc(void *arg){ cpu_set_t
2020-07-26 17:18:57 1731
原创 windows下设置线程亲和性(支持大于64核)
设置线程亲和性,通俗的说法就是将线程绑定到cpu上某一个或多个核上,此处的核是指逻辑核心,非物理核心。物理核心与逻辑核心的关系,如果开启超线程,一般逻辑核心数=物理核心数*2。一、SetThreadAffinityMask微软帮助:https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-setthreadaffinitymask函数定义如下:DWORD_PTR SetThreadAffinityMask(HAND
2020-07-26 14:54:51 9507 10
原创 统计git代码行数和本地代码行数的方法
辛辛苦苦撸了一堆代码,如何统计呢?一、如果在git仓库,统计各成员代码量在本地git工程目录下,输入如下命令:git log --format='%aN' | sort -u | while read name; do echo -en "$name\t"; git log --author="$name" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf ".
2020-07-03 18:30:23 2759
原创 linux下可视化git工具git-cola安装与使用(HTTP方式)
一、安装此处以ubuntu为例,默认已经安装git的情况下。为了更方便,使用gui方式操作git,使用的gui软件是git-cola。此处默认已经安装了git的环境下,终端中输入:sudo apt-get install git-cola如下,中间出现[Y/n],输入y一会就安装完毕了。二、使用先在终端中,进入git工程目录,然后输入如下命令,启动gui界面:git cola界面,主要分了这几个区域,如下:工程下的文件状态显示形式,如下:在对源文件进行修改,或者新增,删除等操
2020-07-02 17:15:25 6616 1
NEMU模拟器源码(DiffTest)
2024-07-15
DOSBox-MASM.rar
2023-10-12
AMD处理器编程指导手册
2023-02-18
CodeEditor源码文件
2022-12-07
CXL2.0协议规范文档-中文版
2022-10-27
CXL1.1协议规范文档-中文版
2022-10-27
SourceInsight4.0仿VS2013代码风格主题
2022-02-16
2020最新个税计算器打包脚本
2020-10-19
2020最新个税计算器免安装版
2020-10-19
2020最新个税计算器安装包
2020-10-19
cachesize-master.zip
2020-09-23
processhacker-2.39-sdk.zip
2020-09-23
Flops-master.zip
2020-09-13
processhacker-2.39-src.rar
2020-09-13
processhacker-2.39-bin.rar
2020-09-13
AMD_block_prefetch_paper.pdf
2020-09-13
qt-vsaddin-msvc2017-2.4.3-rev.07.vsix
2020-09-13
boost_reflect-master.rar
2020-09-13
Win64OpenSSL-1_0_2u.rar
2020-09-13
rttr-0.9.5-win64-vs2015.7z
2020-09-13
ResourceHacker.rar
2020-09-13
FastMemcpy-master.zip
2020-09-13
openssl-1.0.1a.tar.gz
2020-09-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人