- 博客(12)
- 收藏
- 关注
原创 Mac下Latex中文字体配置
查看现有的中文字体$ fc-list :lang=zh将Windows的C:/Windows/Fonts下的sim*字体拷贝到Mac下。更新系统字体$ sudo fc-cache -fv重新用fc-list查看现有字体,修改ctex-xecjk-winfonts.def中相应的“宋、黑、楷”体。sudo vi /usr/local/texlive/201
2013-03-12 00:25:14 3445
原创 监测程序内存使用大小的脚本
有时候程序的运行规模受限于内存,所以监测程序内存的使用也是一件很必要的事情。常见的做法是用top盯着看,或者用free -m来打印当前系统内存使用情况。这里提供一种更好的方法是用ps -o rss。脚本如下,使用方法是:./check_mem.sh #!/bin/bashINTERVAL=2echo "check memory usage of $1 for every ${I
2013-03-01 01:53:20 716
原创 使用Valgrind调试MPI代码
基础知识:Valgrind, MPIMPI程序很难调试,因为缺少好的调试工具,大多数时候只能用printf来打印错误。在所有的可能的程序bug中,内存错误无疑是最常见的错误,没有之一。在单个进程运行的时候,可以用Valgrind来检查,但是如果是MPI程序呢?答案是也可以!最近一次调试自己的程序才发现,Valgrind已经支持MPI了,通过对PMPI_*的封装,检测MP
2013-02-06 23:34:39 1987
原创 编程之美-队列中取最大值操作问题
/* * Usage: * ./stack_queue <input.txt * * input.txt: * 10 3 4 1 7 */#include#include#includeusing n
2012-10-03 10:41:12 163
原创 学习BlueGene/Q优化Graph 500
今年6月的ISC'12上,IBM的BlueGene/Q系统以领先第二名7倍性能的成绩摘得Graph 500排行榜第一。事隔不到一个月,在ICIS Workshop上,他们又把性能提高了1.27倍。——这帮疯子!里面(Fabrizio Petini etc. al., ICIS Workshop slides)用到了一些优化的手段我还是第一次见到:Non-blocking col
2012-08-28 13:46:22 648
原创 调试MPI打印代码
调试MPI程序主要靠打印。如果使用printf,所有的输出都是stdout,不易辨认。把不同rank的log打印到不同文件使得log更清楚,通过fprintf实现。#include "mpi.h"#include #include int main(int argc, char **argv){ int rank, size; MPI_Init(&argc, &arg
2012-08-24 15:13:50 680
原创 MPI_Alltoall使用备忘
MPI_Alltoall发送接收的长度都是本地的长度,而不是接收队列的全长MPI_Alltoall示意图:另外,MPI_Alltoallv则需要用int *sdispls和int *rdispls两个数组指定发送接收的位置。
2012-08-24 10:03:11 766
原创 《Algorithms in a nutshell》读书笔记:第一章
虽然读这本书是因为要准备面试,但是学到的远远不止于面试而已。当我下了随书的代码后,我惊讶于所有的代码都可以运行、测试,甚至自动画出性能图。实验下载书中的代码svn co https://nutshellalgos.svn.sourceforge.net/svnroot/nutshellalgos nutshellalgosubuntu下实战步骤
2012-08-22 16:52:01 177
转载 Splitting of MPI communicators
有时候为了创建2D的拓扑,需要对MPI_COMM_WORLD进行划分。所使用的MPI函数是:MPI_Comm_split(MPI_Comm comm, int color, int key, MPI_Comm *newcomm) 例子程序(出自MPI Groups, Communicators and Topologies):#include #include m
2012-08-15 10:44:02 1461
原创 LMAX架构
LMAX是一种新型零售金融交易平台。它必须在很短的延迟内处理大量的交易。按照Martin Thompson在QCon 2010上公布的数据[1],它可以每秒处理100,000个事务,每个事务的延迟不超过1毫秒。整个系统的核心是一个业务逻辑处理器。LMAX is a new retail financial trading platform. As a result it has to pr
2012-07-14 09:42:32 240
原创 LMAX架构
Martin Fowler已经有一篇文章讲了LMAX的架构,以他这篇文章为基础,说一些对这个系统的理解。为什么使用单线程来处理?在这个系统上是否能够进一步改进吞吐率?
2012-07-07 16:22:13 73
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人