about 2 days ago - No comments
非关系数据库在现在网络以及一些特殊应用中逐渐被接受和认可,其中Kyoto Cabinet是其中的佼佼者。 Kyoto Cabinet是跨平台的NOSQL数据库,支持Linux/Windows等平台,可以以静态库或者动态库形式使用,遵循GPL协议。 Kyoto Cabinet支持多种数据存储方式,包括内存型与文件型。 内存型包括ProtoHashDB、ProtoTreeDB、StashDB、CacheDB、GrassDB,文件型包括HashDB、TreeDB、DirDB、ForestDB、TextDB。另外PolyDB可以动态绑定上述各种数据库形式。具体的规格参数以及性能可以参考官方文档http://fallabs.com/kyotocabinet/spex.html#features。 Kyoto Cabinet官方提供了makefile,可以直接在windows平台上编译。但由于使用了ISO C9x的标准,官方默认使用VS2010,如果使用vs2008编译,需要手动修改几个地方: (1) 补充stdint.h头文件(http://msinttypes.googlecode.com/svn/trunk/stdint.h) (2) std空间中的unordered_map,hash,regexsmatch等位于std::tr1空间 (3) 修改VCmakefile, VCPATH = C:\Program Files\Microsoft Visual Studio 9.0\VCSDKPATH = C:\Program Files\Microsoft SDKs\Windows\v6.0A 性能测试后续再补充。
about 1 month ago - No comments
2011年专业技术回顾-Q1 2011年专业技术回顾-Q2 2011年专业技术回顾-Q3 10. 2011年10月 国庆节只休息了3天,4号上班。 10月6日,乔布斯走了,一个传奇。 在9月的时候,有很多的进展。经过了地毯式的测试,有限元这一部分功能基本上完善,也很稳定。后面基本上是专题性质的专项计算的深入调优,包括了施工模拟分析、随机活荷载不利布置分析、局部人防模型分析,整体上不错。 其他的内容大体上有这几个,都做得非常好。 一个是上部结构刚度传递到基础计算中,这一块涉及到上部结构和基础两个模型的计算,我们做得非常巧妙,很智能。上部刚度的凝聚支持动态的凝聚参数判断,对于超大底盘的结构,能动态减少出口数量,在牺牲较小精度的条件下大量减少计算量。 在基础模型计算,也用了了很妙的机制,进行上部刚度矩阵凝聚结果的自动拆分为合适的MATRIX单元。 第二个是有限元程序自动支持进程内计算与子进程计算,可以混用。这样可以隔离一些管理和内存上的问题。两种模式下的进度log,数据管理等都完全不需要变化,这里又再一次很骄傲地受益于精良的程序架构。子进程方式下采用异步的log控制器,而且支持很先进的中断计算。 还有一个,在ICF中增加了一种模式,称为Transaction。 和经典的数据库一致,在开启Transaction后,读写性能会大幅度提高,而且Transaction是自治的,只需要开启关闭,其他的不需要有任何变化。 然后开始进行大规模题目的测试,上限已经达到100w自由度,很领先。 ——————————— 10月也是一个很好的月份,都很开心。 11. 2011年11月 这个月还是测试,测试,不提。 这个月又被要求加一个新的功能,基础计算中后浇带的模拟计算,很罗嗦。但是我们有先进的储备,死活单元+自动单元分组,很简单的处理就好了,抽象了一个局部模型分析出来,取名PartialModelAnalysis,很稳定。 然后还是继续改进,改进无止境。重构了下命令行参数的解析,定义通用的规则,后面的增加参数也不用逐个解析。 ICF逐渐成为了后处理的瓶颈,查到原因是频繁的缓冲交换,于是增加了一个多并发的Turbo模式,根据系统内存智能适应,效果很好。 目标总是一步一步被提高,从最初的要求能计算30w自由度,逐渐被要求到50w、70w、100w。而且随着多塔的要求,还要适应越来越多的振型。原先的有些设计是针对50w的优化设计,100w再加100个振型是不能承受之重。好在,谁让咱们的设计牛呢。加入内存映射,ICF同步支持,只需要局部的小量代码就可以了。 11月就这么多啰嗦事情。相对前两个月来说,这个月有时候并不是非常开心,难免有些低谷起伏,但是我是小强,我喜欢向前,喜欢努力,加油。 12. 2011年12月 资源是一点一点省出来的,就像钱要开源,更要节流。 除去优化之外,本月逐渐增加竖向地震的计算,这一部分由于以前糟糕的代码,加一点东西都会引入错误和不兼容。找到一个肯动脑筋水平又好的人真的很难很难。 由于Midas building和etabs的特点,本月决定把原计划下一版本的功能提前,就是根据振型参与质量来自动决断振型个数,Midas building的这个功能很赞,于是我们也有了。 ETABS的RITZ向量法在很多情况下会是一个比较好的手段,于是我们有了。 —————- 2011年要结束了,12月开心。 感谢2011。
about 1 month ago - No comments
在前一段时间考虑云服务的时候,大致整理了一个系统架构。只是业余工作,和公司工作无关。 借用了一下云服务的概念,目前通过服务端的程序为用户提供对应的数据服务。而整个架构是在满足工程计算方面的实际需求,而不进行过度设计。 1. 整体特点 UcoCloud架构如下图所示,主要包括web前端、Master主控服务以及一系列的Worker工作机。 UcoCloud以Master服务为核心,负责任务队列、调度以及Worker的管理,不涉及具体业务。这里的Master服务不同与Gate服务,如果后来业务需要可以增加Gate服务,从而支持多个Master。 Worker承担具体业务,可以不同类型,可以随时增加更多worker来增强计算能力。 Web前端只是一个Master服务交互的界面,与用户进行交互。 必要时可以增加专门的File Server。 2. Master服务 Master服务主要功能有3个,维护Task队列和Worker在线列表,同时负责Task的调度。Master采用简单授权,以JSON格式数据交换;Master建议用Python开发,为有状态服务。 任务队列 /Task 包括以下接口服务: •Add: 增加任务 (ROLE_USER) •View: 查看任务 (ROLE_USER) •Delete: 删除任务 (ROLE_USER) •List: 任务列表(ROLE_USER) •Result: 任务结果(ROLE_USER) •Get: 获取任务(ROLE_WORKER) •Update: 更新任务(ROLE_WORKER) Worker列表 /Worker 包括以下接口服务: •Register : 注册worker(ROLE_WORKER) •Exit : 退出worker(ROLE_WORKER) •Check : 心跳消息,获取任务列表 •调度器 /Scheduler •Update : 调度器更新(如果是有状态服务,应该自起线程自动维护) 关于调度机制: (主要涉及调度任务的分配、已分配任务的检测和重新分配等,待补充完善) 3. web前端 Web前端为Master服务的前端,Web前端不维护具体数据。Web前端从Master服务获取信息;Web与Master之间使用JSON数据交流。…
about 1 month ago - No comments
无聊的技术笔记: 环境:VS2008 sp1 调试机(A):win7 32bit 被调试机(B): xp 32bit 即在B机上运行程序,A机上进行调试。 ———————————— 最简单的步骤如下: B机上 (1) B机上的建立一个与A机当前账户相同的用户名,密码相同,管理员权限。 (2) 在B机安装rdbgsetup.exe,位于VS2008安装光盘上,选择对应的OS类型。 (3) 在B机上打开组策略(gpedit.msc),修改“网络访问:本地账户的共享与安全模式”,选择“经典-本地账户以自己身份验证” (4) B机上打开Remote Debuging Monitor A机上 选择Debug-Attach to Process Qualifier: 通过浏览找到对应B机。 注意 需要注意防火墙要对相关端口放行。 其他的就和本机调试一致。
about 4 months ago - No comments
早上在路上看到新闻,乔布斯走了,心中莫名的悲伤。 苹果网站上这么说的: 乔布斯是一个传奇,他或许放荡不羁,但是他的才华和创造性无人能及,他造就了苹果的神话,iPod的传奇、Mac的传奇、iPhone的传奇,这个世界上很难有谁可以说明没有受到他的影响。 桌上还有一本书《活着就为改变世界》,是的,只要活着,就要有追求,有梦想,有拼搏。 因为,我们活着。 —————————————- 今天的天气很好。我们都应该珍惜,因为我们活着。
about 5 months ago - No comments
云风从网易离职了-“离开,是为了新的开始”。 云风是我比较欣赏的一个人,他技术好,生活态度也很好。 从云风的博客里可以看到很丰富很精彩的生活,coding、旅行、攀岩,甚至是杭州开的桌游店。这种自由的生活也是我的期待。 云风是一个放荡不羁的样子,标志性的长头发。学生时代就写了一个不错的2d游戏引擎“风魂”,后面的高潮则是在网易的“梦幻西游”。 记得网易和新浪、搜狐一样,在互联网泡沫之后挣扎了很长时间,然后靠移动拯救活了下来。在后面网易则靠游戏实现了格局的转换,走到现在这种比较健康的轨道。这里面,梦幻西游功不可没。 云风对这段故事这样描述:“一个真实的故事,一个拥有数千万玩家的游戏诞生的故事。从毕业时的迷茫到《梦幻西游》的成功,五年的历程,一份回忆。有个系列的回忆录”,整理出来有21偏,叫《那些日子》。在开场有段话挺好“…… 最后我明白了,一切的一切不过是身外之物,我能拥有回忆中最美好的部分,那么已经是特别幸福了。” 云风在网易做了10年,给丁磊的辞职信是我这些年看到的最好的辞职信,没有之一。(全文见云风博客) 祝你好运! ——————————- 这么多年,一下子就过去了,难免唏嘘。像云风一样,很多的故事,没有终点只有永远,且行且珍惜。
about 2 years ago - 5 comments
各位观众: 由程序员组成的方阵走过来了,他们头戴绿帽,身穿绿色服装,手拿绿色鼠标,虽然他们面色憔悴,脚步蹒跚,那是因为他们为了客户,坚持不懈的努力改下去,但是我们可以看到,他们的内心是火热的,支持祖国经济发展的决心是前所未有的! 问候:程序员你们辛苦了!! 回答声响彻整个广场:为了客户死了都要改!!
about 2 years ago - 1 comment
72年前,宛平城的枪声打开了一段新的历史。 但是将这个事件从抗战那八年放大开去,前出到1921年,后延到1949年,会发现毛主席在接待日本首相,并说的那句“日本不需要道歉,我们应该感谢日本人”的确是毛的真心话。 抗日战争是中国民族的灾难,是刚刚走向新生的中华民国的灾难。但是它确实当时在陕北苟延残喘的CCP的救命稻草。利用抗日的形势,并借助西安事变,CPP从土匪转变为国民革命军,并利用国民政府的军饷大量扩充军队,同时对抗日指令消极应付,保存实力。最终在国民政府元气大伤之后,凭借着出色的宣传和酝酿夺取全国政权。 可以说,日本鬼子,缔造了新中国。虽然极端,但是情理。 当然,历史会是另外一种写法。因为千百年来,给统治者最大的历史教训就是:历史必须由自己来写,青可红皂可白。 谨以此,纪念七七事变72周年。
about 2 years ago - No comments
有风度、有涵养、有技术的q3a。 走好,大家会怀念你的。 http://news.sina.com.cn/c/2009-06-03/143017943251.shtml
about 2 years ago - No comments