Gentoo Archives: gentoo-user

From: James <wireless@×××××××××××.com>
To: gentoo-user@l.g.o
Subject: [gentoo-user] Re: Jenkins
Date: Sat, 20 Jun 2015 20:18:59
Message-Id: loom.20150620T215543-796@post.gmane.org
In Reply to: Re: [gentoo-user] Jenkins by Alec Ten Harmsel
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