1 |
Alec Ten Harmsel <alec <at> alectenharmsel.com> writes: |
2 |
|
3 |
|
4 |
> On Sat, Jun 20, 2015 at 07:03:18PM +0000, James wrote: |
5 |
> > Hello one and all, |
6 |
|
7 |
> > I want to first install Jenkins on a single multicore amd system, so |
8 |
> > I found this brief guide (which seems simple enough): |
9 |
|
10 |
> > https://code.google.com/p/godin-gentoo-repository/wiki/Jenkins |
11 |
|
12 |
> I highly recommend playing with the Jenkins docker container to get a |
13 |
> feel for using the web UI: |
14 |
|
15 |
> docker run -p 8080:8080 -d jenkins |
16 |
|
17 |
> The official jenkins image comes with the bare minimum of libraries so |
18 |
> good luck building any C/C++ project, but it is helpful just to point |
19 |
> and click around (if you already have docker, that is). |
20 |
|
21 |
Yes, I've used Docker on gentoo before. NO, it's currently un-installed |
22 |
and using docker for what I am after only complicates things at this point. |
23 |
|
24 |
|
25 |
> This is not really a fair comparison. Jenkins has no concept of cores, |
26 |
> only "executors". Each executor can run one build at a time. Jenkins was |
27 |
> written with Java in mind (AFAIK), and Java build tools are the reason |
28 |
> for this. `javac` by default launches some number of threads (not sure |
29 |
> how many on other systems, but on my laptop it's usually 3) and compiles |
30 |
> in parallel. I'm not sure it's possible to control this (someone feel |
31 |
> free to correct me if I'm wrong), hence Jenkins does not care about |
32 |
> cores and only about how many builds are allowed to run in parallel at |
33 |
> once. |
34 |
|
35 |
I'll have to drill into javac a bit more, it seems. |
36 |
|
37 |
There is jenkins-bin on gentoo; it should (?) be a quick install and config. |
38 |
I'll keep in mind what you are saying, but my main goal is to find (CI) |
39 |
codes that I can run on gentoo-mesos clusters. Nothing about Jenkins is |
40 |
a critical need for me. Although, as a consultant I do routinely get |
41 |
asked about Jenkins experience, so just noodling around with it a bit |
42 |
is a good idea for me. |
43 |
|
44 |
|
45 |
> So, to the point; when you add more build slaves with more executors, |
46 |
> you will be able to run more builds in parallel and it will therefore be |
47 |
> faster. This gets even more complicated since you can constrain builds |
48 |
> to only run on certain hosts and various other complicated setups, but |
49 |
> in general more executors means more builds in parallel means faster. |
50 |
|
51 |
AT some point, on a single multiprocessor system, Jenkins will slow down |
52 |
even it more resources are configured for it (overall system load, if |
53 |
nothing else)? AT that point, I can note the resources and apply those |
54 |
limits to the cluster and note the performance differences. Surely, a |
55 |
cluster with more resources will be able to do more (CI_Jenkins) work; so |
56 |
discovering those details is a primary goal of this endeavour. |
57 |
|
58 |
|
59 |
|
60 |
> My main suggestion is to not bother running a Jenkins cluster and stick |
61 |
> with a single host setup unless: |
62 |
|
63 |
Sorry, the cluster, is the main_goal, not Jenkins or CI. Buds at cisco |
64 |
are all very braggadocios about CI (Jenkins and others) on their mesos |
65 |
clusters..... |
66 |
|
67 |
> * You are building so many things that utilization is near 100% |
68 |
> * You are targeting multiple platforms and therefore need multiple build |
69 |
> hosts |
70 |
|
71 |
YES, that is exactly the ultimate goal. A CI cluster, open to friends, pals |
72 |
and customers (maybe). It's all about the mesos cluster, you should know that. |
73 |
|
74 |
> P.S. I could not find any reference to parallel, threads, processes or |
75 |
> anything else on javac's man page that makes me think it is easy to set |
76 |
> the number of threads it uses. |
77 |
|
78 |
|
79 |
No surprise there. Configuring threads, cgroups, and memory resources |
80 |
is a hotly contested area of the cluster codes I have (am) working with. |
81 |
Forget bikeshedding, it Blood_shedding....... especially now that RDMA |
82 |
is hotly being pursued by the many. |
83 |
|
84 |
Thanks for your insights, |
85 |
|
86 |
James |