add gpuusage的逻辑
Change-Id: Ie1634a7d58ab94b05a3ebd7de87d362ca9be2286
diff --git a/Merge/back_rhj/app.py b/Merge/back_rhj/app.py
index df7a598..967b921 100644
--- a/Merge/back_rhj/app.py
+++ b/Merge/back_rhj/app.py
@@ -1,6 +1,47 @@
from app import create_app
+from flask_cors import CORS
+import os
+import psutil
+import time
+import GPUtil
+from flask import g, request
+from sqlalchemy import create_engine
+from sqlalchemy.orm import sessionmaker
+from config import Config
+from app.utils.gpuwriter import GpuWriter
app = create_app()
+CORS(app,
+ resources={r"/*": {"origins": "*"}},
+ supports_credentials=True,
+ allow_headers=["Content-Type", "Authorization"]
+)
+
+proc = psutil.Process(os.getpid())
+
+@app.before_request
+def before_request():
+ g.start_time = time.time()
+ g.start_cpu = proc.cpu_times()
+ g.start_mem = proc.memory_info()
+
+@app.after_request
+def after_request(response):
+ try:
+ # 记录GPU使用情况
+ gpu_writer = GpuWriter(Config.SQLURL)
+ gpus = GPUtil.getGPUs()
+
+ for gpu in gpus:
+ gpu_writer.write_gpu_usage(
+ gpu_id=gpu.id,
+ gpu_usage=gpu.load * 100, # 转换为百分比
+ gpu_memory_usage=gpu.memoryUsed # MB
+ )
+ except Exception as e:
+ print(f"GPU使用情况记录失败: {e}")
+
+ return response
if __name__ == "__main__":
app.run(debug=True,port=8082,host='0.0.0.0')
\ No newline at end of file