Renamed to DarkStruct

This commit is contained in:
2026-08-26 10:11:29 -04:00
parent 630bf5f9a7
commit 4aed713939
17 changed files with 62 additions and 62 deletions

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env julia
#
# bench.jl: measure end-to-end throughput and server memory for a running FileServer.
# bench.jl: measure end-to-end throughput and server memory for a running DarkStruct.
#
# Two things make this pipeline awkward to benchmark with off-the-shelf tools
# (ab/hey/wrk), and both shape what this script does:
@@ -143,7 +143,7 @@ end
#
# Resolved from the same environment variables src/config.jl reads, so a server
# started with custom dirs is benchmarked correctly. Kept as a standalone table
# rather than `using FileServer` so the harness doesn't pay to load Lux.
# rather than `using DarkStruct` so the harness doesn't pay to load Lux.
sinkdirs() = (
done = get(ENV, "FS_DONE_DIR", "data/done"),

View File

@@ -25,7 +25,7 @@
# guess. This sweep is what demoted stage 1's per-file lines to `@debug`
# (see the note in src/worker.jl); the standalone `logging (...)` rows below
# still price a *formatted* line, i.e. what those lines cost when switched
# back on with `JULIA_DEBUG=FileServer`, while the handler rows show what the
# back on with `JULIA_DEBUG=DarkStruct`, while the handler rows show what the
# stage pays with them off.
# * Concurrency. Components that own a lock (the queue's condition, the
# logger's stream) don't scale, and the ranking at one worker need not be the
@@ -48,14 +48,14 @@
# Reported times are the *minimum* over trials: the floor is the signal and
# everything above it is scheduler, page-cache and GC noise.
using FileServer
using DarkStruct
using Lux
using JSON3
using Logging
using Printf
using Random
const FS = FileServer
const FS = DarkStruct
# ---------------------------------------------------------------- option parsing
@@ -222,10 +222,10 @@ Run `f` under one of the three loggers the cost of logging is bracketed by:
* `:format` `ConsoleLogger` to `devnull`: message formatting and key/value
interpolation, but no I/O.
* `:flush` `FlushLogger(ConsoleLogger(io))` to a real file: what
`FileServer.run` installs, under the redirect it was written for.
`DarkStruct.run` installs, under the redirect it was written for.
* `:debug` the same, at `Debug` level: the stage's per-file lines are
`@debug`, so this is the equivalent of running the server with
`JULIA_DEBUG=FileServer` and the only setting under which they
`JULIA_DEBUG=DarkStruct` and the only setting under which they
are emitted at all.
"""
function with_logger_named(f, which::Symbol, path::AbstractString)

View File

@@ -65,13 +65,13 @@
# Reported times are the *minimum* over trials: the floor is the signal and
# everything above it is scheduler, page-cache and GC noise.
using FileServer
using DarkStruct
using JSON3
using Logging
using Printf
using Random
const FS = FileServer
const FS = DarkStruct
# ---------------------------------------------------------------- option parsing
@@ -245,7 +245,7 @@ Run `f` under one of the loggers the cost of logging is bracketed by:
* `:format` `ConsoleLogger` to `devnull`: message formatting and key/value
interpolation, but no I/O.
* `:flush` `FlushLogger(ConsoleLogger(io))` to a real file: what
`FileServer.run` installs, under the redirect it was written
`DarkStruct.run` installs, under the redirect it was written
for. Stage 2's per-file line is `@info`, not `@debug`, so this
row is what the deployed server actually pays.
"""

View File

@@ -14,6 +14,6 @@
# auto-promotes to a compaction pass to seed the catalog. Configure via the
# FS_CLUSTER_* / FS_NOMINATED_DIR env vars (see src/config.jl).
using FileServer
using DarkStruct
FileServer.cluster_sweep_cli(ARGS)
DarkStruct.cluster_sweep_cli(ARGS)

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# send_dir.sh — upload every file in a directory to a running FileServer.
# send_dir.sh — upload every file in a directory to a running DarkStruct.
#
# Each file is POSTed to /upload as multipart/form-data. By default one file per
# request (so you get per-file feedback); use -b to batch all files into a

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env julia
# Entry point. Run with: julia --project -t auto bin/server.jl
using FileServer
FileServer.run()
using DarkStruct
DarkStruct.run()