久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

  1. <tfoot id='nU0Um'></tfoot>
      <bdo id='nU0Um'></bdo><ul id='nU0Um'></ul>

      <legend id='nU0Um'><style id='nU0Um'><dir id='nU0Um'><q id='nU0Um'></q></dir></style></legend>

      <small id='nU0Um'></small><noframes id='nU0Um'>

    1. <i id='nU0Um'><tr id='nU0Um'><dt id='nU0Um'><q id='nU0Um'><span id='nU0Um'><b id='nU0Um'><form id='nU0Um'><ins id='nU0Um'></ins><ul id='nU0Um'></ul><sub id='nU0Um'></sub></form><legend id='nU0Um'></legend><bdo id='nU0Um'><pre id='nU0Um'><center id='nU0Um'></center></pre></bdo></b><th id='nU0Um'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='nU0Um'><tfoot id='nU0Um'></tfoot><dl id='nU0Um'><fieldset id='nU0Um'></fieldset></dl></div>

      Python 多處理只使用一個核心

      Python multiprocessing utilizes only one core(Python 多處理只使用一個核心)

      1. <legend id='du3WJ'><style id='du3WJ'><dir id='du3WJ'><q id='du3WJ'></q></dir></style></legend>
      2. <i id='du3WJ'><tr id='du3WJ'><dt id='du3WJ'><q id='du3WJ'><span id='du3WJ'><b id='du3WJ'><form id='du3WJ'><ins id='du3WJ'></ins><ul id='du3WJ'></ul><sub id='du3WJ'></sub></form><legend id='du3WJ'></legend><bdo id='du3WJ'><pre id='du3WJ'><center id='du3WJ'></center></pre></bdo></b><th id='du3WJ'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='du3WJ'><tfoot id='du3WJ'></tfoot><dl id='du3WJ'><fieldset id='du3WJ'></fieldset></dl></div>

        <small id='du3WJ'></small><noframes id='du3WJ'>

          <bdo id='du3WJ'></bdo><ul id='du3WJ'></ul>
          <tfoot id='du3WJ'></tfoot>

            <tbody id='du3WJ'></tbody>

              • 本文介紹了Python 多處理只使用一個核心的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                問題描述

                限時送ChatGPT賬號..

                我正在嘗試使用 標準 python 文檔中的代碼片段來學習如何使用多處理模塊.代碼粘貼在此消息的末尾.我在四核機器上的 Ubuntu 11.04 上使用 Python 2.7.1(根據(jù)系統(tǒng)監(jiān)視器,由于超線程,它給了我八個內(nèi)核)

                I'm trying out a code snippet from the standard python documentation to learn how to use the multiprocessing module. The code is pasted at the end of this message. I'm using Python 2.7.1 on Ubuntu 11.04 on a quad core machine (which according to the system monitor gives me eight cores due to hyper threading)

                問題:盡管啟動了多個進程,但所有工作負載似乎都安排在一個內(nèi)核上,利用率接近 100%.有時,所有工作負載都會遷移到另一個核心,但工作負載從未在它們之間分配.

                Problem: All workload seems to be scheduled to just one core, which gets close to 100% utilization, despite the fact that several processes are started. Occasionally all workload migrates to another core but the workload is never distributed among them.

                任何想法為什么會這樣?

                Any ideas why this is so?

                最好的問候,

                保羅

                #
                # Simple example which uses a pool of workers to carry out some tasks.
                #
                # Notice that the results will probably not come out of the output
                # queue in the same in the same order as the corresponding tasks were
                # put on the input queue.  If it is important to get the results back
                # in the original order then consider using `Pool.map()` or
                # `Pool.imap()` (which will save on the amount of code needed anyway).
                #
                # Copyright (c) 2006-2008, R Oudkerk
                # All rights reserved.
                #
                
                import time
                import random
                
                from multiprocessing import Process, Queue, current_process, freeze_support
                
                #
                # Function run by worker processes
                #
                
                def worker(input, output):
                    for func, args in iter(input.get, 'STOP'):
                        result = calculate(func, args)
                        output.put(result)
                
                #
                # Function used to calculate result
                #
                
                def calculate(func, args):
                    result = func(*args)
                    return '%s says that %s%s = %s' % 
                        (current_process().name, func.__name__, args, result)
                
                #
                # Functions referenced by tasks
                #
                
                def mul(a, b):
                    time.sleep(0.5*random.random())
                    return a * b
                
                def plus(a, b):
                    time.sleep(0.5*random.random())
                    return a + b
                
                
                def test():
                    NUMBER_OF_PROCESSES = 4
                    TASKS1 = [(mul, (i, 7)) for i in range(500)]
                    TASKS2 = [(plus, (i, 8)) for i in range(250)]
                
                    # Create queues
                    task_queue = Queue()
                    done_queue = Queue()
                
                    # Submit tasks
                    for task in TASKS1:
                        task_queue.put(task)
                
                    # Start worker processes
                    for i in range(NUMBER_OF_PROCESSES):
                        Process(target=worker, args=(task_queue, done_queue)).start()
                
                    # Get and print results
                    print 'Unordered results:'
                    for i in range(len(TASKS1)):
                       print '	', done_queue.get()
                
                    # Add more tasks using `put()`
                    for task in TASKS2:
                        task_queue.put(task)
                
                    # Get and print some more results
                    for i in range(len(TASKS2)):
                        print '	', done_queue.get()
                
                    # Tell child processes to stop
                    for i in range(NUMBER_OF_PROCESSES):
                        task_queue.put('STOP')
                
                test()
                

                推薦答案

                嘗試將 time.sleep 替換為實際需要 CPU 的東西,您將看到 multiprocess 有效正好!例如:

                Try replacing the time.sleep with something that actually requires CPUs and you will see the multiprocess works just fine! For example:

                def mul(a, b):
                    for i in xrange(100000):
                        j = i**2
                    return a * b
                
                def plus(a, b):
                    for i in xrange(100000):
                        j = i**2
                    return a + b
                

                這篇關(guān)于Python 多處理只使用一個核心的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

                【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請聯(lián)系我們刪除處理,感謝您的支持!

                相關(guān)文檔推薦

                What exactly is Python multiprocessing Module#39;s .join() Method Doing?(Python 多處理模塊的 .join() 方法到底在做什么?)
                Passing multiple parameters to pool.map() function in Python(在 Python 中將多個參數(shù)傳遞給 pool.map() 函數(shù))
                multiprocessing.pool.MaybeEncodingError: #39;TypeError(quot;cannot serialize #39;_io.BufferedReader#39; objectquot;,)#39;(multiprocessing.pool.MaybeEncodingError: TypeError(cannot serialize _io.BufferedReader object,)) - IT屋-程序員軟件開
                Python Multiprocess Pool. How to exit the script when one of the worker process determines no more work needs to be done?(Python 多進程池.當其中一個工作進程確定不再需要完成工作時,如何退出腳本?) - IT屋-程序員
                How do you pass a Queue reference to a function managed by pool.map_async()?(如何將隊列引用傳遞給 pool.map_async() 管理的函數(shù)?)
                yet another confusion with multiprocessing error, #39;module#39; object has no attribute #39;f#39;(與多處理錯誤的另一個混淆,“模塊對象沒有屬性“f)

                  <small id='UWWiq'></small><noframes id='UWWiq'>

                  <tfoot id='UWWiq'></tfoot>

                    • <bdo id='UWWiq'></bdo><ul id='UWWiq'></ul>
                      1. <i id='UWWiq'><tr id='UWWiq'><dt id='UWWiq'><q id='UWWiq'><span id='UWWiq'><b id='UWWiq'><form id='UWWiq'><ins id='UWWiq'></ins><ul id='UWWiq'></ul><sub id='UWWiq'></sub></form><legend id='UWWiq'></legend><bdo id='UWWiq'><pre id='UWWiq'><center id='UWWiq'></center></pre></bdo></b><th id='UWWiq'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='UWWiq'><tfoot id='UWWiq'></tfoot><dl id='UWWiq'><fieldset id='UWWiq'></fieldset></dl></div>
                        <legend id='UWWiq'><style id='UWWiq'><dir id='UWWiq'><q id='UWWiq'></q></dir></style></legend>

                            <tbody id='UWWiq'></tbody>
                        1. 主站蜘蛛池模板: 精品免费 | 成人在线视频看看 | 国产激情 | 日韩精品视频一区二区三区 | 国产精品久久久久久久久久免费 | 日韩欧美高清dvd碟片 | 天天操网| 九九九久久国产免费 | 成人小视频在线 | 日韩一区二区三区在线观看视频 | 亚洲精品在线视频 | 国产亚洲精品91 | 久久午夜精品福利一区二区 | 怡红院成人在线视频 | 成人在线一区二区三区 | 欧美自拍视频 | 国产在线一区二区 | 在线观看视频福利 | 亚洲精品久久嫩草网站秘色 | 久久久久国产一区二区三区四区 | 国产精品自产拍 | 91黄色片免费看 | 成人午夜电影网 | 中文字幕第5页 | www成年人视频 | 国产精品一区网站 | 午夜精品一区二区三区在线观看 | 国产精品久久久久久婷婷天堂 | 久久久久国产一区二区三区 | 国产三级| 亚洲最大看片网站 | 日本激情视频在线播放 | 欧美人妖网站 | 国际精品鲁一鲁一区二区小说 | 喷水毛片| 亚洲人成人一区二区在线观看 | 在线观看成人 | 日韩www| 欧美一级二级三级 | 999国产精品视频 | 日韩a在线 |