update usage
This commit is contained in:
20
test_batch/python_cpu.py
Normal file
20
test_batch/python_cpu.py
Normal file
@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
import multiprocessing
|
||||
import os # For reading the amount of CPUs requested.
|
||||
import time # For clocking the calculation.
|
||||
|
||||
def double(data):
|
||||
return data ** 2
|
||||
|
||||
if __name__ == '__main__':
|
||||
begin = time.time()
|
||||
inputs = list(range(10000)) # Makes an array from 0 to 10
|
||||
poolSize = int(os.environ['SLURM_JOB_CPUS_PER_NODE']) # Amount of CPUs requested.
|
||||
pool = multiprocessing.Pool(processes=poolSize,)
|
||||
poolResults = pool.map(double, inputs) # Do the calculation.
|
||||
pool.close() # Stop pool accordingly.
|
||||
pool.join() # Wrap up data from the workers in the pool.
|
||||
print ('Pool output:', poolResults) # Results.
|
||||
elapsedTime = time.time() - begin
|
||||
print ('Time elapsed for ' , poolSize, ' workers: ', elapsedTime, ' seconds')
|
Reference in New Issue
Block a user