Intel® DevCloud
Help for those needing help starting or connecting to the Intel® DevCloud
1641 Discussions

Stack size inside jobs too small

NJenkins
Beginner
1,713 Views

I’m new to Devcloud (and loving it so far), but can’t work out how to adjust the stack size limit inside a devcloud job. I’m trying to run a piece of code using openMP in Fortran which contains some large arrays that I would prefer to keep in the stack.

 

The login node has a default stack size of 8192 according to 'ulimit -s', but there is no restriction against increasing this, so I can set it to the 32768 I need to run my code. But after two minutes this times out because the login node is not for computing tasks.

 

However, if I run an interactive job using 'qsub -I', the default stack size is 12288 but cannot be increased. Because of this, code which runs in the login shell won’t run inside a job, so I can’t test my code. The code below shows the output from trying to change the stack size inside an interactive job.

 

 

uxxxxx@s001-n013:~$ ulimit -s
12288
uxxxxx@s001-n013:~$ ulimit -s 32768
-bash: ulimit: stack size: cannot modify limit: Operation not permitted

 

 

 

I know I can change my code to use heap instead, but for the quick testing I’m trying to run at the moment, it’s a relatively significant change to have to make. Is there a way to change the stack available when I set up the job, or are there any flags/ environment variables I can use with ifort or gfortran to prevent this from causing errors? Running with the smaller stack size results in a segmentation fault. Thanks in advance!

0 Kudos
1 Solution
AlekhyaV_Intel
Moderator
1,625 Views

Hi,

 

We got an update from the admin team. Sorry to inform you that stack size in compute nodes is set to default i.e. 12288 bytes and cannot be increased/changed in DevCloud.

 

Regards,

Alekhya

 

View solution in original post

0 Kudos
6 Replies
AlekhyaV_Intel
Moderator
1,685 Views

Hi,


Thank you for posting in Intel Forums. We are working on this issue internally. We will get back to you soon with an update.


Regards,

Alekhya


0 Kudos
AlekhyaV_Intel
Moderator
1,626 Views

Hi,

 

We got an update from the admin team. Sorry to inform you that stack size in compute nodes is set to default i.e. 12288 bytes and cannot be increased/changed in DevCloud.

 

Regards,

Alekhya

 

0 Kudos
StuartM
Beginner
1,419 Views

Hi Alekhya,

 

I want to test running WRF (Weather Research and Forecasting) on the Ice Lake nodes of DevCloud.  I need to increase the stacksize ulimit in order for the MPI+OpenMP parallelized job to run.  Is there any way for the system administrators to allow (even temporarily) an increase?

 

Thanks,

Stu

0 Kudos
Wortmann
Beginner
920 Views

Hi, 

I must say that I am somewhat surprised about this statement. It is somewhat ridiculous to claim that this should be used to develop/test HPC solutions using recent Intel hard- and software when such a limit is in place. In typical Fortran applications with the use of "automatic" arrays, quite some stack space is needed. 

Of course, one could try to use compiler options to put more arrays on the heap but:

- this is less efficient

- it requires users to rely on specific compiler options and thus limits the transferability of the results obtained in devcloud

So why do you restrict stack-space?

 

Best regards

D. Wortmann

0 Kudos
NJenkins
Beginner
1,604 Views

Hi,

Thanks for find that out, I’ll make some changes to my code.

All the best, Nathanael

0 Kudos
AlekhyaV_Intel
Moderator
1,593 Views

Hi,


Thank you for accepting our solution. If you need any further assistance, please post a new question as this thread will no longer be monitored.


Regards,

Alekhya


0 Kudos
Reply