这个问题问在了C#区,大家海涵第一个疑问:
  我现在用的是双核处理器,跑那种没做多核心处理的程序不会出现只有一个核心在工作的情况
  那说明操作系统已经分散处理了阿,那么我们为什么要自己处理多核问题呢?第二个疑问:
  是不是多线程就能发挥出多核芯片的性能?
  那么是不是猛开线程就行了?
  还是双核芯片最适合两个线程?三核就是三线程?第三个疑问:
  VS 2005 编译器有没有对多核心处理器上有优化?第四个疑问:
  有没有明确的方式指定某线程去某核心计算?应该是操作系统的事情吧?问题可能比较幼稚比较盲目,但是这都是我现在最内心的疑问,表达能力有限,兄弟们解答、探讨一下。

解决方案 »

  1.   

    不晓得,你去Intel区看看吧,那帮人天天在为快那么个0.0s而忙碌着,各种优化手段玩的不亦乐乎
    动不动就配置编译器
      

  2.   

    记得我笔试Intel的一道题就是xx在a机器上编译了一个最优程序,放到cpu不同的b机器上是否需要重新编译,为什么
    -_-#
      

  3.   

    Red_angelX(八戒) ( ) 信誉:100    Blog   加为好友  2007-05-09 16:00:04  得分: 0  
     
     
       记得我笔试Intel的一道题就是xx在a机器上编译了一个最优程序,放到cpu不同的b机器上是否需要重新编译,为什么
    -_-#
      
     
    --------------------------------------------------------------------
    这是不是就是 .Net Framework 的存在的一个因素?
      

  4.   

    这个应该是M$该烦的事... .net可是居于托管代码的~~
      

  5.   

    1、一个线程只能在一个核上跑。系统并没有做什么分散处理。
    2、在多核上用多线程性能会提高很多,但线程不是越多越好,像我以前用C++做IOCP的时候开的线程是(核数量×2+2)。
    3、这个没研究过。
    4、应用程序没有控制线程跑哪个核的权限,这是系统的工作。
    5、是的。
      

  6.   

    开太多线程会导致系统不得不消耗大量CPU资源用于调度线程。相应的被分到线程的CPU资源就会很少而导致性能下降。
      

  7.   

    1、一个线程只能在一个核上跑。系统并没有做什么分散处理。
    ---------------------------------------------------------------------
    那么一个进程开启了 2 个线程,这 2 个线程是否会分布在2个核心计算?2、在多核上用多线程性能会提高很多,但线程不是越多越好,像我以前用C++做IOCP的时候开的线程是(核数量×2+2)。
    ---------------------------------------------------------------------
    那个计算子线程数量的公式是不是最佳计算方法?
    x:核数量
    y:2  是什么?
    z:2  是什么?
    C:子线程数量
    C=x*y + z
      

  8.   

    我也想知道这个问题,如果我开一个线程不断的运行1+1,在我的机器上CPU每次只能占用50%左右
    在其他单核的机器上就是100%
      

  9.   

    假如我开2个子线程
    1个计算量很小
    1个计算量很大那么双核CPU会不会出现 1个核心基本没使用,一个核心100% ?
    这需不需要我来关心?
      

  10.   

    shanghaihaizi() ( ) 信誉:100    Blog   加为好友  2007-05-09 16:34:13  得分: 0  
     
     
       是不是杞人忧天?我要不要关心每个子线程的工作量?
      
     
    -------------------------------------------------------
    呵呵………………
    这个问题可是仁者见仁、智者见智啊。
      

  11.   

    shanghaihaizi() ( ) 信誉:100    Blog   加为好友  2007-05-09 16:49:23  得分: 0  
     
     
       主要是我现在有个软件有很大的数据处理量
    基本是10万人一个月的活动状况
    所以我很关心多核心的处理方式和效率
    我觉得如果我不能发挥出多核芯片性能的话,我会自责的
      
    -------------------------------------------------------------------------
    这样啊,建议用多线程分段处理。这样性能会高很多,但……线程不要开太多了!:)
      

  12.   

    wzd24(牧野)(衣带渐宽终不悔,为伊消得人憔悴)谢谢你啊,多谢你了