buttery-eel icon indicating copy to clipboard operation
buttery-eel copied to clipboard

Error when running buttery-eel on macOS

Open kisarur opened this issue 10 months ago • 8 comments

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!

kisarur avatar Apr 29 '24 10:04 kisarur