Skip to content
Snippets Groups Projects
Commit 1352f6b3 authored by Georges Da Costa's avatar Georges Da Costa
Browse files

Changes for MacOS

parent 59008ee4
Branches
No related tags found
1 merge request!1Devel
...@@ -184,8 +184,8 @@ int main(int argc, char** argv) { ...@@ -184,8 +184,8 @@ int main(int argc, char** argv) {
// -c 1200 // -c 1200
// -m 35000 // -m 35000
/* time mpirun --machinefile /dev/shm/m ./a.out -m 35000 -n 1 -c 1200 /* time mpirun --machinefile m ./a.out -m 35000 -n 1 -c 1200
/dev/shm/m : 32 == cores m : 32 == cores
real 2m26.163s real 2m26.163s
user 32m6.416s user 32m6.416s
sys 5m27.728s sys 5m27.728s
...@@ -196,8 +196,8 @@ sys 5m27.728s ...@@ -196,8 +196,8 @@ sys 5m27.728s
/* /*
/* time mpirun --machinefile /dev/shm/m2 ./a.out -m 35000 -n 1 -c 1200 /* time mpirun --machinefile m2 ./a.out -m 35000 -n 1 -c 1200
/dev/shm/m2 : 64 == hyperthread m2 : 64 == hyperthread
real 3m38.990s real 3m38.990s
user 101m59.836s user 101m59.836s
sys 12m21.300s sys 12m21.300s
...@@ -209,12 +209,12 @@ sys 12m21.300s ...@@ -209,12 +209,12 @@ sys 12m21.300s
/* RQ: avec mpirun --mca btl ^openib /* RQ: avec mpirun --mca btl ^openib
time mpirun --mca btl ^openib --machinefile /dev/shm/m ./a.out -n 1 time mpirun --mca btl ^openib --machinefile m ./a.out -n 1
real 0m53.827s real 0m53.827s
user 6m38.412s user 6m38.412s
sys 6m46.088s sys 6m46.088s
time mpirun --machinefile /dev/shm/m ./a.out -n 1 time mpirun --machinefile m ./a.out -n 1
real 0m53.990s real 0m53.990s
user 6m43.392s user 6m43.392s
sys 6m53.344s sys 6m53.344s
......
...@@ -8,6 +8,7 @@ import random ...@@ -8,6 +8,7 @@ import random
import time import time
import itertools import itertools
from pathlib import Path from pathlib import Path
import tempfile
from functools import reduce from functools import reduce
from execo import Process from execo import Process
...@@ -15,12 +16,13 @@ from execo import Process ...@@ -15,12 +16,13 @@ from execo import Process
class Executor: class Executor:
'Allow access to the platform' 'Allow access to the platform'
def __init__(self): def __init__(self):
self.tmp_dir
if os.path.isdir('/dev/shm'): if os.path.isdir('/dev/shm'):
self.mpi_host_file = '/dev/shm/mpi_host_file' self.tmp_dir = tempfile.mkdtemp(prefix="/dev/shm")
self.mpi_core_file = '/dev/shm/mpi_core_file'
else: else:
self.mpi_host_file = '/tmp/expetator_mpi_host_file' self.tmp_dir = tempfile.mkdtemp(prefix="/tmp/executor")
self.mpi_core_file = '/tmp/expetator_mpi_core_file' self.mpi_host_file = '%s/mpi_host_file' % self.tmp_dir
self.mpi_core_file = '%s/mpi_core_file' % self.tmp_dir
self.mpi_options = '' self.mpi_options = ''
self.hostnames = ['localhost'] self.hostnames = ['localhost']
self.nbhosts = 1 self.nbhosts = 1
......
...@@ -18,7 +18,7 @@ if __name__ == '__main__': ...@@ -18,7 +18,7 @@ if __name__ == '__main__':
stay=True stay=True
with open('/dev/shm/power_measures','w') as power_file: with open('/tmp/expetator_power_measures','w') as power_file:
power_file.write('#timestamp power\n') power_file.write('#timestamp power\n')
try: try:
...@@ -30,7 +30,7 @@ if __name__ == '__main__': ...@@ -30,7 +30,7 @@ if __name__ == '__main__':
current_time=time.time() current_time=time.time()
int_current_time=int(current_time) int_current_time=int(current_time)
with open('/dev/shm/power_measures','a') as power_file: with open('/tmp/expetator_power_measures','a') as power_file:
power_file.write(str(int_current_time)+' '+str(watt)+'\n') power_file.write(str(int_current_time)+' '+str(watt)+'\n')
time.sleep(1-(current_time-int_current_time)) time.sleep(1-(current_time-int_current_time))
except: except:
......
...@@ -31,7 +31,7 @@ class Lperf: ...@@ -31,7 +31,7 @@ class Lperf:
self.executor = executor self.executor = executor
self.cmdline = '/tmp/bin/lperf stat -x "!" -I %s -a -A -e %s' % (self.interval, ','.join(self.names)) self.cmdline = '/tmp/bin/lperf stat -x "!" -I %s -a -A -e %s' % (self.interval, ','.join(self.names))
self.cmdline += ' -o /dev/shm/lperf_monitoring &' self.cmdline += ' -o %s/lperf_monitoring &' % executor.tmp_dir
def start(self): def start(self):
'Starts the monitoring right before the benchmark' 'Starts the monitoring right before the benchmark'
...@@ -47,8 +47,8 @@ class Lperf: ...@@ -47,8 +47,8 @@ class Lperf:
os.makedirs(filename_moj, exist_ok=True) os.makedirs(filename_moj, exist_ok=True)
if len(self.executor.hostnames) > 1: if len(self.executor.hostnames) > 1:
for hostname in self.executor.hostnames: for hostname in self.executor.hostnames:
self.executor.local('oarcp %s:/dev/shm/lperf_monitoring %s/%s_%s_%s' % self.executor.local('oarcp %s:%s/lperf_monitoring %s/%s_%s_%s' %
(hostname, filename_moj, hostname, benchname, beg_time)) (hostname, self.executor.tmp_dir, filename_moj, hostname, benchname, beg_time))
else: else:
self.executor.local('cp /dev/shm/lperf_monitoring %s/%s_%s_%s' % self.executor.local('cp %s/lperf_monitoring %s/%s_%s_%s' %
(filename_moj, 'localhost', benchname, beg_time)) (self.executor.tmp_dir, filename_moj, 'localhost', benchname, beg_time))
...@@ -93,10 +93,7 @@ class Mojitos: ...@@ -93,10 +93,7 @@ class Mojitos:
self.cmdline += ' -r' self.cmdline += ' -r'
if self.load: if self.load:
self.cmdline += ' -u' self.cmdline += ' -u'
if os.path.isdir('/dev/shm'): self.monitoring_file = '%s/monitoring_moj' executor.tmp_dir
self.monitoring_file = '/dev/shm/monitoring_moj'
else:
self.monitoring_file = '/tmp/expetator_monitoring_moj'
self.cmdline += ' -o %s &' % self.monitoring_file self.cmdline += ' -o %s &' % self.monitoring_file
......
...@@ -57,8 +57,8 @@ class Power: ...@@ -57,8 +57,8 @@ class Power:
result = [(raw['uid'], raw['timestamps'],raw['values']) for raw in raws] result = [(raw['uid'], raw['timestamps'],raw['values']) for raw in raws]
else: else:
self.executor.local('cp /dev/shm/power_measures %s' % target) self.executor.local('cp /tmp/expetator_power_measures %s' % target)
with open('/dev/shm/power_measures') as file_id: with open('/tmp/expetator_power_measures') as file_id:
content = [line.split() for line in file_id.readlines()[1:]] content = [line.split() for line in file_id.readlines()[1:]]
content = [(int(t), float(p)) for t,p in content] content = [(int(t), float(p)) for t,p in content]
result = [('localhost',)+tuple(zip(*content))] result = [('localhost',)+tuple(zip(*content))]
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment