Conner's profile☆ Conner Wang ☆PhotosBlogListsMore Tools Help

Blog


    March 31

    写给25岁

        好多伟人在25岁之前就已经建功立业了,而我却还没有一点值得自己骄傲的资本呢。仍然还在校园的我该给自己的25岁写点什么呢?我不知道,我甚至都没有勇气去面对这个年龄。

        如果非要总结一下这25年来的收获的话,我现在还真想不出来。但有一点收获是肯定的,那就是这么多年来的人生阅历。感谢我所经历的辛酸苦辣,荆棘挫折,感谢亲情友情,感谢我周围一切的人和事。修炼了25年,从生活中学会了如何让自己去做一个正直而善良的人。孟子曰:“穷则独善其身,达则兼济天下。”不论将来是穷是达,一颗感恩之心不能变。

        值得欣慰的是我对自己的将来有了一个较为明确的定位。不管是对是错,至少我不再迷茫。

        抓住今年,好好修炼;期待明年,奋勇直前!

    March 30

    人不是死于疾病而是死于无知

        其实许多人不是死于疾病而是死于无知。

        联合国提出个口号:“千万不要死于无知”。

    March 22

    并行与分布式计算中的一些概念

        最近在看一些并行与分布式计算的一些书籍和资料,发现不同的文献对一些概念的描述并不是一致的。我就自己的理解汇总和整理了一 些想关概念。

    串行(Sequential)计算: 一个处理器依次执行指令,单就一个线程而言,本质上是串行计算的。
    并发(Concurrent)计算: 时分复用一个处理器,在单处理器上,分时、多任务操作系统采用并发计算的调度方法。
    并行(Parallel)计算: 空间复用多个处理器。

    Flynn分类法
    根据指令流和数据流的不同组织方式,通常把计算机系统的结构分为:
    (1)单指令流单数据流(SISD)
    绝大多数串行机属于该类型。
    (2)单指令流多数据流(SIMD)
    如阵列处理机,向量机。
    (3)多指令流单数据流(MISD)
    严格意义上来说没有相应的实现。
    (4)多指令流多数据流(MIMD)
    包括共享存储MIMD多处理机,分布式存储MIMD多处理机。

    并行计算机系统绝大部分为MIMD系统,如:
    (1)并行向量机(PVP, Parallel Vector Processor)
    (2)对称多处理机(SMP, Symmetric Multiprocessor)
    (3)大规模并行处理机(MPP, Massively Parallel Processor)
    (4)机群(Cluster)
    (5)分布式共享存储多处理机(DSM, Distributied Shared Memory)

    并行程序进程间通信的方式可分为:共享存储器方式、消息传递方式。
    对程序员而言,消息传递范例不如共享存储器范例那样有吸引力。于是就有了分布式共享存储器系统。在这种系统中,存储器物理分布在每个节点中,但是每个处理器使用统一的地址空间对整个存储器进行访问,从而隐藏了存储器是分布的这上事实。这样程序员就可以以共享存储的方式来写算法。

    我认为最好用一种库来支持并发性,并且该库不需要主语方扩展就能够实现。
                                                           --C++之父Bjarne Stroustrup

    C++并行与分布式编程标准:
    OpenMP 一种共享存储模型下编程标准。
    MPI(Message Passing Interface) 为超大规模并行计算机和工作站集群的高性能而设计。
    POSIX Unix编程标准。
    PVM(Parallel Virtual Machine) 是一个软件包,它允许一个异构计算机集能过网络连接在一起,使用起来如同一个单独的大规模并行计算机。
    CORBA 是分布式跨平台面向对象编程的标准。

    集中式处理系统: 某种处理任务被集中到一个处理单元上,系统为星型结构,一般只有一个核心处理单元;即使核心处理单元有双机备份, 也属于集中式处理系统。

    分布式处理系统: 某种处理任务被分解到多个处理器上(通常是较粗粒度的并行),系统为扁平结构,一般上层有一个控制中心,下层有多个 处理单元,通过下层多个处理单元的数量/功能扩展,来提高整个系统的处理性能。处理任务有两种分解方法:一种是同类处理任务的分解, 属于数量扩展;另一种是按功能不同进行分解,属于功能扩展;两种分解方法一般都混合使用。

        我个人认为分布式计算与并行计算的本质是一样的,或者说分布式计算是一种特殊的并行计算。从任务划分和消息的传递上,分布式计算都要比并行计算粒度要粗。有人说分布式计算是进程级别上的协作,而并行计算是线程级别上的协作,也有一定道理。

    参考:
    [1] 并行算法的设计与分析. 陈国良等 2002
    [2] 并行算法实践. 陈国良等 2004
    [3] Multi-Core Programming. [孟]Shameem Akhter [美]Jason Roberts著 2007
    [4] Parallel Programming Barry, Wilkingson Michael Allon 2004
    [5] Distributed Algorithms. Nancy A. Lynch 2001
    [6] C++并行与分布式编程 Cameron Hughes Tracey Hughes 2004

    March 21

    计算机体系结构中所指的并行性

    计算机体系结构中所指的并行性(Parallelism),是指计算机系统具有可以同时进行运算或操作的特性,包括同时性并发性两种含义。
        同时性--两个或多个事件在同一时刻发生。
        并发性--两个或多个事件在同一时间间隔发生。
    提高并行性的措施:
        时间重叠 如流水线技术。
        资源重复 设置多个硬件资源。
        时间重叠+资源重复 同时使用以上两种技术。
        资源共享 这是一种软件的方法,使多个任务按一定时间顺序轮流同时使用一套硬件设备。例如多道程序、分时系统。

    March 17

    长者风范

        我是一个立场分明的人,做事坚持自己的原则。我有我的主见,只要自己认准了的,就一定要做到。我知道做事不能拖泥带水,而要坚决果断。犹柔寡断,立场不坚定,于人于己都不利。

        虽然这些都是优点,但由于这些,我有时又好冲动,容易引起抵触情绪,给人的印像就是态度不好。

        做事要以达到目的为原则,但同时又要注意方法和态度,要把握分寸。如果两个人都是属于意气用事型的,那根本就无法交流,也就无法达成共识了。

        之所以说这些,是因为我觉得自己还是不够成熟,做起事情来还是不稳重。想起那天发生的事,感觉自己就像一个任性的孩子,是如此的顽固与不理智。总之,我对自己那天的表现很不满意。

        很幸运我遇到的是吴老师,一个能理解我的人。作为一名长者,能够放下架子倾听我一顿牢骚,自始至终都能保持温和的态度,没有一点架子,实属不易。

        今天吴老师语重心长的一番话,又使我受益匪浅。

        老太太胸怀宽广、乐观豁达、不拘小节,真正地体现了长者风范。

        真心感谢吴老师对我的理解,真心感谢吴老师对我的教诲!

    March 15

    韦德三十二法则[转载]

          不想练成肌肉男,只想练好身体,保持健康,仅供训练中参考。
    转自: 中国健美协会网

        虽然有不少健美运动导师提出这条或那条训练法则,并各具实效,但能够收集其大成,并通过实践不断深化而形成一套完整体系者,是被称为冠军训练者的乔·韦德。他这些法则也在不断发展中,到目前已发展成32条之多。由于效果都较好,适用于初,中,高各级训练阶段用,现介绍如下:

    (一) 初练者的训练法则

    1. 渐进性超负荷法则:增强任何健康素质的基础是使你的肌肉去担负比它已习惯的更重的工作,使肌肉承担不断增大的负荷。具体就是逐步提高重量与密度,但一定要有渐进性。
    2. 多组练习法则:对每个动作要进行多组训练,以使每一肌肉群都能彻底的锻炼。
    3. 迷乱莫测法则:也即:动作多变法则。是为了以避免肌肉的适应性,经常给肌肉以新的刺激。
    4. 孤立锻炼法则:对要发展的肌肉部位,要尽可能的,不借助其它部位,单独承受负荷来集中刺激肌肉。

    (二) 中级阶段训练法则

    5. 优先训练法则:对于身体的最弱或重点要加强的部位,采用安排在训练课的最前面,以精力,体力充足来完保证训练质量。
    6. 金字塔法则:即先用你一次能举起的最大重量的 60% 做上 15 次,随后增加重量,减少次数,直到你用 80%的最大重量做5--6次为止。
    7. 分部练习法则:把你的身体分为上下两面部或三部,对每部各采用更多的锻炼动作和组数,分别在不同的锻炼日来练。以增加锻炼的全面强度。
    8. 大量充血法则:使用几个不同的动作来刺激同一块肌肉,以增大血流量,集中刺激。
    9. 超级组法则:把起反作用的相对肌肉群接连一起来练,当练其中之一时,有利于另一部分的疲劳消除。这符合神精功能的原理。
    10. 复合组法则:把两个锻炼同一肌肉部位的动作接连进行,就称为复合组。
    11. 综合练习法则:为使整个肌肉细胞增大,需得对红肌白肌分别刺激。即增加耐力和负荷的承受力。
    12. 周期法则:全年锻炼的某一时期,都采用相同的训练法则,如此可利于休整,避免过度疲劳,保持稳步前进。
    13. 静力紧张法则:就是当你在做一个动作姿势时,不管是否使用重量,最后能静止不动,并保持最大张紧度3--6秒。这对增强神经对肌肉的控制很有好处。

    (三) 高级阶段训练法则

    14. “欺骗”法则:在做每一个动作时,按正确的姿势练到再也无力去做一次为止,然后采用不太规整的动作,或借助其它部位完成一两次的法则。
    15. 三合组法则:即对同一肌肉部位接连做三个不同动作,其间不休息。
    16. 巨型组合法则:把锻炼同一肌肉部位的5--6个动作连接着做,中间不休息。
    17. 先期疲劳法则:对不容易刺激的部位,采用先完成“孤立”动作,再做“基本”动作的法则。
    18. 休息--停歇法则:用增加每组间的休息时间来保证次次都在举最大限度的重量。这是增大体力兼增大肌肉块的训练法则。
    19. 顶峰收缩法则:在动作做到肌肉收缩最紧张位置时,持一下这种收缩状态。这能使肌肉线条更明显。
    20. 持续紧张法则:避免动作的“惯性“来缓慢完成动作,使肌肉持续紧张,肌肉线条会更加明显。
    21. 反地心吸力法则:在你的动作回复下落时,用力抗住所用重量的下降力。这种方法能使肌肉快速增长。
    22. 强挤次数法则:当做到再无力了时,让同伴帮上一点力来完成 2--3 次。
    23. 双分部法则:一天进行两次分部练习,练习不同的肌肉群。
    24. 三分部法则:一天的早上,下午,晚上各练一次,每次只练1--2个肌肉部位。
    25. “烧点”法则:当做完一组的最后一次时,再续做几次短而不完全的动作,这有助于肌肉围度和血管的增长。
    26. 质量法则:在规定的组数和次数进行锻炼时,逐步减少组与组之间的休息时间,这适于赛前锻炼。
    27. 渐降组法则:在一次动作中,当做到做不起了时,减一点重量又继续做下去,然后又减重量又做。
    28. 直觉法则:通过自已锻炼的感觉最适于自已的训练法则。这是每个健美运动员都有应掌握的最重要的一条。
    29. 兼顾法则:把孤立动作和基本动作在一个锻炼课程内训练的法则。
    30. 部分动作法则:用超负荷的重量来做动作全程的一半,使所锻炼的肌肉充分的得到大强度的刺激。
    31. 快速法则:以针对缓慢动作适应性的刺激肌肉法则。
    32. 交错穿插法则:在组与组间隙之间,插入锻炼其它部位的动作。是充分利用时间的一种方法

    March 10

    其实你们都不了解我,除了我妈妈

        吃完晚饭躺在床上回顾了一遍自己这25年来走过的路,觉得很是辛酸。想到自己的从前,想到爸爸妈妈,我蒙头大哭了一场。

        我想说,其实你们都不了解我,除了我妈妈。

        妈妈,谢谢你一直以来对我的支持与鼓励。是你支撑着我,也是我支撑着你。等我老了以后我一定要把你写在自传里。

        要珍惜,要让每一天都过得有意义,要让自己和周围的人都快乐!

    学会拒绝,学会说不,为什么会这么难

        学会拒绝,学会说不,为什么会这么难?

        今天在老板面前失态了,虽然最终她妥协了,但是很明显她很不高兴。自己有点内疚,但又觉得不得不这样做。

    March 05

    希望我是对的

     

        今天发生了好多事情,心情也好复杂。

        给老板说了好多心里话,不知道她能不能采纳,也不知道她会不会怪我。

        给鑫说了好多心里话,不知道他能不能听进去,也不知道他会不会怪我。

        想为自己做点事情了,不知道我能不能做得到,也不知道我是不是对的。

        希望能,希望不会,希望我是对的。

    March 03

    不在Degug中坠落,就在Debug中收获

        这几天用C语言实现了一个粒子滤波视频跟踪的程序,但是程序在初始化第一个新目标的时候老是有问题。昨天晚上,今天早上,一直到今天下午,我一直在Debug。最后终于找出了原因,原来是是第一帧图像没有进行颜色空间的转换。心情那个激动啊~!#$%^&*

        Debug虽然很痛苦,但只要你肯坚持,也会有收获。Debug对于锻炼一个人思维的缜密程度,极有帮助。同时也有助于使你养成良好的编程风格,有意识地避免编程误区。Debug是最考验人的耐心的事情之一了,虽然有时我真的很无奈~.~

        不过通过写这个程序,我发现Doxygen确实是一个非常方便的自动文档产生工具。只要按照它规定的注释语法来编写注释,程序写完了,文档也就写完了。而且对于注释和文档有不同步的地方,它还能提示警告。你再也不必担心程序修改了,而注释忘了修改。