Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions src/OpenRoad.cc
Original file line number Diff line number Diff line change
Expand Up @@ -273,8 +273,7 @@ void OpenRoad::init(Tcl_Interp* tcl_interp,
icewall_ = new pad::ICeWall(db_, logger_);
dft_ = new dft::Dft(db_, sta_, logger_);
example_ = new exa::Example(db_, logger_);
web_server_
= new web::WebServer(db_, sta_, logger_, tcl_interp, getThreadCount());
web_server_ = new web::WebServer(db_, sta_, logger_, tcl_interp);
Comment thread
gadfort marked this conversation as resolved.

// Init components.
Ord_Init(tcl_interp);
Expand Down Expand Up @@ -687,6 +686,9 @@ void OpenRoad::setThreadCount(int threads, bool print_info)
if (global_router_ != nullptr) {
global_router_->setNumThreads(threads_);
}
if (web_server_ != nullptr) {
web_server_->setThreadCount(threads_);
}
}

void OpenRoad::setThreadCount(const char* threads, bool print_info)
Expand Down
7 changes: 5 additions & 2 deletions src/web/include/web/web.h
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,7 @@ class WebServer
WebServer(odb::dbDatabase* db,
sta::dbSta* sta,
utl::Logger* logger,
Tcl_Interp* interp,
int num_threads);
Tcl_Interp* interp);
~WebServer();

// Register the WebLogSink with the Logger so startup output is captured
Expand All @@ -84,6 +83,10 @@ class WebServer
// the network threads racing the main thread's db construction.
void initLogger();

// Sets the number of thread workers for the server's I/O context.
// Must be called before serve() to take effect.
void setThreadCount(int num_threads) { num_threads_ = num_threads; }

// Start the web server on the given port. Launches background
// I/O threads and returns immediately. A second call is a no-op if
// the server is already running.
Expand Down
9 changes: 2 additions & 7 deletions src/web/src/web.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -917,13 +917,8 @@ void Listener::on_accept(beast::error_code ec, Tcp::socket socket)
WebServer::WebServer(odb::dbDatabase* db,
sta::dbSta* sta,
utl::Logger* logger,
Tcl_Interp* interp,
int num_threads)
: db_(db),
sta_(sta),
logger_(logger),
interp_(interp),
num_threads_(num_threads)
Tcl_Interp* interp)
: db_(db), sta_(sta), logger_(logger), interp_(interp), num_threads_(1)
{
}

Expand Down
3 changes: 1 addition & 2 deletions src/web/test/cpp/TestSaveReport.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,7 @@ class SaveReportTest : public tst::Nangate45Fixture
WebServer server(getDb(),
/*sta=*/nullptr,
getLogger(),
/*interp=*/nullptr,
/*num_threads=*/1);
/*interp=*/nullptr);
server.saveReport(path, max_setup, max_hold);
}

Expand Down
Loading