Xunzhuo commited on
Commit
093cffb
·
verified ·
1 Parent(s): 2de0bdd

Runtime: faster System One server replies

Browse files
Files changed (2) hide show
  1. MODEL_MANIFEST.json +3 -3
  2. d3_server.py +4 -0
MODEL_MANIFEST.json CHANGED
@@ -569,7 +569,7 @@
569
  "d3_kernels.py": "8f7534ca1e1846ebf7c4c73058002f3be4dbf0d5d426f0815150ae0cbe7677bd",
570
  "modeling_d3.py": "f8f8db23ff58f1a990ffa24977d744a50e1b4446d02a64c22070967705b6dbef",
571
  "pipeline_d3.py": "4f9297c7c74e596e9b67df91a1e6823cfada48bf781336f141974ff6a2f1038e",
572
- "d3_server.py": "934f5cd583176ed368e513484aa2aa854d378f948685114c9185b4c38d41e85d",
573
  "d3_engine.py": "086238942762df45047a32cd9a8e2bedd9b63167eb40be260c776de567979f53",
574
  "requirements.txt": "de9defd71ae4e559a7f5bdcc935b23716f9788e8755f2ba6db1ab6862bcda12e",
575
  "d3_format.py": "3badfbc70561bb3f5b8ec16a11d2c455b96ddb32caace0a8a54ca102eae1f3fa"
@@ -605,7 +605,7 @@
605
  "d3_format.py": "3badfbc70561bb3f5b8ec16a11d2c455b96ddb32caace0a8a54ca102eae1f3fa",
606
  "d3_kernels.py": "8f7534ca1e1846ebf7c4c73058002f3be4dbf0d5d426f0815150ae0cbe7677bd",
607
  "d3_runtime.py": "3a38391f182b4f02988cf6f009eeb7dccd8d09a3617e686012e289b69cf5082a",
608
- "d3_server.py": "934f5cd583176ed368e513484aa2aa854d378f948685114c9185b4c38d41e85d",
609
  "decision_config.json": "6b80ca11bd6ba481df4b3c187db8a5d1983786563ca05e2edccb0bdac0d2fc4f",
610
  "merges.txt": "a9d356d7bdf1ef4949e3e748e95b8e10ad9d4e2e838eddc38a0a7b6b94d1db8d",
611
  "model-00001-of-00011.safetensors": "4ecb29a7d1e2d1d0ad97008e5405a11d510a8a712a0b6491928359176fd56029",
@@ -646,7 +646,7 @@
646
  "d3_format.py": 7008,
647
  "d3_kernels.py": 16129,
648
  "d3_runtime.py": 93977,
649
- "d3_server.py": 17438,
650
  "decision_config.json": 5503,
651
  "merges.txt": 3353259,
652
  "model-00001-of-00011.safetensors": 4997471976,
 
569
  "d3_kernels.py": "8f7534ca1e1846ebf7c4c73058002f3be4dbf0d5d426f0815150ae0cbe7677bd",
570
  "modeling_d3.py": "f8f8db23ff58f1a990ffa24977d744a50e1b4446d02a64c22070967705b6dbef",
571
  "pipeline_d3.py": "4f9297c7c74e596e9b67df91a1e6823cfada48bf781336f141974ff6a2f1038e",
572
+ "d3_server.py": "766a20a69101e36ab0535a1ec683379db422380a83091f0eccd7e82edb6a02de",
573
  "d3_engine.py": "086238942762df45047a32cd9a8e2bedd9b63167eb40be260c776de567979f53",
574
  "requirements.txt": "de9defd71ae4e559a7f5bdcc935b23716f9788e8755f2ba6db1ab6862bcda12e",
575
  "d3_format.py": "3badfbc70561bb3f5b8ec16a11d2c455b96ddb32caace0a8a54ca102eae1f3fa"
 
605
  "d3_format.py": "3badfbc70561bb3f5b8ec16a11d2c455b96ddb32caace0a8a54ca102eae1f3fa",
606
  "d3_kernels.py": "8f7534ca1e1846ebf7c4c73058002f3be4dbf0d5d426f0815150ae0cbe7677bd",
607
  "d3_runtime.py": "3a38391f182b4f02988cf6f009eeb7dccd8d09a3617e686012e289b69cf5082a",
608
+ "d3_server.py": "766a20a69101e36ab0535a1ec683379db422380a83091f0eccd7e82edb6a02de",
609
  "decision_config.json": "6b80ca11bd6ba481df4b3c187db8a5d1983786563ca05e2edccb0bdac0d2fc4f",
610
  "merges.txt": "a9d356d7bdf1ef4949e3e748e95b8e10ad9d4e2e838eddc38a0a7b6b94d1db8d",
611
  "model-00001-of-00011.safetensors": "4ecb29a7d1e2d1d0ad97008e5405a11d510a8a712a0b6491928359176fd56029",
 
646
  "d3_format.py": 7008,
647
  "d3_kernels.py": 16129,
648
  "d3_runtime.py": 93977,
649
+ "d3_server.py": 17705,
650
  "decision_config.json": 5503,
651
  "merges.txt": 3353259,
652
  "model-00001-of-00011.safetensors": 4997471976,
d3_server.py CHANGED
@@ -172,6 +172,8 @@ class SystemOneServer(ThreadingHTTPServer):
172
  """One listening socket; a thread per connection; the model runs under the decider's lock."""
173
 
174
  daemon_threads = True
 
 
175
 
176
  def __init__(self, address: tuple[str, int], decider: Decider, *, api_key: str | None = None):
177
  super().__init__(address, SystemOneHandler)
@@ -184,6 +186,8 @@ class SystemOneHandler(BaseHTTPRequestHandler):
184
  server_version = "d3-server"
185
  sys_version = ""
186
  timeout = IDLE_SECONDS
 
 
187
  # A request line the standard library cannot parse gets a plain-text error with a full status line.
188
  default_request_version = "HTTP/1.1"
189
  error_content_type = "text/plain; charset=utf-8"
 
172
  """One listening socket; a thread per connection; the model runs under the decider's lock."""
173
 
174
  daemon_threads = True
175
+ # Room for many clients connecting at once (the standard library's default backlog is 5).
176
+ request_queue_size = 128
177
 
178
  def __init__(self, address: tuple[str, int], decider: Decider, *, api_key: str | None = None):
179
  super().__init__(address, SystemOneHandler)
 
186
  server_version = "d3-server"
187
  sys_version = ""
188
  timeout = IDLE_SECONDS
189
+ # Headers and body are separate writes; without TCP_NODELAY the body waits for the client's delayed ACK.
190
+ disable_nagle_algorithm = True
191
  # A request line the standard library cannot parse gets a plain-text error with a full status line.
192
  default_request_version = "HTTP/1.1"
193
  error_content_type = "text/plain; charset=utf-8"