int pthread_create(
pthread_t *tid,
const pthread_attr_t *attr,
void*(*start_routine)(void*),
void *arg
); 继续阅读
作者归档:admin
pthread多线程编程整理(二)(转)
pthread多线程编程整理(一)(转)
13th meeting
13th meeting
1. Graduate work and essay title:
2. Open document: background, content, mechanism, tech
3. Task book: title, original data, goal, content.
4. Translate an essay about 2000 English words, 5000 Chinese characters.
5. Data Single Para
744 0.173 0.110
3600 5.600 1.300
6. Which one is faster? A[m][n] or A[m*n]
7. Which one is better? a[i] = I; or a[i~4] = i~4;
At the beginning, task book
Title:
Original document and data:
Mechanism:
Work content:
今天工作想到的一些东西
记录一下。
数据图表的测定,可以有的选择
1.不同spe个数,测得同一数据量的运算时间。
2.相同spe个数,不同数据量的运算时间。
3.是否将原序列作为数据包发送的运算时间。用不同数据量。
4.不同spe调度方式,测得的运算时间
你觉得,
1.矩阵用二维数组存储,进行计算和访问。
2.矩阵用一维数组存储,进行计算和访问,在访问的时候变换角标,比如a(i,j)=a + i*width + j , 类似于a[i,j]。
这两个方法哪个快,还是一样快。
那:
for(i=0;i<N;i++)
a[i]=b[i];
和
for(i=0;i<N;i+=4){
a[i]=b[i];
a[i+1]=b[i+1];
a[i+2]=b[i+2];
a[i+3]=b[i+3];
}
你觉得哪个快?
12th meeting
昨天忘记写了,今天补上。
大家都开学啦,虽然我的学期也算是完了,但是好像没有丝毫放假的迹象啊,这一次的持续学习时间真长了,从去年9月就开始了,一直要到今年6月吧。
年终于过完了,心情也慢慢变好了,开始计划回家的事情。
这个月争取和他们到北海道去滑滑雪,然后看什么时候再去一趟东京,还有富士山。
扯远啦,继续说毕业设计的事情,首先说说昨天开的会。
我成功地实现了上次设计的那些东西,然后用大到3000的数据测试了,能够到1倍多的加速吧。
今天的最新成果,在比较好的情况下,能够到4倍加速,这是一个令人高兴的消息,因为我还没有进行太多的优化。
昨天从山口老师那里知道,并行计算不一定能够加速的,而且随着程序本身的运行时间长短变化,越长的程序,可能得到加速的可能越大。
一般情况下,4-5倍是比较理想的情况。最梦幻的情况是几个处理器,达到几倍加速,但是那是不可能的,因为还有一些系统延迟,数据传输等等。所以6个处理器,4-5倍应该是比较好的结果了吧。
加速方案主要有:
1.一次传输更多的需要计算的数据
2.spu一次计算更多可能的数据,也就是说减少创建和销毁context,thread的时间
3.加速SPU计算,利用一些向量化,这个还没有考虑到。
现在已经实现的和还可以改进的:
1.一次传输最大可能的数据,但是我在想,应该是可以传输和传回不同量的,这样的话,传过去只需要传初始值就行,不需要将全部的数组传过去。
2.减少创建和销毁次数,现在已经减少到了最小,也就是6次。接下来要做的,是进行一些动态的优化调度,这个继续思考吧。
3.也就是向量化,这个是从前没有遇到过的。
今天加速的心得:减少线程创建,利用多线程的同步和互斥机制,防止死锁。昨天就是死锁了好多,晕。
然后传输是不是除了最简单的mfc_get put,还有更好点的。比如什么DMA双缓冲之类的。
继续努力吧,看见了曙光,哈哈~ 论文?!
我们终于还是长大了:
回忆,好像那么遥远。。。原来已经活过了这么久:
跳票王星际II终于beta了,笔记本原来三、四千就可以买到了,touch原来也可以做得那么大了。
“疯疯癫癫”的王菲都已经结婚生孩子了,又复出了,歌声依旧,但是脖子上的皱纹已经清晰可见了。
从小玩到大的表姐也要结婚了,也准备要生孩子了。
同学们都开始带男女朋友回家了,父母也开始主动谈这些以前都是禁忌的事情了
出来没半年,奶奶都说我胡子拉碴了,或许只有在他们眼中,我们才永远是孩子吧。
上上辈的亲戚们开始慢慢老去,外公也在这个春天来临前去世了,我都没能再看一眼。
以前的朋友们,有的开始挣钱养家了,有的还在学习,不同方向的我们开始思考以后的路。
小虎队也变成老虎队了,看着他们,看着台下的观众开心的样子,或许小虎队不属于我们这个年代,但是有一天,我们再听到五月天的《后青春的诗》的时候,我们应该也会有同样的感受吧。
二十二岁了,好在我还处于一个盼望长大的年龄,那就长大吧。
11th meeting
This week, I realised the waiting mechanism as I wrote last week. And ran on CELL BE machine.
I choosed the 8*8 data and devided it into 4 blocks. Single execute time is about 0.005s and the parallel time is about 0.010s. It means I still have a lot of work to do.
Go through the code I wrote again, I find out a lot of “for” and replacement, which may cause the delay of the execution.
10th meeting
1. First, analyze the algorithm parts and step, ex: point of interest algorithm consist of five parts, we divide it into 9 steps.
2. Program the spe, each spe can do the whole job, depends on the worknum sent to spe. Ex: the single CPU can do as in x86 model.
3. Define the partition and size of work. Ex: here we part the work into 8, so 8*9 steps need to be worked.
突然好想你
现在已经是农历虎年初一早上4:37了,躺在床上上网,听王菲的《传奇》,还是不想睡觉。在这种安静的环境下,昏黄的灯光,会让人变得更加感性。
过年的这几天,每天都不想睡觉,也不困,很奇怪。今天过年了,还挺HIGH的,睡到快中午才起来,然后一起去买了好多菜,准备晚上吃一顿大餐。下午去中国留学生会参加了新年会,自己包饺子,吃中国料理,然后还唱了一首歌。依然是那首《突然好想你》,在这种环境和氛围下,感情特别深,能够体会到那种突然间想到一些人的感觉。过年,想家,想朋友,无法避免的思念。
晚上5个人做了九菜一汤,然后开始看春晚,聊着天,吃着瓜子,时间就慢慢过去了。特别喜欢王菲的《传奇》和小虎队的几首歌,听到“只是在人群中多看了你一眼,再也没能忘记你容颜”时,心颤抖了一下,确实。每一个人走入你的生命,就会留下一些印记,久久不会离去。有些人可能只是过客,会突然的时候想起来曾经的一些人和事,而有些人,将会陪伴你的一生。
晚上1点,我们的小聚餐算是正式结束了,赶紧上QQ视频,SKYPE电话,飞信祝福新年。跑到校内发状态,看以前录的烟花的录像。在这个遥远的国度,心和家在一起,庆祝新年。快5点了,飞信上已经没有上线的好友了,QQ也安静了,但是不寂寞,不孤独,只是想静静地,躺在床上,听着歌,想念……