- 博客(19)
- 资源 (2)
- 收藏
- 关注
原创 怎么理解这样一种编程思路
在自然语言处理中有经验主义和理性主义两种思想,以后博文中再行介绍,通过这个例子,我们可以将第一种类型看做是1阶情况,而第二种类型看做是2阶情况。这个话题就写到这里,以后还会继续深入讨论。
2010-10-30 17:01:00 1202 3
原创 linux编程的108种奇淫巧计-4(编译展开)(续)
编译展开的这篇博客被CSDN推了首页http://blog.csdn.net/pennyliang/archive/2010/10/28/5971059.aspx,有些读者反映有些太难,考虑到有些地方没有讲得太清楚,本文一并进行深入讨论。
2010-10-30 09:09:00 4023 11
原创 linux编程的108种奇淫巧计-4(编译展开)
今天继续介绍第四种常见技巧,编译展开,代码如下: 我们知道对于循环编译器会自动进行展开的,但是如何展开,这完全不可控,如果自行展开,代码会显得臃肿难看,因此本为介绍了一种常见的方法进行这种代码展开,可以写到任意层次,我这里只写到了DO16。
2010-10-28 10:18:00 32985 46
原创 linux编程的108种奇淫巧计-1(FALSE SHARING)【续】
该文有很多网友回复,比较集中的看法是CPU字节对齐,巧合的是有一个朋友用这个代码做了测试,发现对齐和不对齐的代码执行的速度是一样的,原因是他的笔记本安装的linux操作系统,而笔记本是单核的,所以就出现了这个状况,如果和CPU字节对齐,在单核的情况下怎么会速度一样呢?另外如果是CPU字节对齐,把线程去掉,替换成两个函数依次执行,也应该有效率的差异,再说CPU字节对齐也不该在64字节上对齐,哪有这么牛叉的CPU寻址呢?
2010-10-26 12:40:00 11880 10
原创 用户日志生成策略之我见
鉴于有好友很感兴趣,我回答如下:这个问题是我曾遇到的一个问题,在做处理日志的时候,如果有过这方面的经验的同学应该会有感受,大致有以下三点
2010-10-26 10:55:00 3596
原创 linux编程的108种奇淫巧计-3(magic 2)
在我们编码的时候,编译器生成什么样的代码,往往我们是不清楚的,但一旦清楚了以后,我们就能利用这种性质来做一些优化,当然这种优化可能是有限的,但在累积的效应下,这些优化会显得很大,比如每天省1毛钱,省一辈子,也是一笔不小的开销。 我们来用一段简单的代码来说明这个问题,下面这段代码可能太平平无奇了,其中结构体test_1是3个字节,而test_2是4个字节,为了让test_2凑够2的倍数,特别加了一个padding字段。 因此我们得到这样一个结论: 1)在结构体大小的
2010-10-25 16:40:00 3965 2
原创 linux编程的108种奇淫巧计-2(RDTSC)
通常我们需要对程序运行的准确时间进行测量,但多线程,多核环境下,这变得很困难,我们有没有一种比较通用简单的方法来做到这一点呢?这些方法都存在哪些问题,如何改进可以抵消这些误差呢?
2010-10-21 12:42:00 7400 14
原创 用户日志生成策略,哪个方案好?
假定我们有1亿用户的访问日志数据,每个用户在每天的日志中都可能有浏览信息,也可能没有;每天的日志是按时间顺序生成的,每个用户浏览的时间确可能跨度很大,例如一个用户的浏览行为在日志的第1,100,10000行上进行了记录。现在我们需要将该日志转化为一个以用户ID为关键码,用户在该天的浏览历史做值的这样一个日志,并且要求当输入用户ID和指定时间段(最多为3个月),那么该用户日志该如何生成?这里给三个方案: A:单表策略,为主关键字,为值,任何搜索都只需对表做一次操作。 B:多表策
2010-10-19 16:59:00 2033 8
原创 邓亚萍来我们实验室调研工作
邓帅上任伊始,就开始进行搜索引擎相关工作的调研了,十分低调。 考虑到有一段时间过去了,公布一条消息,供大家参考,有图为证。 http://www.thuir.cn/cms/index.php?mact=News,cntnt01,detail,0&cntnt01articleid=31&cntnt01returnid=50 希望人民搜索在邓帅的带领下,蓬勃发展。
2010-10-18 18:29:00 2800 1
原创 Web Server 架构浅谈-Staged Event-Driven Achitecture(SEDA)
讨论Staged Event-Driven Achitecture的相关要点,SEDA是目前比较推崇的WEB架构,是本系列的精华,前面的铺垫都为了来说明这个架构。
2010-10-15 15:44:00 4816 11
原创 Web Server 架构浅谈-Simple Event-Driven Achitecture
主要关于Simple Event-Driven Achitecture的讨论,并附带了上两次博文的一个延续分析。
2010-10-14 14:07:00 10477 8
原创 听工程院院士柳百成报告有感
每周三是我们的《现代科学技术革命》课程,在清华的建馆报告厅,600名来自各院系的博士生齐聚一堂,来讲课的都是国内外著名学者。
2010-10-13 16:35:00 1910 4
原创 Web Server 架构浅谈-Threadpool-based Multiple Threaded Achitecture
上节我们讲到了简单的多线程架构,这个架构可以做一些改进和优化: 本文就基于线程池的多线程架构进行讨论。
2010-10-12 16:39:00 2338
原创 Web Server 架构浅谈-Simple Multiple Threaded Achitecture
Web Server的架构基本分为多线程和事件驱动两个基本观点,在实现上对多线程和事件驱动取长补短形成了流水线的架构。
2010-10-10 12:48:00 3550 6
原创 基于google搜索来给出美国大学计算机系排名的方法
<br /> <br /> 今天看了一个短文挺有趣的,用搜索引擎来给美国大学计算机系做排名。<br /> <br /> 看来搜索引擎已经渐渐成为一个可信任的知识库,而这种结果的相关性,权威性,可以被借用来做一些商业排名,评价。<br /> <br /> 这是一个很好的思路,搜索引擎应该慢慢会成为一些数据基础服务,而不仅仅是查询单条或若干条相关结果,其使用形式是多种多样的。<br /> <br /> 推荐阅读:http://pages.cs.wisc.edu/~
2010-10-01 21:44:00 1357 1
Topology-Calculation-Tuning本学期一份组内报告
2011-01-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人