[Eeglablist] Forcing Double Precision in Makotos Preprocessing Pipeline

Makoto Miyakoshi mmiyakoshi at ucsd.edu
Fri May 14 10:34:36 PDT 2021


Dear Malte,

Thank you for making a good suggestion. Indeed, it is probably unnecessary
for most of the cases. I deleted the section by using a strike bar.
https://sccn.ucsd.edu/wiki/Makoto%27s_preprocessing_pipeline#Change_the_option_to_use_double_precision_.2805.2F14.2F2021_updated.29

The scenario I can imagine in which this double precision is necessary is
when we use third-party plugins for EEGLAB that performs matrix operation
(ICA, ASR, and any GED-based solutions that has been advocated by Mike etc)
but these applications do not check if the input data is double. See the
attached screenshot how a problem can happen (prepare for the shock!) This
is the case when data rank is compared with single vs. double precisions
right after importing the data from .raw file.

But these are rather special cases. As I wrote in that deleted section, as
long as you stick to GUI there is most likely no problem.

Makoto

On Thu, May 13, 2021 at 1:11 PM Malte Anders via eeglablist <
eeglablist at sccn.ucsd.edu> wrote:

> Dear list,
>
> Makoto states in his preprocessing pipeline that one should force EEGLAB to
> use double set precision. I am wondering if this is a smart choice?
>
> I am importing EEG files with a 24 bit resolution (I hope this is even
> relevant info). I noticed that a 1hr EEG file with fs=512 Hz in the
> manufacturers .hdf5 format is roughly 500 Mb and stays approximately that
> size when importing it into EEGLAB with single set precision (the .set file
> is also ~500 mb). Even when forcing double set precision, EEG.data is still
> stored as a single after importing.
>
> Only after performing an EEGLAB operation such as filtering or ASR,
> EEG.data is then converted to "double". The .set file is then also double
> the size (in this case, 1 Gb). In my opinion, this creates information out
> of thin air, as when the original file was 32 bit (or 24 bit in this case),
> filtering does not magically add more information to it that needs double
> the disk space.
> On top of that, it is mentioned in quite a few places that if double
> precision is necessary for operations such as ICA, this is done
> automatically in the process.
>
> Thus, why should I perform the very first step in Makotos preprocessing
> pipeline and change the options to force "double precision"? If my simple
> thinking is correct, this only wastes space on the hard drive (in my case,
> approx. 50 Gb). Are there any specific steps that really need this
> checkbox? On top of that, the checkbox is even hidden in EEGLAB 2021 by
> default so you really have to want to force EEGLAB to double set
> precision...
>
> Best wishes!
> Malte
> _______________________________________________
> Eeglablist page: http://sccn.ucsd.edu/eeglab/eeglabmail.html
> To unsubscribe, send an empty email to
> eeglablist-unsubscribe at sccn.ucsd.edu
> For digest mode, send an email with the subject "set digest mime" to
> eeglablist-request at sccn.ucsd.edu
>


More information about the eeglablist mailing list