きょうは友達と一緒に日本のカラオケへ行きました

参加各种唱歌大赛,到日本了也不例外。又报名了筑波大学中国留学生会的春节卡拉OK大赛,所以今天一行10来人去附近的一个KTV唱了一把,感觉还挺好的。

其实很久就想去KTV了,就是没有搞清楚形势,所以一直也没去。今天去了,还是挺让我意外的,KTv的布局,和中国还是很像的,就是点歌比较先进,是用一种掌上点菜机的那种设备,无线点播。首先是竟然有中文歌,虽然有点老,但是新的,流行的也还是有的嘛,比如周杰伦的花海。然后就是有点雷的,歌词是中文,但是上面用日语标注了日语拼音,很恶搞。MV呢,全部都不是原版的,都是日本自己拍的一些风景,或者是根据歌词背景改编的故事,不过拍的还挺好的。最后来说说感受吧:在这里又认识了一群中国人,虽然之前大家都不熟,但是经过唱唱歌,也就都认识了,音乐无国界嘛,何况本来就是一个国家的人。中国人在外面还是很团结的,不管是年龄大小,还是来自的学校,省份。我基本上算是最小的了,但是他们也很照顾我,虽然我也不太让他们照顾,往往是我“照顾”他们,比如大厨啊,比如带路啊,哈哈。

生活慢慢趋于稳定,马上就要过年了,昨天拍月亮的时候想家了。祝大家新年快乐,Coming back Home soon…

Wavefront algorithm Optimization

接触到了一种新的依赖解决算法问题,英文叫做wavefront algorithm,中文好像叫波前算法吧。大体思路是,对于一个X*Y数组结构的数据,当运算依赖关系是从西北角开始运算,直到覆盖所有的表项,得到最终结果的时候。每一个运算单元,都必须依赖其西,西北和北边相邻的数据才能开始运算时,其运算方式如同水波一样,逐层前进。

如下图模拟,数字增长,表示随着时间推移,运算的顺序:从1-》2-》3-》 -》7结束,完成整个数据的运算。

1 2 3 4
2 3 4 5
3 4 5 6
4 5 6 7

继续阅读“Wavefront algorithm Optimization”

爆笑的日语课

日语课永远都是那么搞笑,今天也不例外。

今天日语教方位词,上下左右前后,然后老师就开始手舞足蹈,首先是自己在那一边比划一边说,然后到让我们全部站起来,指挥我们,像做早操一样,还是蛮好玩的。

接下来到了实战时间,老师开始把自己的东西到处藏起来,然后我们,老师的XX东西在哪啊,真是辛苦了老师啊。又是脱外套,又是藏书,在教室里跑来跑去的。更搞笑的是为了练习鞋子这个词,老师直接把高跟鞋脱了放到电视机上去了,又是一阵全场爆笑啊。不过上完一堂课,回想起来,这种教法效率真的很高,词汇啥的全部都记住了。

还有那个让人弄不清的あります います一个是说没有生命的东西,一个是有生命的东西。每次我们反应不过来,把一个人,说あります、老师就会大叫,啊啊,不行啊~

以前还有一些搞笑的事情,比如学生总在问,老师,这个词是啥意思,在书上找不到,老师默默地答:一个人的名字。。。

想起来了再补上,这么说,好像不是那么搞笑,实际的课堂上,真是肚子都要笑疼了。。。

Summary of this week

After reading the essays about recent research, the main parallelization schemes for optimization on Cell Processor are: optimize the DMA transfer (single buffering, double buffering and multi-way buffering), optimize the implementation models (how to divide the whole data block into different piece and how to connect each program structures) and optimize the get/put methods (using some prefetch mechanism such as pseudo-result, asynchronous unsafe cache and software cache).

通过几天阅读的论文情况,基本上发现了几种加速并行处理的方式:优化DMA传输方式,缓冲,双缓冲和多重缓冲;优化实现的模型,拆分程序流到不同的SPE,不同的计算模型,会得到不同的实现效果;优化数据读取的方式,比如利用预读取,虚拟结果,和异步多流水线缓存和程序缓存的方式。

继续阅读“Summary of this week”

搞笑的日语课期中考试

      今天的日语课算是第一次正规的考试吧,算是期中考试。周末就随便看了看书,觉得确实没什么可以考的东西。然后背了单词,应该没有什么问题了。然后今天的日语考试,在这种全世界同学的环境下,确实是雷到我了。

      首先是考试的纪律,虽然说老师让我们把书都放到包里,座位也分开了,但是有很多同学东瞅瞅,西瞧瞧,更有把书直接摆在桌子上的,老师看到了,也是睁一只眼闭一只眼,说“不行啊,收起来哦,这是考试”。

      然后考试从听力开始,我的感觉,如果按照中国的听力,应该是像笑话里面一样:甲,A站上来2个下去4个,B站上来9个下去2个,C站我下去了,最开始有9个人;乙问,甲坐了几站。但是日语的听力考试,竟然直接报数字,然后选。再就是一个人在那自言自语,说:我是韩国人,京都大学学生,专业是计算机。然后我们就选:韩国,京都大学,计算机。是不是太NC了,打击我们智商呢。。。但是还是有很多同学抓耳挠腮,不得其解,哎,看来中国的学生真的是身经百战,个个都是考试王啊。

      最搞笑的就是最后一个题了,是一个这样的表格:

1 A
2  
3  
4  
5  
6  

 

然后表格下面有 A-F,6个选项,然后大家就开始疯狂的提问,这个是什么意思,这个要怎么做,然后老师也很无奈啊,把例子播了3-4遍,终于,伊朗叔叔明白了:oh, i see, i see。引得我们全场爆笑,老师都快受不了了,哈哈。

      整个考试下来,都是在一种很轻松的气氛下进行,很过瘾,不知道这个是日本的风格呢,还是我们的这个日语阶段太简单了,但是虽然很搞笑,这种考试的方式我还是挺喜欢的。不知道中国的监考老师看到了,会不会气疯掉。额。。。

      做饭吃。。。

需要考虑的几个问题

1.是需要在SPE上实现E-3里面那种数据驱动的几个SESSION的驱动方式,还是直接用SPE本身的调用方式来进行数据的采集和计算?
2.是针对所有的算法,还是所有的图形算法,还是一种算法进行加速?从理论上来讲
3.在写论文的时候,应该是采用对一个图形算法进行加速,可以用到的有FFT,POI,HIS,JPEG等等。
4.改变一个算法的算法模式是很重要的,可以选择Pipe或者Register Rotation方式。

设计的思路:
首先要寻找这些算法的一些共同点,然后想怎么分配任务到SPE,哪些是可能或者需要缓存的东西。怎么样用数学的方式来表达这些东西。
然后就是选取怎样的编程模式,真正实现一个东西,进行测试
最后是怎样得到测试数据。写论文。

后续任务:调查图形算法的共同点,以前人怎么优化过。

阅读论文和实践小结

第六次和山口老师会面,主要说了一下我对最近工作的进展情况的感受,和我了解和学习到的IBM CELL处理器相关编程知识。感觉后续的任务还是很艰巨的,有很多文档要阅读,很多论文要看。因为这些东西都是自己以前从来没有接触过的,基本算是要从最 底层原理,到接口文档,到实现,都要自己来干,除了仅有的C++还是有LIB扩从的。周围有没什么人好讨论的,好在老师英语还不错,所以这个毕业设计还是 很锻炼人的。不管是从英语水平,阅读论文,独立解决问题,从理解完全不知道的东西,到读文档,看SDK,看实例代码,配置环境,跑代码,写代码。相信会很 有收获的。 继续阅读“阅读论文和实践小结”

DATA-DRIVEN MACHINE

Basic knowledge
LISP: LISt Processor. It is a function language for the list.
Data-driven machine: different from the old machines. It execute with the data flow.
Pseudo-result: not a actual-result but can be used in the next function as a semi-result.
Processing element: the basic unit of processing. We often call it PE.
Lazy uation: uation of a computation is delayed until the following computation requires the actual argument values.
A new control mechanism: use a data-driven architecture (one of non von-Neumann computers) to exhibits full potential for parallelism both in hardware and software.
Parallel: Divide a program into different piece and execurate in serval processing element at the same time. To do so, we can accelerate the speech of processing time and use the time and space wisely.
Semi-result: A cons operation include a pseudo-result or a semi-result
Actual-result: result with the real data after execurating.
Packet oriented architecture: data transference between each section in a PE is done by a packet in a pipeline manner as well as between each PE
Pseudo-result lifetime: a time interval from the time when a new pseudo-result is created, to the time when the value of the result becomes actual-result.

Details of it

First section, the organization of the data-driven machine is described.
Function uation scheme –
to achieve eager uation with pseudo-result, allows some degree of overlapping of computation.
Machine Organization –
multiprocessing system with a number of identical PEs in wich each PE is connected via a packet communication network. 继续阅读“DATA-DRIVEN MACHINE”