diff --git a/controllers/llamaCPP.cc b/controllers/llamaCPP.cc index cf7bbd328..981712463 100644 --- a/controllers/llamaCPP.cc +++ b/controllers/llamaCPP.cc @@ -383,7 +383,7 @@ bool llamaCPP::loadModelImpl(const Json::Value &jsonBody) { gpt_params params; // By default will setting based on number of handlers - int drogon_thread = drogon::app().getThreadNum(); + int drogon_thread = drogon::app().getThreadNum() - 1; LOG_INFO << "Drogon thread is:" << drogon_thread; if (jsonBody) { params.model = jsonBody["llama_model_path"].asString(); diff --git a/controllers/processManager.cc b/controllers/processManager.cc new file mode 100644 index 000000000..13849ac93 --- /dev/null +++ b/controllers/processManager.cc @@ -0,0 +1,11 @@ +#include "processManager.h" +#include +#include + +void processManager::destroy(const HttpRequestPtr &req, + std::function &&callback) { + LOG_INFO << "Program is exitting, goodbye!"; + exit(0); + return; +}; +// Add definition of your processing function here diff --git a/controllers/processManager.h b/controllers/processManager.h new file mode 100644 index 000000000..dcc4b47f6 --- /dev/null +++ b/controllers/processManager.h @@ -0,0 +1,23 @@ +#pragma once + +#include +#include + +using namespace drogon; + +class processManager : public drogon::HttpController { +public: + METHOD_LIST_BEGIN + // use METHOD_ADD to add your custom processing function here; + // METHOD_ADD(processManager::get, "/{2}/{1}", Get); // path is + // /processManager/{arg2}/{arg1} + METHOD_ADD(processManager::destroy, "/destroy", + Delete); // path is /processManager/{arg1}/{arg2}/list + + METHOD_LIST_END + // your declaration of processing function maybe like this: + void destroy(const HttpRequestPtr &req, + std::function &&callback); + // void your_method_name(const HttpRequestPtr& req, std::function &&callback, double p1, int p2) const; +}; diff --git a/llama.cpp b/llama.cpp index fbbc42827..fecac4565 160000 --- a/llama.cpp +++ b/llama.cpp @@ -1 +1 @@ -Subproject commit fbbc42827b2949b95bcde23ce47bb47d006c895d +Subproject commit fecac45658a99eddc4d6e36ba0310ca8f87a77f0 diff --git a/main.cc b/main.cc index 40cbc1375..a1c6187fd 100644 --- a/main.cc +++ b/main.cc @@ -39,7 +39,7 @@ int main(int argc, char *argv[]) { LOG_INFO << "Server started, listening at: " << host << ":" << port; LOG_INFO << "Please load your model"; drogon::app().addListener(host, port); - drogon::app().setThreadNum(thread_num); + drogon::app().setThreadNum(thread_num + 1); LOG_INFO << "Number of thread is:" << drogon::app().getThreadNum(); drogon::app().run();