epi2me-labs / wf-basecalling

Other
34 stars 14 forks source link

The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested #27

Closed mikeds211 closed 10 months ago

mikeds211 commented 10 months ago

Operating System

macOS

Other Linux

No response

Workflow Version

wf-basecalling v1.1.2.

Workflow Execution

EPI2ME Desktop application

EPI2ME Version

v5.1.8

CLI command run

No response

Workflow Execution - CLI Execution Profile

None

What happened?

I am using Epi2Me on an M2 Macbook pro with the latest OS (14.2.1 (23C71)) and cannot get past this error message that terminates wf-basecalling v1.1.2. "The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested" I have read elsewhere that this error message a problem with Docker but I can't see why this should not be fixable from within the Epi2Me options in setting up the wf-basecalling workflow. Does anyone have any ideas how to get around this other than tinkering with Docker?

Relevant log output

This is epi2me-labs/wf-basecalling v1.1.2.
--------------------------------------------------------------------------------
[45/279ecf] Submitted process > getVersions
[3b/b01263] Submitted process > getParams
[ba/43a889] Submitted process > wf_dorado:make_mmi
[be/5193f8] Submitted process > cram_cache
[5e/a67b96] Submitted process > wf_dorado:dorado (2)
[a9/d98898] Submitted process > wf_dorado:dorado (1)
ERROR ~ Error executing process > 'wf_dorado:dorado (2)'
Caused by:
  Process `wf_dorado:dorado (2)` terminated with an error exit status (125)
Command executed:
  set +e
  source /opt/nvidia/entrypoint.d/*-gpu-driver-check.sh # runtime driver check msg
  set -e
  # CW-2569: convert the pod5s contextually
  if [[ "false" == "true" && "pod5" == "fast5" ]]; then
      pod5 convert fast5 ./*.fast5 --output . --threads 8 --one-to-one ./
  fi

  # Run dorado on the new pod5s
  dorado basecaller         ${DRD_MODELS_PATH}/dna_r10.4.1_e8.2_400bps_hac@v4.3.0         .         --modified-bases-models ${DRD_MODELS_PATH}/dna_r10.4.1_e8.2_400bps_hac@v4.3.0_6mA@v2                  --device cuda:all | samtools view --no-PG -b -o 1.ubam -

  # CW-2569: delete the pod5s, if emit not required.
  if [[ "false" == "true" && "pod5" == "fast5" ]]; then
      rm -r converted/
  fi
Command exit status:
  125
Command output:
  (empty)
Command error:
  WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
  docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]].
  time="2024-01-05T20:50:43+11:00" level=error msg="error waiting for container: "
Work dir:
  /Users/mikeds/epi2melabs/instances/wf-basecalling_01HKCGG6DM9CGD530CKFYQG30J/work/5e/a67b967b01b7fbe046e3f836c01531
Tip: when you have fixed the problem you can continue the execution adding the option `-resume` to the run command line
 -- Check '/Users/mikeds/epi2melabs/instances/wf-basecalling_01HKCGG6DM9CGD530CKFYQG30J/nextflow.log' file for details
WARN: Killing running tasks (2)

Application activity log entry

No response

RenzoTale88 commented 10 months ago

@mikeds211 unfortunately, MacOS is not supported from wf-basecalling due to the lack of support for GPU through Docker.