onnxruntime
8e200e13 - Rewrite ORTModule background task coordination (#6700)

Commit
5 years ago
Rewrite ORTModule background task coordination (#6700) * Introduce OrtTasks to replace EventPool * return run_id to frontend * pass run_id to backward * OrtTasks support multiple bg_events * make message_queue a member of orttask * Replace MessageQueue with std::promise * Move status_promise into Task * Move terminate flag into Task * Reenable previously disabled UTs * Add unit tests * Replace condition variables with std::promise * Move to CreateBackgroundTask in the main thread * return status and output in forward_future * use throw for terminating background thread * cleanup tasks at destructor * reenable test_mixed_nnmodule_ortmodules_training * add mutex for ORTTasks functions * add mutex for bg_threads * delay tests before start * add ut for multi-task common backbone Co-authored-by: Sherlock Huang <bahuang@OrtTrainingDev3.af05slrtruoetgaxwwjv5nsq5e.px.internal.cloudapp.net>
Author
Parents
Loading