V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
meteor2013
V2EX  ›  问与答

弱弱的问: 如果是只有一个CPU的电脑,能做并行计算吗?

  •  
  •   meteor2013 · 2014-01-24 03:19:28 +08:00 · 3897 次点击
    这是一个创建于 3956 天前的主题,其中的信息可能已经有所发展或是发生改变。
    13 条回复    1970-01-01 08:00:00 +08:00
    clino
        1
    clino  
       2014-01-24 09:06:11 +08:00
    多核当然可以啦
    单核应该也可以吧,总是有一些如磁盘IO,网络传输等需要等待的,这时候可以切换到其他的线程或者协程去执行吧,不过这种在同一时间只会跑单个线程
    dialox
        2
    dialox  
       2014-01-24 09:20:12 +08:00
    能做,效率没有多核电脑高
    yangqi
        3
    yangqi  
       2014-01-24 09:39:39 +08:00
    多核的可以, 单核的就失去意义了
    a591826944
        4
    a591826944  
       2014-01-24 09:53:28 +08:00
    应该不能吧,只能在多个进程之间快速切换。。。
    meteor2013
        5
    meteor2013  
    OP
       2014-01-24 10:58:30 +08:00
    @a591826944
    @yangqi
    你们的意思是单CPU“不能”并行计算

    @clino
    @dialox
    你们的意思是单CPU“可以”并行计算



    我有点晕了。大家能不能举点例子来说明啊
    pright
        6
    pright  
       2014-01-24 11:00:48 +08:00
    并行和并发是不同的,单核没法并行
    clino
        7
    clino  
       2014-01-24 11:22:52 +08:00
    @pright 很巧,刚刚看到 @kwd98 发的 google 视频 http://v2ex.com/t/98004#reply89
    里面刚好说到这个:"Cocurrency is not paralielism", 我最上面说的应该是 cocurrency ,楼主说的应该是 paralielism.单核应该是没法支持paralielism即并行的
    kevinv
        8
    kevinv  
       2014-01-24 11:28:52 +08:00
    单核cpu可以并发,不可以并行;并行只能是多核和多cpu才能干的事情。
    kwd98
        9
    kwd98  
       2014-01-24 11:36:46 +08:00
    @clino @pright 其实Rob Pike专门搞了个演讲来区分二者之间的区别。图文并茂,简单易懂。
    视频:
    Slide: http://talks.golang.org/2012/waza.slide#1
    yangqi
        10
    yangqi  
       2014-01-24 12:56:48 +08:00
    @meteor2013 你说的单cpu如果是多核的就可以并行计算, 如果是单核的话就不行而且也没有意义
    dreampuf
        11
    dreampuf  
       2014-01-24 13:36:12 +08:00
    from @kwd98 给的slides:

    Concurrency is about dealing with lots of things at once.
    Parallelism is about doing lots of things at once.
    Not the same, but related.
    Concurrency is about structure, parallelism is about execution.
    Concurrency provides a way to structure a solution to solve a problem that may (but not necessarily) be parallelizable.
    luikore
        12
    luikore  
       2014-01-24 16:02:11 +08:00
    并行计算用那几个核哪有千核的显卡好使...
    lightening
        13
    lightening  
       2014-01-24 17:08:48 +08:00
    有 GPU 可以用 GPU 并行计算。单核 CPU 只能并发,不能并行。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1124 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 23:35 · PVG 07:35 · LAX 15:35 · JFK 18:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.