Note: This discussion is about an older version of the COMSOL Multiphysics® software. The information provided may be out of date.

Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

Increasing performance at multinode/multicore machines with WINDOWS Server 2008 R2

Michael Rembe Certified Consultant

Please login with a confirmed email address before reporting spam

Hello,

here are some experiences with COMSOL 4.2a on multinode/multicore computers with WINDOWS Server 2008 R2 and hyperthreading.

COMSOL doesn't benefit from hyperthreading. If hyperthreading is activated COMSOL isn't able to work with physical CPU only. That means performance is decreasing.

There are 3 possibilities to prevent COMSOL using logical CPU:

1. Switch off hyperthreading by the BIOS. I wouldn't do so because hyperthreading isn't available for the computer any longer.

2. Set the environmental variable "KMP_AFFINITY=granularity=fine,compact,1,0" (software.intel.com/sites/products/documentation/studio/composer/en-us/2009/compiler_c/optaps/common/optaps_openmp_thread_affinity.htm).
It prevents COMSOL's MKL library to use logical CPU. This is helpful, but you can not control the used computation node. There are two computation nodes in my machine and WINDOWS distributes threads to booth computation nodes equally. You can starting COMSOL using the -np switch (f.i. comsol.exe -np 6).

3. I've got best experiences with starting COMSOL using /node and /affinity.

(www.tecchannel.de/server/prozessoren/2034789/server_cpu_test_intel_xeon_e7_2800_4800_8800_westmere_ex_gegen_opteron_6100/index8.html)

You can mask the CPUs will be used by COMSOL by a binary code. Example: If there is a total of 12 physical CPUs at both computation nodes (+12 logical, that means 2 six core

CPUs) and COMSOL has to use 12 physical CPUs the mask is 010101010101010101010101. You have to convert this binary number into an hex number =555555. COMSOL is started from the command prompt by

>start /affinity 555555 m:\programme\COMSOL\COMSOL42a\bin\win64\comsol.exe.

If you want to run COMSOL at one computation node only (best performance) with 6 physical CPU the binary code is 010101010101, HEX=555; starting COMSOL by

>start /node 0 /affinity 555 m:\programme\COMSOL\COMSOL42a\bin\win64\comsol.exe.

If you want to run COMSOL with 3 CPU only the binary code will be 010101000000, HEX=540.

What are your experiences with large 3D flow models? I'm looking for ways to improve performance.

Michael

0 Replies Last Post 2012年4月25日 GMT-4 02:37
COMSOL Moderator

Hello Michael Rembe

Your Discussion has gone 30 days without a reply. If you still need help with COMSOL and have an on-subscription license, please visit our Support Center for help.

If you do not hold an on-subscription license, you may find an answer in another Discussion or in the Knowledge Base.

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.