a*n
2 楼
问一下大家, 我485递交上去不到180天 公司内部换组 工作性质有大约40%-30%的变化
的话 请问 从规定上讲允许么
的话 请问 从规定上讲允许么
a*g
4 楼
同问
d*8
5 楼
http://nps.missouri.edu/nps_wiki/index.php/ECE4270-7270_-_Compu
我去年TA的一门课,看Lab部分的slides和实验
有不懂的可以问我。。
涉及到的变成模型有pthread, OpenMP和CUDA
希望能帮助你
我去年TA的一门课,看Lab部分的slides和实验
有不懂的可以问我。。
涉及到的变成模型有pthread, OpenMP和CUDA
希望能帮助你
c*p
9 楼
挖,你真是大好人!
谢谢!
【在 d******8 的大作中提到】![](/moin_static193/solenoid/img/up.png)
: http://nps.missouri.edu/nps_wiki/index.php/ECE4270-7270_-_Compu
: 我去年TA的一门课,看Lab部分的slides和实验
: 有不懂的可以问我。。
: 涉及到的变成模型有pthread, OpenMP和CUDA
: 希望能帮助你
谢谢!
【在 d******8 的大作中提到】
![](/moin_static193/solenoid/img/up.png)
: http://nps.missouri.edu/nps_wiki/index.php/ECE4270-7270_-_Compu
: 我去年TA的一门课,看Lab部分的slides和实验
: 有不懂的可以问我。。
: 涉及到的变成模型有pthread, OpenMP和CUDA
: 希望能帮助你
c*p
10 楼
你这个好难阿!
【在 d******8 的大作中提到】![](/moin_static193/solenoid/img/up.png)
: http://nps.missouri.edu/nps_wiki/index.php/ECE4270-7270_-_Compu
: 我去年TA的一门课,看Lab部分的slides和实验
: 有不懂的可以问我。。
: 涉及到的变成模型有pthread, OpenMP和CUDA
: 希望能帮助你
【在 d******8 的大作中提到】
![](/moin_static193/solenoid/img/up.png)
: http://nps.missouri.edu/nps_wiki/index.php/ECE4270-7270_-_Compu
: 我去年TA的一门课,看Lab部分的slides和实验
: 有不懂的可以问我。。
: 涉及到的变成模型有pthread, OpenMP和CUDA
: 希望能帮助你
d*n
11 楼
先从基本概念开始,什么是mutex,什么是semaphore,什么是spinlock,什么是
condition variable,什么是memory fence/memory barrier。什么是dead lock?什么
是live lock?什么情况下出现race?
让你写一个thread safe的写操作,你怎么做。
然后再往上,怎么实现thread safe的stack,queue?如何实现一个read/write lock?
如何实现一个atomic计数器?
再往上,例举一下memory model和编译器的影响...
【在 c********p 的大作中提到】![](/moin_static193/solenoid/img/up.png)
: 太难了。。。有啥好资料么?学了好多次也没学会,囧阿。。。。
condition variable,什么是memory fence/memory barrier。什么是dead lock?什么
是live lock?什么情况下出现race?
让你写一个thread safe的写操作,你怎么做。
然后再往上,怎么实现thread safe的stack,queue?如何实现一个read/write lock?
如何实现一个atomic计数器?
再往上,例举一下memory model和编译器的影响...
【在 c********p 的大作中提到】
![](/moin_static193/solenoid/img/up.png)
: 太难了。。。有啥好资料么?学了好多次也没学会,囧阿。。。。
t*t
12 楼
太多了,太多了。
会reader, writer buffer,知道点deadlock就足够了。
【在 d****n 的大作中提到】![](/moin_static193/solenoid/img/up.png)
: 先从基本概念开始,什么是mutex,什么是semaphore,什么是spinlock,什么是
: condition variable,什么是memory fence/memory barrier。什么是dead lock?什么
: 是live lock?什么情况下出现race?
: 让你写一个thread safe的写操作,你怎么做。
: 然后再往上,怎么实现thread safe的stack,queue?如何实现一个read/write lock?
: 如何实现一个atomic计数器?
: 再往上,例举一下memory model和编译器的影响...
会reader, writer buffer,知道点deadlock就足够了。
【在 d****n 的大作中提到】
![](/moin_static193/solenoid/img/up.png)
: 先从基本概念开始,什么是mutex,什么是semaphore,什么是spinlock,什么是
: condition variable,什么是memory fence/memory barrier。什么是dead lock?什么
: 是live lock?什么情况下出现race?
: 让你写一个thread safe的写操作,你怎么做。
: 然后再往上,怎么实现thread safe的stack,queue?如何实现一个read/write lock?
: 如何实现一个atomic计数器?
: 再往上,例举一下memory model和编译器的影响...
b*f
13 楼
Mark
r*g
14 楼
找个现成的单线程程序改,尽力优化。记得有谁说过学multi-thread五个阶段:第一阶
段发现多线程好用,于是到处都用;第二阶段发现需要lock,到处都synchronize;第
三阶段发现会死锁,会正确用lock;第四阶段进一步减少lock来加快速度;最高境界要
分析到cache,如何分配共享内存以减少隐蔽的false sharing。
要想写得非常好,有很长的路要走,比如多线程读数据,尽可能把数据放在一个内存
block,能够fit进cache line,这样读数据速度快;多线程写数据,则正好相反,最好
每个线程写自己的block,尽量分开不在同一个cache line。即使不是多线程写同一个
address,写同一个block也会造成隐含的false sharing lock,效率低很多。
段发现多线程好用,于是到处都用;第二阶段发现需要lock,到处都synchronize;第
三阶段发现会死锁,会正确用lock;第四阶段进一步减少lock来加快速度;最高境界要
分析到cache,如何分配共享内存以减少隐蔽的false sharing。
要想写得非常好,有很长的路要走,比如多线程读数据,尽可能把数据放在一个内存
block,能够fit进cache line,这样读数据速度快;多线程写数据,则正好相反,最好
每个线程写自己的block,尽量分开不在同一个cache line。即使不是多线程写同一个
address,写同一个block也会造成隐含的false sharing lock,效率低很多。
l*3
15 楼
mark, 感谢分享
b*d
16 楼
这个得mark
感谢分享
【在 r**********g 的大作中提到】![](/moin_static193/solenoid/img/up.png)
: 找个现成的单线程程序改,尽力优化。记得有谁说过学multi-thread五个阶段:第一阶
: 段发现多线程好用,于是到处都用;第二阶段发现需要lock,到处都synchronize;第
: 三阶段发现会死锁,会正确用lock;第四阶段进一步减少lock来加快速度;最高境界要
: 分析到cache,如何分配共享内存以减少隐蔽的false sharing。
: 要想写得非常好,有很长的路要走,比如多线程读数据,尽可能把数据放在一个内存
: block,能够fit进cache line,这样读数据速度快;多线程写数据,则正好相反,最好
: 每个线程写自己的block,尽量分开不在同一个cache line。即使不是多线程写同一个
: address,写同一个block也会造成隐含的false sharing lock,效率低很多。
感谢分享
【在 r**********g 的大作中提到】
![](/moin_static193/solenoid/img/up.png)
: 找个现成的单线程程序改,尽力优化。记得有谁说过学multi-thread五个阶段:第一阶
: 段发现多线程好用,于是到处都用;第二阶段发现需要lock,到处都synchronize;第
: 三阶段发现会死锁,会正确用lock;第四阶段进一步减少lock来加快速度;最高境界要
: 分析到cache,如何分配共享内存以减少隐蔽的false sharing。
: 要想写得非常好,有很长的路要走,比如多线程读数据,尽可能把数据放在一个内存
: block,能够fit进cache line,这样读数据速度快;多线程写数据,则正好相反,最好
: 每个线程写自己的block,尽量分开不在同一个cache line。即使不是多线程写同一个
: address,写同一个block也会造成隐含的false sharing lock,效率低很多。
相关阅读
周五VB能不能出,版主开赌盘吧我同事要组织“Immigration Reform Petition Delivery/Rally”关于换工作的时候保留priority date请教排期到了需要做些啥vb out soon求科普markup485过了180天 换了工作Job Order Has No Salary RangeNIW140 Approve 以后转行的问题Visa Lottery那边的人说VB已经出来了可以散了么family based出来了Combo card renew timeline来美八年,终于绿了这个修正案挺不错有關h 1b 的問題請教大家Guest Editor Needed友情提醒,人生有更重要的,等绿卡,平常心吧共和党恐怕不会让CIR通过政客都是绿茶婊