diff --git a/CHANGELOG.md b/CHANGELOG.md index a5891d6f..cb5be2aa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ - PIESNO will now warn if less than 1% of noisy voxels were identified, which might indicate that something has gone wrong during the noise estimation. - On python >= 3.4, --mp_method [a_valid_start_method](https://docs.python.org/3/library/multiprocessing.html#contexts-and-start-methods) can now be used to control behavior in the multiprocessing loop. - A new option --split_b0s can be specified to split the b0s equally amongst the training data. -- A new (kind of experimental) option --use_f32 can be specified to use the float32 mode of spams. +- A new (kind of experimental) option --use_f32 can be specified to use the float32 mode of spams and reduce ram usage. - A new option --use_threading can be specified to disable python multiprocessing and solely rely on threading capabilities of the linear algebra libs during denoising. - Fixed crash in option --noise_est local_std when --cores 1 was also supplied. - setup.py and requirements.txt will now fetch spams v2.6, with patches for numpy 1.12 support. diff --git a/nlsam/denoiser.py b/nlsam/denoiser.py index b2dd526a..91295081 100644 --- a/nlsam/denoiser.py +++ b/nlsam/denoiser.py @@ -71,13 +71,13 @@ def nlsam_denoise(data, sigma, bvals, bvecs, block_size, b0_threshold : int, default 10 A b-value below b0_threshold will be considered as a b0 image. dtype : np.float32 or np.float64, default np.float64 - Precision to use for inner computation. Note that np.float32 should only be used for - very, very large datasets (that is, you ram starts swappping) as it can lead to numerical precision errors. + Precision to use for inner computations. Note that np.float32 should only be used for + very, very large datasets (that is, your ram starts swappping) as it can lead to numerical precision errors. use_threading : bool, default False Do not use multiprocessing, but rather rely on the multithreading capabilities of your numerical solvers. - While this mode is more memory friendly, it is undoubtedly slower than using the multiprocessing mode (the default). + While this mode is more memory friendly, it is also slower than using the multiprocessing mode (the default). Moreover, it also assumes that your blas/lapack/spams library are built with multithreading, so be sure to check - the resources usage of your computer to make sure it is the case or the algorithm will just take much longer to complete. + that your computer is using multiple cores or the algorithm will just take much longer to complete. verbose : bool, default False print useful messages. mp_method : string