diff --git a/src/scripts/model_maker.py b/src/scripts/model_maker.py index a1e3280cabe63f2a8845aace1510fcf00931841e..ebd8592419e3991d1ec282bdd2f903c248bba747 100755 --- a/src/scripts/model_maker.py +++ b/src/scripts/model_maker.py @@ -418,13 +418,16 @@ def load_model(model_file): write_obj(sconf, gconf, max_rad) try: max_gpu_ram = int(model['system_settings']['max_gpu_ram']) + matrix_dim = 2 * gconf['nsph'] * gconf['li'] * (gconf['li'] + 2) + matrix_size_bytes = 16 * matrix_dim * matrix_dim + matrix_size_Gb = float(matrix_size_bytes) / 1024.0 / 1024.0 / 1024.0 + print("INFO: estimated matrix size is {0:.3g} Gb.".format(matrix_size_Gb)) if (max_gpu_ram > 0): max_gpu_ram_bytes = max_gpu_ram * 1024 * 1024 * 1024 - matrix_dim = 2 * gconf['nsph'] * gconf['li'] * (gconf['li'] + 2) - matrix_size_bytes = 16 * matrix_dim * matrix_dim if (matrix_size_bytes < max_gpu_ram_bytes): max_gpu_processes = int(max_gpu_ram_bytes / matrix_size_bytes) print("INFO: system supports up to %d simultaneous processes on GPU."%max_gpu_processes) + print("INFO: only %d GPU processes allowed, if using refinement."%(max_gpu_processes / 3)) else: print("WARNING: estimated matrix size is larger than available GPU memory!") else: