buttery-eel
buttery-eel copied to clipboard
Error when running buttery-eel on macOS
I could successfully setup buttery-eel on my MacBook Air, which has the Apple M2 chip and is running macOS Sonoma version 14.1.1. Below are the commands I used for the setup:
# setup buttery-eel inside its own environment:
git clone https://github.com/Psy-Fer/buttery-eel
mv buttery-eel buttery-eel-0.4.2+dorado7.2.13
cd buttery-eel-0.4.2+dorado7.2.13
git checkout 0860e66fcf783e8e # the commit I am testing
sed -i 's/7.1.4/7.2.13/' requirements.txt
python3 -m venv venv3
source venv3/bin/activate
pip3 install --upgrade pip
pip3 install .
deactivate
# download ont-dorado-server for macOS
wget https://cdn.oxfordnanoportal.com/software/analysis/ont-dorado-server_7.2.13_osxarm64.zip
unzip ont-dorado-server_7.2.13_osxarm64.zip
I tried running buttery-eel with a sample dataset using the command below:
scripts/eel -g ont-dorado-server/bin --config dna_r10.4.1_e8.2_400bps_5khz_hac_prom.cfg --device 'metal' -i PGXXXX230339_reads_20k.blow5 -o PGXXXX230339_reads_20k_dorado7213hac.fastq --qscore 9
BTW, when running above command, I'm getting the following error related to multiprocessing on macOS:
==========================================================================
Basecalling
==========================================================================
Process read_worker:
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/multiprocessing/process.py", line 314, in _bootstrap
self.run()
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/Volumes/KisaruExtSSD/Buttery-eel/buttery-eel-0.4.2+dorado7.2.13/venv3/lib/python3.11/site-packages/src/buttery_eel.py", line 238, in read_worker
if iq.qsize() < max_limit:
^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/multiprocessing/queues.py", line 126, in qsize
return self._maxsize - self._sem._semlock._get_value()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
NotImplementedError
Thanks!