diff --git a/frameworks/rack-iodine/Gemfile.lock b/frameworks/rack-iodine/Gemfile.lock index 9c56b9dc7..9a5768e19 100644 --- a/frameworks/rack-iodine/Gemfile.lock +++ b/frameworks/rack-iodine/Gemfile.lock @@ -2,7 +2,7 @@ GEM remote: https://rubygems.org/ specs: iodine (0.7.58) - rack (3.2.6) + rack (3.2.7) PLATFORMS arm64-darwin-24 @@ -13,8 +13,9 @@ DEPENDENCIES rack (~> 3.0) CHECKSUMS + bundler (4.0.13) sha256=19f08be7f27022cf0b89f27da0b044ae075e8270a9ef44ad248a932614e1ca3b iodine (0.7.58) sha256=d42f3a00bc35bf1a57aba942096df323d0c46b502cd58cde765cc40304f86b49 - rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack (3.2.7) sha256=93e13e1c24f93556671d85d2d79fa228c3485815c50d7e2f265b5330c6528fb7 BUNDLED WITH - 4.0.8 + 4.0.13 diff --git a/site/data/results/rack-iodine.json b/site/data/results/rack-iodine.json index c1857f55f..f3d3bff15 100644 --- a/site/data/results/rack-iodine.json +++ b/site/data/results/rack-iodine.json @@ -4,19 +4,19 @@ "baseline-4096": { "framework": "rack-iodine", "language": "Ruby", - "rps": 65472, - "avg_latency": "59.13ms", - "p99_latency": "237.40ms", - "cpu": "4803.4%", - "memory": "5.3GiB", + "rps": 97691, + "avg_latency": "39.61ms", + "p99_latency": "338.70ms", + "cpu": "4737.6%", + "memory": "5.1GiB", "connections": 4096, "threads": 64, "duration": "5s", "pipeline": 1, - "bandwidth": "7.68MB/s", - "input_bw": "5.06MB/s", + "bandwidth": "11.46MB/s", + "input_bw": "7.55MB/s", "reconnects": 0, - "status_2xx": 327361, + "status_2xx": 488455, "status_3xx": 0, "status_4xx": 0, "status_5xx": 0 @@ -24,67 +24,67 @@ "latency-10k-1024": { "framework": "rack-iodine", "language": "Ruby", - "rps": 9949, - "avg_latency": "154.5us", - "p99_latency": "155.0us", - "cpu": "101.4%", + "rps": 9965, + "avg_latency": "120.6us", + "p99_latency": "146.0us", + "cpu": "86.4%", "memory": "4.8GiB", "connections": 1024, "threads": 64, "duration": "20s", "pipeline": 1, - "bandwidth": "1.21MB/s", + "bandwidth": "1.22MB/s", "reconnects": 0, - "status_2xx": 199014, + "status_2xx": 199329, "status_3xx": 0, "status_4xx": 0, "status_5xx": 0, - "cpu_usec": 15583521, - "cpu_per_req_us": 78.3036, + "cpu_usec": 13906503, + "cpu_per_req_us": 69.7666, "target_rate": 10000, - "rate_ratio": 0.9949, - "p99_9_latency": "33328.0us" + "rate_ratio": 0.9965, + "p99_9_latency": "13300.0us" }, "latency-1m-1024": { "framework": "rack-iodine", "language": "Ruby", - "rps": 951153, - "avg_latency": "250735.4us", - "p99_latency": "7575552.0us", - "cpu": "6243.6%", + "rps": 995521, + "avg_latency": "679.0us", + "p99_latency": "6434.0us", + "cpu": "6399.5%", "memory": "4.8GiB", "connections": 1024, "threads": 64, "duration": "20s", "pipeline": 1, - "bandwidth": "116.04MB/s", + "bandwidth": "121.45MB/s", "reconnects": 0, - "status_2xx": 19028566, + "status_2xx": 19914467, "status_3xx": 0, "status_4xx": 0, "status_5xx": 0, - "cpu_usec": 1162043903, - "cpu_per_req_us": 61.0684, + "cpu_usec": 1195277936, + "cpu_per_req_us": 60.0206, "target_rate": 1000000, - "rate_ratio": 0.9512, - "p99_9_latency": "10424320.0us" + "rate_ratio": 0.9955, + "p99_9_latency": "77024.0us" }, "limited-conn-4096": { "framework": "rack-iodine", "language": "Ruby", - "rps": 59205, - "avg_latency": "66.55ms", - "p99_latency": "266.30ms", - "cpu": "4693.3%", + "rps": 59965, + "avg_latency": "65.70ms", + "p99_latency": "303.20ms", + "cpu": "4771.5%", "memory": "5.2GiB", "connections": 4096, "threads": 64, "duration": "5s", "pipeline": 1, - "bandwidth": "6.94MB/s", - "input_bw": "4.57MB/s", - "reconnects": 27812, - "status_2xx": 296026, + "bandwidth": "7.03MB/s", + "input_bw": "4.63MB/s", + "reconnects": 28142, + "status_2xx": 299826, "status_3xx": 0, "status_4xx": 0, "status_5xx": 0 @@ -92,18 +92,18 @@ "pipelined-4096": { "framework": "rack-iodine", "language": "Ruby", - "rps": 2054716, - "avg_latency": "30.96ms", - "p99_latency": "94.70ms", - "cpu": "6595.0%", - "memory": "4.6GiB", + "rps": 2463807, + "avg_latency": "25.78ms", + "p99_latency": "71.40ms", + "cpu": "6522.7%", + "memory": "4.5GiB", "connections": 4096, "threads": 64, "duration": "5s", "pipeline": 16, - "bandwidth": "240.95MB/s", + "bandwidth": "288.92MB/s", "reconnects": 0, - "status_2xx": 10273582, + "status_2xx": 12319036, "status_3xx": 0, "status_4xx": 0, "status_5xx": 0 diff --git a/site/static/logs/baseline/4096/rack-iodine.log b/site/static/logs/baseline/4096/rack-iodine.log index 4ca0e2ed3..b42a4e6ad 100644 --- a/site/static/logs/baseline/4096/rack-iodine.log +++ b/site/static/logs/baseline/4096/rack-iodine.log @@ -2,14 +2,14 @@ INFO: Listening on port 8080 INFO: Starting up Iodine: * Iodine 0.7.58 - * Ruby 4.0.5 + * Ruby 4.0.6 * facil.io 0.7.4 (epoll) * 127 Workers X 1 Threads per worker. * Maximum 131056 open files / sockets per worker. * Master (root) process: 1. INFO: Server is running 127 workers X 1 thread with facil.io 0.7.4 (epoll) -* Linked to OpenSSL 3.5.6 7 Apr 2026 +* Linked to OpenSSL 3.5.7 9 Jun 2026 * Detected capacity: 131056 open file limit * Root pid: 1 * Press ^C to stop @@ -20,45 +20,45 @@ INFO: 18 is running. INFO: 22 is running. INFO: 26 is running. INFO: 30 is running. -INFO: 35 is running. -INFO: 40 is running. -INFO: 45 is running. -INFO: 50 is running. -INFO: 55 is running. +INFO: 34 is running. +INFO: 39 is running. +INFO: 43 is running. +INFO: 49 is running. +INFO: 54 is running. INFO: 60 is running. INFO: 65 is running. -INFO: 70 is running. -INFO: 75 is running. -INFO: 80 is running. +INFO: 71 is running. +INFO: 76 is running. +INFO: 81 is running. INFO: 85 is running. INFO: 90 is running. INFO: 95 is running. INFO: 100 is running. INFO: 105 is running. INFO: 110 is running. -INFO: 116 is running. +INFO: 115 is running. INFO: 121 is running. INFO: 126 is running. INFO: 131 is running. INFO: 136 is running. -INFO: 141 is running. -INFO: 146 is running. -INFO: 151 is running. -INFO: 156 is running. -INFO: 161 is running. -INFO: 166 is running. -INFO: 171 is running. -INFO: 175 is running. -INFO: 181 is running. -INFO: 186 is running. -INFO: 191 is running. +INFO: 142 is running. +INFO: 147 is running. +INFO: 152 is running. +INFO: 157 is running. +INFO: 162 is running. +INFO: 167 is running. +INFO: 172 is running. +INFO: 177 is running. +INFO: 182 is running. +INFO: 187 is running. +INFO: 192 is running. INFO: 197 is running. -INFO: 202 is running. -INFO: 207 is running. +INFO: 201 is running. +INFO: 206 is running. INFO: 211 is running. INFO: 216 is running. -INFO: 221 is running. -INFO: 226 is running. +INFO: 222 is running. +INFO: 227 is running. INFO: 232 is running. INFO: 237 is running. INFO: 242 is running. @@ -76,28 +76,28 @@ INFO: 299 is running. INFO: 303 is running. INFO: 307 is running. INFO: 312 is running. -INFO: 318 is running. +INFO: 317 is running. INFO: 323 is running. INFO: 327 is running. -INFO: 333 is running. -INFO: 338 is running. +INFO: 332 is running. +INFO: 337 is running. INFO: 342 is running. -INFO: 348 is running. -INFO: 353 is running. -INFO: 358 is running. +INFO: 347 is running. +INFO: 352 is running. +INFO: 357 is running. INFO: 362 is running. -INFO: 368 is running. -INFO: 373 is running. -INFO: 378 is running. +INFO: 367 is running. +INFO: 372 is running. +INFO: 377 is running. INFO: 383 is running. INFO: 388 is running. INFO: 393 is running. INFO: 398 is running. INFO: 403 is running. INFO: 408 is running. -INFO: 412 is running. -INFO: 417 is running. -INFO: 422 is running. +INFO: 413 is running. +INFO: 418 is running. +INFO: 423 is running. INFO: 428 is running. INFO: 433 is running. INFO: 438 is running. @@ -130,14 +130,14 @@ INFO: 568 is running. INFO: 573 is running. INFO: 578 is running. INFO: 583 is running. -INFO: 588 is running. -INFO: 593 is running. -INFO: 598 is running. +INFO: 589 is running. +INFO: 594 is running. +INFO: 599 is running. INFO: 604 is running. INFO: 610 is running. +INFO: 614 is running. INFO: 619 is running. -INFO: 623 is running. +INFO: 624 is running. INFO: 628 is running. -INFO: 633 is running. -INFO: 638 is running. -INFO: 614 is running. +INFO: 634 is running. +INFO: 639 is running. diff --git a/site/static/logs/latency-10k/1024/rack-iodine.log b/site/static/logs/latency-10k/1024/rack-iodine.log index 3b7aaf3f7..842ffeeac 100644 --- a/site/static/logs/latency-10k/1024/rack-iodine.log +++ b/site/static/logs/latency-10k/1024/rack-iodine.log @@ -20,26 +20,26 @@ INFO: 18 is running. INFO: 22 is running. INFO: 26 is running. INFO: 30 is running. -INFO: 35 is running. -INFO: 41 is running. -INFO: 45 is running. -INFO: 51 is running. -INFO: 55 is running. -INFO: 60 is running. +INFO: 34 is running. +INFO: 39 is running. +INFO: 44 is running. +INFO: 49 is running. +INFO: 54 is running. +INFO: 59 is running. INFO: 65 is running. -INFO: 70 is running. -INFO: 75 is running. +INFO: 71 is running. +INFO: 76 is running. INFO: 80 is running. INFO: 85 is running. INFO: 90 is running. INFO: 95 is running. INFO: 100 is running. -INFO: 106 is running. -INFO: 111 is running. -INFO: 116 is running. -INFO: 121 is running. -INFO: 126 is running. -INFO: 131 is running. +INFO: 105 is running. +INFO: 110 is running. +INFO: 115 is running. +INFO: 120 is running. +INFO: 125 is running. +INFO: 130 is running. INFO: 136 is running. INFO: 141 is running. INFO: 146 is running. @@ -48,50 +48,50 @@ INFO: 156 is running. INFO: 161 is running. INFO: 166 is running. INFO: 171 is running. -INFO: 177 is running. -INFO: 182 is running. +INFO: 176 is running. +INFO: 181 is running. INFO: 187 is running. -INFO: 192 is running. -INFO: 197 is running. -INFO: 202 is running. -INFO: 207 is running. +INFO: 191 is running. +INFO: 196 is running. +INFO: 201 is running. +INFO: 206 is running. INFO: 212 is running. INFO: 217 is running. -INFO: 222 is running. -INFO: 227 is running. +INFO: 221 is running. +INFO: 226 is running. INFO: 232 is running. INFO: 237 is running. INFO: 242 is running. INFO: 247 is running. INFO: 252 is running. INFO: 257 is running. -INFO: 261 is running. +INFO: 262 is running. INFO: 267 is running. INFO: 272 is running. INFO: 277 is running. INFO: 282 is running. INFO: 287 is running. -INFO: 292 is running. -INFO: 300 is running. -INFO: 304 is running. -INFO: 308 is running. +INFO: 295 is running. +INFO: 299 is running. +INFO: 303 is running. +INFO: 307 is running. INFO: 312 is running. INFO: 317 is running. -INFO: 322 is running. -INFO: 327 is running. -INFO: 333 is running. -INFO: 338 is running. -INFO: 342 is running. +INFO: 323 is running. +INFO: 328 is running. +INFO: 332 is running. +INFO: 337 is running. +INFO: 343 is running. INFO: 348 is running. INFO: 353 is running. INFO: 358 is running. INFO: 363 is running. -INFO: 367 is running. -INFO: 372 is running. -INFO: 377 is running. -INFO: 382 is running. +INFO: 368 is running. +INFO: 373 is running. +INFO: 378 is running. +INFO: 383 is running. INFO: 388 is running. -INFO: 392 is running. +INFO: 393 is running. INFO: 398 is running. INFO: 403 is running. INFO: 408 is running. diff --git a/site/static/logs/latency-1m/1024/rack-iodine.log b/site/static/logs/latency-1m/1024/rack-iodine.log index 2fcfb87aa..822c22a90 100644 --- a/site/static/logs/latency-1m/1024/rack-iodine.log +++ b/site/static/logs/latency-1m/1024/rack-iodine.log @@ -20,24 +20,24 @@ INFO: 18 is running. INFO: 22 is running. INFO: 26 is running. INFO: 30 is running. -INFO: 35 is running. -INFO: 40 is running. +INFO: 34 is running. +INFO: 39 is running. INFO: 44 is running. -INFO: 49 is running. +INFO: 50 is running. INFO: 54 is running. -INFO: 59 is running. -INFO: 64 is running. +INFO: 58 is running. +INFO: 65 is running. INFO: 69 is running. INFO: 75 is running. INFO: 80 is running. INFO: 85 is running. INFO: 90 is running. INFO: 95 is running. -INFO: 100 is running. -INFO: 105 is running. -INFO: 110 is running. -INFO: 115 is running. -INFO: 120 is running. +INFO: 101 is running. +INFO: 106 is running. +INFO: 111 is running. +INFO: 116 is running. +INFO: 121 is running. INFO: 126 is running. INFO: 131 is running. INFO: 136 is running. @@ -46,16 +46,16 @@ INFO: 146 is running. INFO: 151 is running. INFO: 156 is running. INFO: 161 is running. -INFO: 166 is running. +INFO: 165 is running. INFO: 171 is running. INFO: 176 is running. -INFO: 182 is running. +INFO: 181 is running. INFO: 187 is running. INFO: 192 is running. INFO: 197 is running. INFO: 202 is running. -INFO: 207 is running. -INFO: 212 is running. +INFO: 206 is running. +INFO: 211 is running. INFO: 217 is running. INFO: 222 is running. INFO: 227 is running. @@ -71,21 +71,21 @@ INFO: 272 is running. INFO: 277 is running. INFO: 282 is running. INFO: 287 is running. -INFO: 292 is running. -INFO: 300 is running. -INFO: 304 is running. -INFO: 308 is running. +INFO: 295 is running. +INFO: 299 is running. +INFO: 303 is running. +INFO: 307 is running. INFO: 312 is running. INFO: 317 is running. INFO: 322 is running. INFO: 327 is running. INFO: 332 is running. -INFO: 338 is running. +INFO: 337 is running. INFO: 343 is running. INFO: 348 is running. INFO: 353 is running. -INFO: 358 is running. -INFO: 363 is running. +INFO: 357 is running. +INFO: 362 is running. INFO: 368 is running. INFO: 373 is running. INFO: 378 is running. @@ -99,7 +99,7 @@ INFO: 413 is running. INFO: 418 is running. INFO: 423 is running. INFO: 428 is running. -INFO: 433 is running. +INFO: 432 is running. INFO: 438 is running. INFO: 443 is running. INFO: 448 is running. diff --git a/site/static/logs/limited-conn/4096/rack-iodine.log b/site/static/logs/limited-conn/4096/rack-iodine.log index 227deed7d..b8e5a58e7 100644 --- a/site/static/logs/limited-conn/4096/rack-iodine.log +++ b/site/static/logs/limited-conn/4096/rack-iodine.log @@ -2,14 +2,14 @@ INFO: Listening on port 8080 INFO: Starting up Iodine: * Iodine 0.7.58 - * Ruby 4.0.5 + * Ruby 4.0.6 * facil.io 0.7.4 (epoll) * 127 Workers X 1 Threads per worker. * Maximum 131056 open files / sockets per worker. * Master (root) process: 1. INFO: Server is running 127 workers X 1 thread with facil.io 0.7.4 (epoll) -* Linked to OpenSSL 3.5.6 7 Apr 2026 +* Linked to OpenSSL 3.5.7 9 Jun 2026 * Detected capacity: 131056 open file limit * Root pid: 1 * Press ^C to stop @@ -20,41 +20,41 @@ INFO: 18 is running. INFO: 22 is running. INFO: 26 is running. INFO: 30 is running. -INFO: 34 is running. -INFO: 39 is running. -INFO: 44 is running. -INFO: 48 is running. -INFO: 54 is running. -INFO: 59 is running. -INFO: 64 is running. -INFO: 69 is running. -INFO: 74 is running. -INFO: 79 is running. -INFO: 84 is running. +INFO: 35 is running. +INFO: 40 is running. +INFO: 45 is running. +INFO: 50 is running. +INFO: 55 is running. +INFO: 60 is running. +INFO: 66 is running. +INFO: 70 is running. +INFO: 75 is running. +INFO: 80 is running. +INFO: 85 is running. INFO: 90 is running. INFO: 95 is running. INFO: 100 is running. INFO: 105 is running. -INFO: 110 is running. -INFO: 115 is running. -INFO: 120 is running. +INFO: 111 is running. +INFO: 116 is running. +INFO: 121 is running. INFO: 126 is running. INFO: 131 is running. INFO: 136 is running. -INFO: 140 is running. -INFO: 145 is running. -INFO: 150 is running. -INFO: 155 is running. -INFO: 161 is running. -INFO: 166 is running. +INFO: 141 is running. +INFO: 146 is running. +INFO: 151 is running. +INFO: 157 is running. +INFO: 162 is running. +INFO: 167 is running. INFO: 171 is running. INFO: 177 is running. -INFO: 181 is running. -INFO: 186 is running. +INFO: 182 is running. +INFO: 187 is running. INFO: 191 is running. INFO: 196 is running. INFO: 201 is running. -INFO: 206 is running. +INFO: 207 is running. INFO: 212 is running. INFO: 217 is running. INFO: 222 is running. @@ -71,25 +71,25 @@ INFO: 272 is running. INFO: 277 is running. INFO: 282 is running. INFO: 287 is running. -INFO: 292 is running. -INFO: 300 is running. -INFO: 304 is running. -INFO: 308 is running. -INFO: 313 is running. -INFO: 318 is running. -INFO: 323 is running. +INFO: 295 is running. +INFO: 299 is running. +INFO: 303 is running. +INFO: 307 is running. +INFO: 312 is running. +INFO: 317 is running. +INFO: 322 is running. INFO: 327 is running. -INFO: 332 is running. -INFO: 337 is running. +INFO: 333 is running. +INFO: 338 is running. INFO: 342 is running. INFO: 347 is running. INFO: 352 is running. -INFO: 357 is running. -INFO: 362 is running. -INFO: 367 is running. -INFO: 372 is running. -INFO: 377 is running. -INFO: 382 is running. +INFO: 358 is running. +INFO: 363 is running. +INFO: 368 is running. +INFO: 373 is running. +INFO: 378 is running. +INFO: 383 is running. INFO: 388 is running. INFO: 393 is running. INFO: 398 is running. @@ -136,8 +136,8 @@ INFO: 598 is running. INFO: 603 is running. INFO: 610 is running. INFO: 614 is running. -INFO: 620 is running. +INFO: 618 is running. INFO: 624 is running. -INFO: 633 is running. -INFO: 638 is running. INFO: 629 is running. +INFO: 634 is running. +INFO: 639 is running. diff --git a/site/static/logs/pipelined/4096/rack-iodine.log b/site/static/logs/pipelined/4096/rack-iodine.log index dedd710b3..3fc2bc614 100644 --- a/site/static/logs/pipelined/4096/rack-iodine.log +++ b/site/static/logs/pipelined/4096/rack-iodine.log @@ -2,14 +2,14 @@ INFO: Listening on port 8080 INFO: Starting up Iodine: * Iodine 0.7.58 - * Ruby 4.0.5 + * Ruby 4.0.6 * facil.io 0.7.4 (epoll) * 127 Workers X 1 Threads per worker. * Maximum 131056 open files / sockets per worker. * Master (root) process: 1. INFO: Server is running 127 workers X 1 thread with facil.io 0.7.4 (epoll) -* Linked to OpenSSL 3.5.6 7 Apr 2026 +* Linked to OpenSSL 3.5.7 9 Jun 2026 * Detected capacity: 131056 open file limit * Root pid: 1 * Press ^C to stop @@ -22,8 +22,8 @@ INFO: 26 is running. INFO: 30 is running. INFO: 34 is running. INFO: 39 is running. -INFO: 44 is running. -INFO: 49 is running. +INFO: 43 is running. +INFO: 48 is running. INFO: 54 is running. INFO: 59 is running. INFO: 65 is running. @@ -31,31 +31,31 @@ INFO: 70 is running. INFO: 75 is running. INFO: 80 is running. INFO: 85 is running. -INFO: 91 is running. -INFO: 96 is running. -INFO: 101 is running. -INFO: 106 is running. -INFO: 111 is running. +INFO: 90 is running. +INFO: 95 is running. +INFO: 100 is running. +INFO: 105 is running. +INFO: 110 is running. INFO: 116 is running. -INFO: 120 is running. -INFO: 125 is running. -INFO: 130 is running. -INFO: 135 is running. +INFO: 121 is running. +INFO: 126 is running. +INFO: 131 is running. +INFO: 136 is running. INFO: 141 is running. INFO: 146 is running. INFO: 151 is running. INFO: 156 is running. -INFO: 162 is running. +INFO: 161 is running. INFO: 166 is running. INFO: 171 is running. INFO: 176 is running. -INFO: 181 is running. -INFO: 186 is running. +INFO: 182 is running. +INFO: 187 is running. INFO: 191 is running. INFO: 196 is running. INFO: 201 is running. -INFO: 206 is running. -INFO: 211 is running. +INFO: 207 is running. +INFO: 212 is running. INFO: 217 is running. INFO: 222 is running. INFO: 227 is running. @@ -65,8 +65,8 @@ INFO: 242 is running. INFO: 247 is running. INFO: 252 is running. INFO: 257 is running. -INFO: 261 is running. -INFO: 266 is running. +INFO: 262 is running. +INFO: 267 is running. INFO: 272 is running. INFO: 277 is running. INFO: 282 is running. @@ -79,21 +79,21 @@ INFO: 312 is running. INFO: 317 is running. INFO: 322 is running. INFO: 327 is running. -INFO: 333 is running. +INFO: 332 is running. INFO: 338 is running. INFO: 343 is running. -INFO: 347 is running. -INFO: 352 is running. -INFO: 357 is running. -INFO: 362 is running. -INFO: 367 is running. -INFO: 372 is running. -INFO: 377 is running. -INFO: 382 is running. -INFO: 387 is running. -INFO: 392 is running. -INFO: 397 is running. -INFO: 402 is running. +INFO: 348 is running. +INFO: 353 is running. +INFO: 358 is running. +INFO: 363 is running. +INFO: 368 is running. +INFO: 373 is running. +INFO: 378 is running. +INFO: 383 is running. +INFO: 388 is running. +INFO: 393 is running. +INFO: 398 is running. +INFO: 403 is running. INFO: 408 is running. INFO: 413 is running. INFO: 418 is running. @@ -134,10 +134,10 @@ INFO: 588 is running. INFO: 593 is running. INFO: 598 is running. INFO: 603 is running. -INFO: 614 is running. INFO: 610 is running. -INFO: 619 is running. -INFO: 629 is running. +INFO: 614 is running. +INFO: 618 is running. +INFO: 623 is running. INFO: 634 is running. -INFO: 639 is running. -INFO: 624 is running. +INFO: 638 is running. +INFO: 629 is running.