MKL in the build when using Windows Subsystem

Discussion about building and installing Elmer
Post Reply
iamkbatra
Posts: 10
Joined: 08 Jan 2024, 11:58
Antispam: Yes

MKL in the build when using Windows Subsystem

Post by iamkbatra »

Hello Everyone,

Happy New Year! I hope you all had a wonderful holiday season. 😊

I'm seeking guidance on incorporating MKL into the build when using Windows Subsystem for Linux with Ubuntu. Any advice or tips would be greatly appreciated!

Thank you in advance for your help.

Best Regards,
K Batra
kevinarden
Posts: 2316
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: MKL in the build when using Windows Subsystem

Post by kevinarden »

Make sure MKL is installed then add to the cmake command

-DWITH_MKL:BOOL=TRUE
Masahiro_Akizuki
Posts: 16
Joined: 27 Feb 2024, 00:09
Antispam: Yes

Re: MKL in the build when using Windows Subsystem

Post by Masahiro_Akizuki »

Successfully compiled by Ubuntu and Debian.
The specific method is described in my blog.
Sorry for the Japanese.
Please check the translation by DeepL.

https://unique-cae.asablo.jp/blog/2023/08/30/9613777
Attachments
elmer-with-mkl.png
elmer-with-mkl.png (55.49 KiB) Viewed 466 times
Masahiro_Akizuki
Posts: 16
Joined: 27 Feb 2024, 00:09
Antispam: Yes

Re: MKL in the build when using Windows Subsystem

Post by Masahiro_Akizuki »

To use PARDISO (Direct and Iterative Sparse Solvers), the Intel oneAPI Math Kernel Library is easy.
However, the direct method (MUMPS) supports parallel computation, so PARDISO may not be necessary.
If you are fine with using MKL for BLAS (PARDISO does not work), you can install intel-mkl in the repository and change the default BLAS and LAPACK to MKL.
If you want to use many libraries, it is easier to use the Elmer Virtual Machine. It will be a bit slower, but if you expand the storage, you can use it normally. It is a hassle, but if you migrate your scripts, you should be able to use it in WSL as well (I used to migrate and use it when I was on Ubuntu 20.04).

https://www.howtogeek.com/124622/how-to ... or-vmware/

masahiro
Masahiro_Akizuki
Posts: 16
Joined: 27 Feb 2024, 00:09
Antispam: Yes

Re: MKL in the build when using Windows Subsystem

Post by Masahiro_Akizuki »

When I have time, I will create a WSL image based on Debian Testing (which is a rolling release) using Pistachio Linux *.

If Sid’s evaluation is satisfactory, it will fall back to Testing, making it easier to use the “singularity-container” package.

As a result, installing Salome-meca will be straightforward.

I believe that Salome-meca with code-aster is superior to Salome for many CAE users.

* Pistachio Linux
https://apps.microsoft.com/detail/9p41g ... a-JP&gl=JP

masahiro
Masahiro_Akizuki
Posts: 16
Joined: 27 Feb 2024, 00:09
Antispam: Yes

Re: MKL in the build when using Windows Subsystem

Post by Masahiro_Akizuki »

I considered using SalomeMeca and OneLab, but the file size became too large.
I compiled ElmerFEM with Intel-MKL on Debian 12. For Paraview, I installed the repository version.
The combination of these two, along with Intel oneAPI libraries etc., resulted in a file size of 9.4 GB.
Gmsh works by simply extracting it; the version from Onelab is newer.

Links:
Gmsh: Onelab
https://onelab.info/

SalomeMeca: The well-developed Windows version for 2023, through crowdfunding, can be found here.
https://code-aster-windows.com/download/

I verified the functionality of BiCGStab, MUMPS, Pardiso, and CPardiso through Tutorial 1, “Heat equation – 3D – Temperature field of a solid object.”

The username for the WSL is “elmeruser,” and the password is “elmerfem.”

I’ve uploaded the WSL-exported file to my OneDrive: OneDrive Link
https://1drv.ms/u/s!AsEXQkt6rT_Kg6VprHJ ... g?e=TBeJ1q
Attachments
ElmerSolver-2.png
(99.87 KiB) Not downloaded yet
ElmerSolver-1.png
(94.6 KiB) Not downloaded yet
case_sif.png
(71.82 KiB) Not downloaded yet
Masahiro_Akizuki
Posts: 16
Joined: 27 Feb 2024, 00:09
Antispam: Yes

Re: MKL in the build when using Windows Subsystem

Post by Masahiro_Akizuki »

The import method consists of the following two steps:

Step 1: Import a Linux Distribution

Open a command prompt or PowerShell window.
Run the following command to import the desired Linux distribution (replace elmer_debian12 with your preferred name and adjust the paths accordingly):
wsl --import elmer_debian12 c:\elmer_debian12 .\Elmer_Debian12_WSL.tar
For more details, you can refer to the official documentation: Use Custom Distro with WSL.
https://learn.microsoft.com/en-us/windo ... tom-distro

Step 2: Change User (from root to elmeruser)
Edit the /etc/wsl.conf file within Elmer Debian WSL distribution.
Add the following section to set the default user to elmeruser:
[user]
default=elmeruser

masahiro
Masahiro_Akizuki
Posts: 16
Joined: 27 Feb 2024, 00:09
Antispam: Yes

Re: MKL in the build when using Windows Subsystem

Post by Masahiro_Akizuki »

The version that works with MMG and ParMMG is here.
However, CPardiso does not work anymore.
https://www.elmerfem.org/forum/viewtopic.php?t=8266

masahiro
Post Reply