解决方案 »
- 取得dataset的值赋给字符串???
- mobile 发送邮件功能
- C#中的计算问题
- 如何创建'母版'对应的'内容页'
- 如何改变treeview某个结点的字体颜色
- 在webfrom中如果datagrid中没有记录行特别高,如何解决?多谢了
- 在web项目里怎么才能使用Listview?有这种类似的控件么?
- 哪位高手给小弟编个画图的程序
- 那位兄弟有《C# WEB服务---使用.net remoting 和asp.net创建WEB服务》的书的原码呢???
- 有人能回答这个小问题吗?在线等,有了答案马上给分!
- 怎么格式化这种XML?
- C#中Socket.RemoteEndPoint强制转换成IPEndPoint后,得到的port到底是什么呀????
vb6是根本不支持线程的,只支持默认的sta线程切换模型,睁着眼睛骗外行时才会说“vb6是因为采用了多线程所以比vc6慢”。
vb6是根本不支持线程的,只支持默认的sta线程切换模型,睁着眼睛骗外行时才会说“vb6是因为采用了多线程所以比vc6慢”。我不懂sp1234的意思,是讽刺我还是什么,我没说这个话的 "vb6是因为采用了多线程所以比vc6慢;
Core i7的运算能力才50Gflops
而现在一块中低端的GTX660,运算能力都超过了1.5T(1500Gflops),是CPU的30倍以上。而且图像是天然地适合GPU运算的东西。推荐lz研究下GPU的加速。比如Cudafy http://www.codeproject.com/Articles/202792/Using-Cudafy-for-GPGPU-Programming-in-NET
sp1234我对多线程的理解还很原始,我那段话的意思很多也是我的臆想,我原本的意思就是: 在单核的情况下,对于图像的算法本身,用多线程去实现,仅仅从速度上考虑,应该不会有提高。那么这样同一样一个算法,由于VB6的程序一般都是单线程的,速度上也就不会比VC差多少,即使VC是使用多线程编码的。 但是这种情况在多核的机器下就不同了。
正如有人所说,并行可以说是GPU的天下,若是想把图像处理效率有数量级的提高,
GPU则是很好的武器
NVIDIA的的CUDA可以看下,
以前做医疗影像的时候,算法部的同事,将灌注的同一算法移植到GPU上,效率提高了5倍,而且还是在没有怎么优化的情况下
这本书我上大学的时候看过,amdahl定律被叫做悲观定律,后面还有一个乐观定律,就是并行计算可以大大扩展运算的规模,结果是,串行的部分在运算中的占比随规模的扩大会越发无足轻重,因此总体说来,并行计算可以无限提高计算性能。
举个不是理论的例子来看看。
用纯c++去写一个csdn网站试试。
举个不是理论的例子来看看。
用纯c++去写一个csdn网站试试。CSDN好复杂!
我记得我读书的时候是如是理解,并行是需要真正意义上同一时多通道刻执行同一任务。而线程可以看做是一个并发,看起来像是同一时刻执行多任务,但是在执行单元小于线程数的时候,同一时刻执行的任务数只有执行单元的数量。我举个例子不知道对不对啊。
int a,b;
a=0;b=100;
for(int i=0;i<100;i++)//A cpu计算
{
a=a+1; //A cpu计算
b=b+100;//B cpu计算 这个地方可以交给另一个CPU计算。
}
a和b互相计算互不干涉。如果有两个cpu就可以单独计算。
多线程呢相当于
第一个线程只是执行A的。 两个上下文这个可以交给A cpu来计算
for(int i=0;i<100;i++)
{
a=a+1;
}
第二个线程只是执行B的。 两个上下文这个可以交给B cpu来计算
for(int i=0;i<100;i++)
{
b=b+100;
}
举个不是理论的例子来看看。
用纯c++去写一个csdn网站试试。CSDN好复杂!
尺有所短寸有所长。
我记得我读书的时候是如是理解,并行是需要真正意义上同一时多通道刻执行同一任务。而线程可以看做是一个并发,看起来像是同一时刻执行多任务,但是在执行单元小于线程数的时候,同一时刻执行的任务数只有执行单元的数量。我举个例子不知道对不对啊。
int a,b;
a=0;b=100;
for(int i=0;i<100;i++)//A cpu计算
{
a=a+1; //A cpu计算
b=b+100;//B cpu计算 这个地方可以交给另一个CPU计算。
}
a和b互相计算互不干涉。如果有两个cpu就可以单独计算。
多线程呢相当于
第一个线程只是执行A的。 两个上下文这个可以交给A cpu来计算
for(int i=0;i<100;i++)
{
a=a+1;
}
第二个线程只是执行B的。 两个上下文这个可以交给B cpu来计算
for(int i=0;i<100;i++)
{
b=b+100;
}你说的第一个叫指令级并行(ILP),第二个叫线程级并行(TLP)。注意,如果不使用线程,是不会将计算分摊到多个处理器上的——在两个不同的处理器上同步的开销远远大于指令并行带来的性能增益。