Как использовать больше моих процессоров на моем экземпляре EC2? - PullRequest
0 голосов
/ 06 июня 2019

Здравствуйте, я довольно новичок в работе с экземплярами EC2, но я хочу, чтобы мой сервер EC2 Ubuntu был максимально мощным.Вот почему я выбрал экземпляр t2.2xlarge с 8 процессорами и 32 ГБ в памяти.Тем не менее, я чувствую, что производительность такая же, как и у «бесплатной версии», на которой я запускал свой скрипт на Python.Когда я смотрю на использование процессора на моей машине, он говорит только 8%.

Как я могу использовать гораздо больше своих процессоров?

В моем сценарии я, по сути, выполняю следующее.Делая это, он должен использовать один процессор на вызов функции.Однако, когда я снова проверяю загрузку процессора.Это показывает, что используется только 8% ЦП, тогда как каждый ЦП должен быть выделен для одной функциональной задачи ??

import multiprocessing as mp

# each process will use each CPU
pool = mp.Pool(mp.cpu_count())
results=[]

for ii in range(0, len(tmpDF_forPeerGroup)):
    pool.apply_async(construct_each_company, args=(tmpDF_forPeerGroup, ii), callback=collect_result)

pool.close()
# postpones the execution of next line of code until all processes in the queue are done.
pool.join() 

# Step 5: Sort results [OPTIONAL]
results.sort(key=lambda x: x[0])
finalListForCompanies = [r for (ii, r) in results]
...