- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I'm trying to make the Docker image on the base of Intel HPC toolkit and run it on the Macbook with Intel Core i5 and MacOS (on the base of intel/oneapi-hpckit:2023.0.0-devel-ubuntu22.04)
and then use the MPI inside of this docker. In order to test it, I wrote simple Fortran program:
program mpi_hello
use mpi
integer :: rank, size, ierr
call MPI_INIT(ierr)
call MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr)
call MPI_COMM_SIZE(MPI_COMM_WORLD, size, ierr)
print *, 'Hello, World! I am process', rank, 'of', size
call MPI_FINALIZE(ierr)
end program mpi_hello
And then compile it:
mpiifort mpi_hello.f90 -o mpi_hello
And run:
./mpi_hello
As a result, I've obtain the following error:
forrtl: severe (168): Program Exception - illegal instruction Image PC Routine Line Source
Image PC Routine Line Source
libc.so.6 00007F17CE933520 Unknown Unknown Unknown
libmpi.so.12.0.0 00007F17CF7EE77F MPL_wtime_init Unknown Unknown
libmpi.so.12.0.0 00007F17CF7DDDFA MPL_dbg_pre_init Unknown Unknown
libmpi.so.12.0.0 00007F17CF0A1315 Unknown Unknown Unknown
libmpi.so.12.0.0 00007F17CF0A0D1B MPI_Init Unknown Unknown
libmpifort.so.12. 00007F17D06EC85B PMPI_INIT Unknown Unknown
mpi_hello 00000000004041EE Unknown Unknown Unknown
mpi_hello 000000000040419D Unknown Unknown Unknown
libc.so.6 00007F17CE91AD90 Unknown Unknown Unknown
libc.so.6 00007F17CE91AE40 __libc_start_main Unknown Unknown
mpi_hello 00000000004040B5 Unknown Unknown Unknown
The same result was in the case of compilation of other codes with usage of MPI (Quantum Espresso, for example).
At the same time, the same program in the same Docker container works fine on any other computers (Mac with M2 or Windows with Intel). Could you tell me, what could be the reason for this error and how to solve it? In every case I've compiled container on the same laptop where I run it later.
Best,
Sergei
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thanks for posting in Intel Communities.
We have informed the concerned development team about your issue. We will get back to you soon.
Thanks & Regards,
Shaik Rabiya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
>>>I'm trying to make the Docker image on the base of Intel HPC toolkit and run it on the Macbook with Intel Core i5 and MacOS (on the base of intel/oneapi-hpckit:2023.0.0-devel-ubuntu22.04)
Thank you for your patience. Could you please specify the hardware and CPU details of the machine where you are receiving the error?
Thanks & Regards,
Shaik Rabiya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I use the following machine:
MacBook Pro (Retina, 13-inch, Early 2015)
2.9 GHz Dual-Core Intel Core i5
16 GB 1867 MHz DDR3
Intel Iris Graphics 6100 1536 MB
macOS Monterey (12.6.3)
It's just one of the computers. In general, I've gotten the same error on three other Macbooks with Intel processors.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thanks for providing details of the machine. Could you please provide the output of the "sysctl -a | grep machdep.cpu” command to retrieve the hardware specifications of your processor? Could you also please provide relevant hardware details for us to investigate further with your specifications?
Thanks & Regards,
Shaik Rabiya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hey, sure, here we go
sysctl -a | grep machdep.cpu
machdep.cpu.tsc_ccc.numerator: 0
machdep.cpu.tsc_ccc.denominator: 0
machdep.cpu.mwait.linesize_min: 64
machdep.cpu.mwait.linesize_max: 64
machdep.cpu.mwait.extensions: 3
machdep.cpu.mwait.sub_Cstates: 286531872
machdep.cpu.thermal.sensor: 1
machdep.cpu.thermal.dynamic_acceleration: 1
machdep.cpu.thermal.invariant_APIC_timer: 1
machdep.cpu.thermal.thresholds: 2
machdep.cpu.thermal.ACNT_MCNT: 1
machdep.cpu.thermal.core_power_limits: 1
machdep.cpu.thermal.fine_grain_clock_mod: 1
machdep.cpu.thermal.package_thermal_intr: 1
machdep.cpu.thermal.hardware_feedback: 0
machdep.cpu.thermal.energy_policy: 1
machdep.cpu.xsave.extended_state: 7 832 832 0
machdep.cpu.xsave.extended_state1: 1 0 0 0
machdep.cpu.arch_perf.version: 3
machdep.cpu.arch_perf.number: 4
machdep.cpu.arch_perf.width: 48
machdep.cpu.arch_perf.events_number: 7
machdep.cpu.arch_perf.events: 0
machdep.cpu.arch_perf.fixed_number: 3
machdep.cpu.arch_perf.fixed_width: 48
machdep.cpu.cache.linesize: 64
machdep.cpu.cache.L2_associativity: 8
machdep.cpu.cache.size: 256
machdep.cpu.tlb.inst.large: 8
machdep.cpu.tlb.data.small: 64
machdep.cpu.tlb.data.small_level1: 64
machdep.cpu.address_bits.physical: 39
machdep.cpu.address_bits.virtual: 48
machdep.cpu.max_basic: 20
machdep.cpu.max_ext: 2147483656
machdep.cpu.vendor: GenuineIntel
machdep.cpu.brand_string: Intel(R) Core(TM) i5-5287U CPU @ 2.90GHz
machdep.cpu.family: 6
machdep.cpu.model: 61
machdep.cpu.extmodel: 3
machdep.cpu.extfamily: 0
machdep.cpu.stepping: 4
machdep.cpu.feature_bits: 9221959987971750911
machdep.cpu.leaf7_feature_bits: 35399595 0
machdep.cpu.leaf7_feature_bits_edx: 2617247232
machdep.cpu.extfeature_bits: 1241984796928
machdep.cpu.signature: 198356
machdep.cpu.brand: 0
machdep.cpu.features: FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM PBE SSE3 PCLMULQDQ DTES64 MON DSCPL VMX EST TM2 SSSE3 FMA CX16 TPR PDCM SSE4.1 SSE4.2 x2APIC MOVBE POPCNT AES PCID XSAVE OSXSAVE SEGLIM64 TSCTMR AVX1.0 RDRAND F16C
machdep.cpu.leaf7_features: RDWRFSGS TSC_THREAD_OFFSET BMI1 AVX2 SMEP BMI2 ERMS INVPCID FPU_CSDS RDSEED ADX SMAP IPT MDCLEAR IBRS STIBP L1DF SSBD
machdep.cpu.extfeatures: SYSCALL XD 1GBPAGE EM64T LAHF LZCNT PREFETCHW RDTSCP TSCI
machdep.cpu.logical_per_package: 16
machdep.cpu.cores_per_package: 8
machdep.cpu.microcode_version: 47
machdep.cpu.processor_flag: 6
machdep.cpu.core_count: 2
machdep.cpu.thread_count: 4
About the hardware information - I don't know what other information might be useful to you. Write when you need some parameter - I will try to determine it immediately and write to you!
Best,
Sergei
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
The error may be due to a typical case where the hardware doesn't support an instruction in the code. The compiler might be trying to use newer instructions than supported on the hardware since it's being run in a new Ubuntu container i.e. 20.04 on a Macbook Pro. Could you downgrade the container OS to an older version of Ubuntu perhaps 18.04 and check if you can execute the code.
>>>At the same time, the same program in the same Docker container works fine on any other computers (Mac with M2 or Windows with Intel)
If you are still facing the issue, could you please provide more reproducible instructions for building the docker container and running the application to produce the error along with the hardware details(along with "sysctl -a | grep machdep.cpu" command output) of the Mac with M2 and other computers where you are not facing issues and are also facing issues respectively?
Thanks & Regards,
Shaik Rabiya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hey, sorry for the delay,
I've tested downgraded version (Ubuntu 18.04), but error in the same.
Here is the instructions for container building
Dockerfile
# Use Intel OneAPI HPC Toolkit as base image
FROM intel/oneapi-hpckit:2022.3.1-devel-ubuntu18.04
# Install of utilities and libraries
RUN apt-get update && apt-get install -y \
build-essential \
wget \
unzip \
libfftw3-dev \
libblas-dev \
liblapack-dev \
vim
# Install of Git, OpenSSH, python, pip and make
RUN apt-get update && apt-get install -y git openssh-client make python3-pip
# Source the OneAPI setvars script to make ifort available
RUN echo 'source /opt/intel/oneapi/setvars.sh' >> ~/.bashrc
Docker build
docker buildx build -f Dockerfile --no-cache --load dockerfile:dockerfile_mpi .
Run container interactively
docker run -it --rm dockerfile:dockerfile_mpi
Inside of the container, the steps from the fist message should be repeated.
About the specifications of computer, where the same steps leads to normal work
Macbook Pro 14-inch 2023
Apple M2 Max
64 GB
Ventura 13.5.1
Output of the
sysctl -a | grep machdep.cpu
machdep.cpu.cores_per_package: 12
machdep.cpu.core_count: 12
machdep.cpu.logical_per_package: 12
machdep.cpu.thread_count: 12
machdep.cpu.brand_string: Apple M2 Max
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thanks for sharing the details. Has the entire output of "sysctl -a | grep machdep.cpu" been provided? We most importantly need the instruction sets supported by MacBook Pro 14 system given by "machdep.cpu.features" parameter provided by the above command. We are still investigating your issue. We have mentioned your findings to the concerned team. We will get back to you soon.
Thanks & Regards,
Shaik Rabiya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hey,
Yes, I listed the entire output, it was very short here. Thank you for your help, I'll look forward to hearing from you!
Best,
Sergei
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
We extremely regret to inform you that Intel MPI Library only officially supports Windows and Linux but not MacOS. We also apologize that we don't officially support Docker containers as well. The applications run on Docker requires some amount of compatability with the base operating system. Hence, we suggest you to use Singularity containers for this use case as it acts more like a Virtual Machine. Please go through the below link provided for using Singularity containers with Intel MPI:
Singularity has Mac installation available but it is in beta.
We deeply apologize for the trouble that has been caused to you. We appreciate your great patience when you provided us multiple details as we asked throughout the query. We truly regret that we can't inspect this thread any further as we don't support either MacOS or Docker officially. Could we go ahead and close this thread?
Thanks & Regards,
Shaik Rabiya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
Very sad news, I didn't expect that support for such a major operating system might be missing for MPI Library. In that case, yes, the issue can be closed.
Thank you for giving an official answer.
Sergei
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
We extremely regret the inconvenience caused. We have informed the feedback to the concerned team. As per your confirmation, we are closing this thread. If you need any additional information, you can raise a new question in the communities as this thread will no longer be monitored by Intel.
Thanks & Regards,
Shaik Rabiya

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page