Overview
Comment: | fixed a couple bugs in common:get-least-loaded-host |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
4b3bf0b62b388077c1c2756aefd6b39c |
User & Date: | bjbarcla on 2016-12-13 17:17:06 |
Other Links: | manifest | tags |
Context
2017-02-09
| ||
21:02 | Merged v1.63 to trunk check-in: 31e9f07df0 user: matt tags: trunk | |
2016-12-14
| ||
15:28 | merged work done on trunk accidentally check-in: 327a91c7af user: bjbarcla tags: v1.63 | |
2016-12-13
| ||
18:01 | Automated merge of trunk/4b3bf0b62b/integ into integ-home check-in: b5b44bddc1 user: matt tags: integ-home | |
17:17 | fixed a couple bugs in common:get-least-loaded-host check-in: 4b3bf0b62b user: bjbarcla tags: trunk | |
2016-12-12
| ||
14:11 | Added info to docs re. scriptinc. check-in: 36aa2d76fe user: mrwellan tags: trunk | |
Changes
Modified common.scm from [0f56c7d848] to [7404179285].
︙ | ︙ | |||
1141 1142 1143 1144 1145 1146 1147 | (define (common:unix-ping hostname) (let ((res (system (conc "ping -c 1 " hostname " > /dev/null")))) (eq? res 0))) ;; ideally put all this info into the db, no need to preserve it across moving homehost ;; | | > > > | 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 | (define (common:unix-ping hostname) (let ((res (system (conc "ping -c 1 " hostname " > /dev/null")))) (eq? res 0))) ;; ideally put all this info into the db, no need to preserve it across moving homehost ;; (define (common:get-least-loaded-host hosts-raw) (let* ((hosts (filter (lambda (x) (string-match (regexp "^\\S+$") x)) hosts-raw))) (if (null? hosts) #f ;; ;; stategy: ;; sort by last-used and normalized-load ;; if last-updated > 15 seconds then re-update ;; take the host with the lowest load with the lowest last-used (i.e. not used for longest time) |
︙ | ︙ | |||
1176 1177 1178 1179 1180 1181 1182 | (cond ((not best-host) (set! best-host hostname)) ((and ping-good (< (alist-ref 'adj-core-load (host-last-cpuload rec)) (alist-ref 'adj-core-load (host-last-cpuload (hash-table-ref *host-loads* best-host))))) | | | | 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 | (cond ((not best-host) (set! best-host hostname)) ((and ping-good (< (alist-ref 'adj-core-load (host-last-cpuload rec)) (alist-ref 'adj-core-load (host-last-cpuload (hash-table-ref *host-loads* best-host))))) (set! best-host hostname))))) hosts) best-host)))) (define (common:wait-for-cpuload maxload numcpus waitdelay #!key (count 1000) (msg #f)(remote-host #f)) (let* ((loadavg (common:get-cpu-load remote-host)) (first (car loadavg)) (next (cadr loadavg)) (adjload (* maxload numcpus)) (loadjmp (- first next))) |
︙ | ︙ |