blob: 967b9212b30b55c2cc079bd75f082c27a6b339ee [file] [log] [blame]
Raverafc93da2025-06-15 18:12:49 +08001from app import create_app
TRM-coding106204b2025-06-28 00:37:46 +08002from flask_cors import CORS
3import os
4import psutil
5import time
6import GPUtil
7from flask import g, request
8from sqlalchemy import create_engine
9from sqlalchemy.orm import sessionmaker
10from config import Config
11from app.utils.gpuwriter import GpuWriter
Raverafc93da2025-06-15 18:12:49 +080012
13app = create_app()
TRM-coding106204b2025-06-28 00:37:46 +080014CORS(app,
15 resources={r"/*": {"origins": "*"}},
16 supports_credentials=True,
17 allow_headers=["Content-Type", "Authorization"]
18)
19
20proc = psutil.Process(os.getpid())
21
22@app.before_request
23def before_request():
24 g.start_time = time.time()
25 g.start_cpu = proc.cpu_times()
26 g.start_mem = proc.memory_info()
27
28@app.after_request
29def after_request(response):
30 try:
31 # 记录GPU使用情况
32 gpu_writer = GpuWriter(Config.SQLURL)
33 gpus = GPUtil.getGPUs()
34
35 for gpu in gpus:
36 gpu_writer.write_gpu_usage(
37 gpu_id=gpu.id,
38 gpu_usage=gpu.load * 100, # 转换为百分比
39 gpu_memory_usage=gpu.memoryUsed # MB
40 )
41 except Exception as e:
42 print(f"GPU使用情况记录失败: {e}")
43
44 return response
Raverafc93da2025-06-15 18:12:49 +080045
46if __name__ == "__main__":
47 app.run(debug=True,port=8082,host='0.0.0.0')