<p>You can specify the executors of your node in his configuration.</p>
<p>Manage Jenkins -&gt; Manage Nodes -&gt; Configure Node -&gt; Number of build processors</p>
<p>In environments where we only run scripts etc. we have one executor per core.</p>
<p>But if you have large build jobs and the performance is important for you, you should read this article from the jenkins documentation.</p>
<p><a href="https://www.jenkins.io/doc/book/scaling/architecting-for-scale/#Calculating-how-many-jobs" rel="nofollow noreferrer">https://www.jenkins.io/doc/book/scaling/architecting-for-scale/#Calculating-how-many-jobs</a></p>

CC BY-SA 4.0
2021-05-18T15:11:52.263Z
LOL, thanks I was just reading that. But that describes how may executors I may need, and doesn't really address my question directly.
Chris F
CC BY-SA 4.0
2021-05-19T09:26:01.690Z
Sorry, I hid the answer a little bit. We have one executor per core, so it is possible to set more than one executor per node.
NicoKlausIT
CC BY-SA 4.0
2021-05-18T09:43:05.500Z
2021-05-18T09:43:05.500Z
NicoKlausIT
<p>The architecting for scale calcs don't give a good calculation, just a starting point. It does not address how often your jobs are triggered. The answer really depends on what you are executing and how often. Are you doing process intensive work, I/O heavy of network heavy work? Do you have a CI pipeline trigger on every commit (and how often is that), or manual jobs?</p>
<p>We have over 9000 jobs of all flavours, from manual and CI check-in triggered builds (Java and JS) and pipelines, to nightly integration/regression jobs, file management jobs, analysis jobs, some sometime once in a blue moon jobs, some interact w/real hardware or simulate waits or wait for remote results processing. About 1000 jobs execute/day. We have win nodes, linux nodes, common pool and label restricted nodes, all VM based ans dedicated to Jenkins. We even have some VMs running two different agent/nodes on same VM, different settings, effectively overallocating, but not in practice.</p>
<p>The short answer is: start with one executor/core and load it up, measure your loads (cpu/io/net/duration) and see. How long does each job take by itself (100%) vs one of many in parallel? Is the aggregate faster or longer? Gow do the loads compare?</p>
<p>We found when we know what we are running, at specific times we can easily go 2 executors/core. Every now and then, just 2 memory intensive jobs will exhaust memory, even when just 2/4 executiors in use (bad luck, restart one).</p>
<p>This may all be different if all your agents are cloud-based or ephemeral.</p>
<p>YMMV.</p>

CC BY-SA 4.0
2021-05-19T11:05:50.277Z
2021-05-20T01:03:08.667Z
2021-05-20T01:03:08.667Z
Ian W
<p>I have set up Windows build nodes in awhile, but I do remember when I did I was only able to set 1 executor per node. Is this still true?</p>

<jenkins>
How many executors can I have for a Jenkins Windows build node?
Chris F
# How many executors can I have for a Jenkins Windows build node?

(Asked by: username_0 on 2021-05-17)

I have set up Windows build nodes in awhile, but I do remember when I did I was only able to set 1 executor per node. Is this still true?

**Tags:** jenkins


---

## 2 answers

### Answer by username_1 on 2021-05-18. Score: 2 | Accepted answer

You can specify the executors of your node in his configuration.

Manage Jenkins -> Manage Nodes -> Configure Node -> Number of build processors

In environments where we only run scripts etc. we have one executor per core.

But if you have large build jobs and the performance is important for you, you should read this article from the jenkins documentation.

<https://www.jenkins.io/doc/book/scaling/architecting-for-scale/#Calculating-how-many-jobs>

> **Comments:**
> **username_0**: LOL, thanks I was just reading that. But that describes how may executors I may need, and doesn't really address my question directly.  
> **username_1**: Sorry, I hid the answer a little bit. We have one executor per core, so it is possible to set more than one executor per node.  

---

### Answer by username_2 on 2021-05-19. Score: 2

The architecting for scale calcs don't give a good calculation, just a starting point. It does not address how often your jobs are triggered. The answer really depends on what you are executing and how often. Are you doing process intensive work, I/O heavy of network heavy work? Do you have a CI pipeline trigger on every commit (and how often is that), or manual jobs?

We have over 9000 jobs of all flavours, from manual and CI check-in triggered builds (Java and JS) and pipelines, to nightly integration/regression jobs, file management jobs, analysis jobs, some sometime once in a blue moon jobs, some interact w/real hardware or simulate waits or wait for remote results processing. About 1000 jobs execute/day. We have win nodes, linux nodes, common pool and label restricted nodes, all VM based ans dedicated to Jenkins. We even have some VMs running two different agent/nodes on same VM, different settings, effectively overallocating, but not in practice.

The short answer is: start with one executor/core and load it up, measure your loads (cpu/io/net/duration) and see. How long does each job take by itself (100%) vs one of many in parallel? Is the aggregate faster or longer? Gow do the loads compare?

We found when we know what we are running, at specific times we can easily go 2 executors/core. Every now and then, just 2 memory intensive jobs will exhaust memory, even when just 2/4 executiors in use (bad luck, restart one).

This may all be different if all your agents are cloud-based or ephemeral.

YMMV.


---

