tools
文章平均质量分 71
rrerre
这个作者很懒,什么都没留下…
展开
-
valgrind工具
valgrind提供了一个用于编写动态分析工具的框架。该框架目前已经实现了一些标准的动态分析工具,包括:MemCheck, 用于检测内存错误。Cachegrind, 用于分析cache和分支预测情况。Callgrind, 可以用于交互式地分析函数的动态调用过程。Helgrind和原创 2011-07-21 19:02:16 · 644 阅读 · 0 评论 -
latex中文,以及书签
转自:http://my.oschina.net/zenologo/blog/60160Latex的输入很麻烦,但是它的排版效果还是惊人的漂亮,习惯以后就好了,可以做出很漂亮的文档和PPT。但是中文显示一直是个问题。经过三天的baidu+google的找寻(似乎有点慢哈)终于找到海寧同学的一篇Blog,写得相当详细,也很实用,图文并茂的,忍不住想转一下, 如果感兴趣的同学可以直转载 2013-07-21 15:58:37 · 3931 阅读 · 0 评论 -
CPLEX学习笔记
1. CPLEX的获取1)公司花钱2)申请IBM学术版2. CPLEX的使用方式1) OPL IDE,对应的命令为oplide。优点:基于Eclipse的IDE,功能丰富。缺点:内存消耗大,不能支持打印中间可行解。2) 命令行方式,对应的命令为oplrun优点:内存消耗较小缺点:不能支持打印中间可行解3) 对应的交互方式,对应的命令为原创 2013-06-26 10:35:52 · 29410 阅读 · 12 评论 -
系统安装小结
1. 需求目前许多轻便笔记本已经没有了光驱。所以,要想安装系统,只有U盘安装、硬盘安装和网络安装。硬盘安装需要原有系统能正常工作,网络安装一般在公司内部使用。这里主要讨论U盘安装(尚未确定SD卡安装是否可行?)2. U盘安装简介U盘安装是指从U盘启动并安装系统。有两种方案,一是纯引导系统,二是借助盘上系统进行安装。2.1 纯引导系统这是指盘上只有引导系统。电脑才原创 2013-07-08 16:11:06 · 1029 阅读 · 0 评论 -
simplescalar安装手册
转自http://www.igoy.in/simplescalar-installation-made-simple/:SIMPLESCALAR INSTALLATION MADE SIMPLEPrefaceThe following text describes the procedure of installation of Simple Scalar on转载 2012-11-06 18:37:05 · 2784 阅读 · 0 评论 -
Building GCC as a Cross-compiler for Simplescalar/Alpha
转自:http://hpc.serc.iisc.ernet.in/~sree/resources/building-cross-gcc-for-simplescalar.html 原链接已经失效Building GCC as a Cross-compiler for Simplescalar/AlphaNOTE: The instructions on this page ar转载 2012-03-21 22:57:35 · 2572 阅读 · 0 评论 -
libdwarf编程举例
1. 本文件基于libdwarf的例子simplereader.c修改,用于从具有dwarf格式的调试信息的二进制文件(gcc使用-g编译)中读取各符号(包括函数符号和数据符号)的地址、大小等信息。/* Copyright (c) 2009-2010 David An原创 2011-10-04 10:47:11 · 4989 阅读 · 3 评论 -
SVN服务器及客户端的简单使用
转自 http://www.codeproject.com/KB/winsdk/SubversionOnWindows.aspxIntroductionSubversion is an Open Source version control sys转载 2011-10-14 11:20:38 · 1004 阅读 · 0 评论 -
编译器对数据的分配
注明: 以下结论的可靠性不予担保。1. 实验方法给出两个C++源代码文件,主要文件如下,辅助文件定义了全局变量g_ext, g_ext_ini。#include extern int g_ext;extern int g_ext_ini;int g_a=原创 2011-07-29 00:54:52 · 982 阅读 · 0 评论 -
Simics配置
从同学那获得了一个Simics,需要在自己的机器上配置。在同学的帮助下,终于可以在自己的电脑上配置。1. 我的notebook是64位的,而同学的配置是在32位机器上的。所以,首先需要选择64位版本simics进行安装。2. gcc_4.2.0 not found err原创 2011-08-09 18:40:48 · 2212 阅读 · 0 评论 -
LLVM笔记1:static profiling
1. 有时需要在编译器中使用static profiling来获取程序的信息,比如指令的执行次数,各分支的执行频率等。[1]提出来用于估计分支频率的启发式,[2]综合了[1],提出了用于估计分支频率以及指令执行频率的静态方法。2. 在llvm中,已经有现成的static pr原创 2011-08-04 17:29:53 · 1289 阅读 · 3 评论 -
寻找libdwarf
1. 因为需要得到程序中,地址到符号的映射信息;而Pin只提供函数符号的信息,不提供其它符号,比如数据符号的信息,所以需要访问目标文件的调试信息。2. 在Pin的讨论组中,发现需要libelf和libdwarf来访问其它符号。据论坛所说,libelf访问任意ELF文件的符号信息(原创 2011-07-25 21:41:51 · 4108 阅读 · 4 评论 -
libdwarf的使用
例子来源于libdwarf的发布版本,可以参考例子前面的版权声明。我加了部分注释(原有注释用/**/,我加的注释用//)./* Copyright (c) 2009-2010 David Anderson. All rights reserved. Redistri原创 2011-07-27 23:58:03 · 6251 阅读 · 0 评论 -
Pin学习笔记2
<!-- BODY,DIV,TABLE,THEAD,TBODY,TFOOT,TR,TH,TD,P { font-family:"Liberation Sans"; font-size:x-small } --> 粒度操作解释InstructionINS_Memory原创 2011-07-25 13:43:16 · 3611 阅读 · 1 评论 -
Pin学习笔记1
类似于valgrind,pin也是一个用于编写动态分析程序的框架。Pin由Intel负责,因而貌似更加强大。Pin支持的Linux二进制,包括IA-32,Intel-64,Itanium等处理器;支持的windows二进制,包括IA-32和Intel64;支持的MacOS二进制,原创 2011-07-23 22:21:22 · 4717 阅读 · 0 评论 -
调试信息格式(Debugging Format)简介
1. 实际使用中,多种调试信息格式,stabs, COFF, PE-COFF, OMF, IEEE-695, 以及DWARF。2. stabs stabs取名于symbol table strings,因为开始的时候,调试信息是以字符串的形式存储在Unix的a.out翻译 2011-07-25 11:25:07 · 5539 阅读 · 1 评论 -
dynamic profiling
1. Dynamic profling的效果,受到源代码、编译器选项以及运行的目标平台地影响。2. Dynamic profiling所使用的方法包括:Event-based profiler,包括Java的JVMTI等。Statistical profiler,利用OS中断功能翻译 2011-07-21 19:39:10 · 835 阅读 · 0 评论 -
llvm中如何利用分支概率和基本块频率估计
1. 背景llvm自2.9版以后,已经集成了对分支概率和基本块频率的静态分析。分支概率(branch probability)是指在程序的控制流图中,从控制流从一个基本块A到其任意后继基本块Si的概率。控制流从基本块A到其所有后继基本块的概率之和为1. 基本块频率(block frequency)原创 2013-08-09 11:06:31 · 2709 阅读 · 0 评论