0

Let me start by clarifying two aspects:

(1) by concurrently-running, I mean executing on the hardware at any one point in time, rather than being in some other OS state such as ready or waiting; and

(2) assume that the hardware has a sufficiently large number of hardware threads (aka logical processors), so that that's not the limiting factor. E.g. 4096 hardware threads. (Obviously I don't have such a machine, yet.)

I've read that 32-bit Windows only supports 32 concurrently-running threads, and that a 64-bit process (on 64-bit Windows) can have 64 concurrently-running threads per processor group and up to 20 processor groups (when using multiple groups) on Windows 10.

But I've been unable to find anything relevant about WOW64. I've found lots of information on the maximum number of threads that can be created, but nothing on concurrently-running threads.

So, how many concurrently-running threads can a WOW64 process have (on Windows 10)?

Is it?

(a) 32, for compatibility with 32-bit Windows; or

(b) 64, because processor groups aren't accessible by 32-bit code, so all threads run in the default processor group; or

(c) a larger number, because a WOW64 process is partly 64-bit code, and that (Microsoft) code can use multiple processor groups. (I don't think that this is likely, but include it as another possibility.)

Edit.

This is not a duplicate of any of the following questions on Stack Overflow, because their answers focus mainly on thread maximums due to address space limits.

What is the maximum number of threads a process can have in windows [closed]

What's the maximum number of threads in Windows Server 2003?

"What's the maximum number of threads possible for a threads in Windows 8.1?

The maximum number of thread [duplicate]

Similarly, the following two oft-cited articles also are concerned with address space limits.

Pushing the Limits of Windows: Processes and Threads

Does Windows have a limit of 2000 threads per process?

  • Why are you trying to creating so many threads that this even becomes an issue? – user743414 Sep 06 '18 at 11:33
  • Because the problem I'm working on is computationally intensive, but decomposes into many sub-tasks which don't interfere with each other. My existing code base is 32-bit (with some assembly language), so I'd like to know what the thread limit is. – user9774662 Sep 07 '18 at 01:05
  • Maybe you find here answers: https://stackoverflow.com/questions/481900/whats-the-maximum-number-of-threads-in-windows-server-2003 or here https://stackoverflow.com/questions/16710849/what-is-the-maximum-number-of-threads-a-process-can-have-in-windows – user743414 Sep 07 '18 at 06:41
  • Possible duplicate of [What is the maximum number of threads a process can have in windows](https://stackoverflow.com/questions/16710849/what-is-the-maximum-number-of-threads-a-process-can-have-in-windows) – user743414 Sep 07 '18 at 06:42
  • Thank you for trying to help. I've edited my question to be more explicit as to why other Stack Overflow questions & answers aren't helpful here. – user9774662 Sep 08 '18 at 05:37

0 Answers0