aimhubio / aim

Aim 💫 — An easy-to-use & supercharged open-source experiment tracker.
https://aimstack.io
Apache License 2.0
4.93k stars 298 forks source link

Replace GRPC as transport for aim tracking server #3104

Closed mihran113 closed 3 months ago

mihran113 commented 4 months ago

Proposed refactoring or deprecation

Replace grpc as a transport for tracking server with http transport. Fastapi can be used for server for tracking.

Motivation

Grpc python's performance is clearly a lot slower than other grpc implementations, and also there are many open issues when remote tracking is used in multiprocessing setups.

Pitch

Use fastapi as a server for tracking. In addition websockets can be used for tracking and bidirectional communication, which will open new opportunies for controlling client processes as well.