@@ -146,18 +146,14 @@ class TorchWorkNCCLXQueueCommTest : public ::testing::Test {
146146 EXPECT_CALL (*mock_hook_, clear ()).Times (times_clear);
147147 }
148148
149- void checkWorkQueue (bool isMainThread ) {
150- comm_->checkWorkQueue (isMainThread );
149+ void checkWorkQueue () {
150+ comm_->checkWorkQueue ();
151151 }
152152
153153 const auto & getStreamWorkQueues () {
154154 return comm_->workq_ .stream_work_queues_ ;
155155 }
156156
157- const auto & getCompletedWorkQueue () {
158- return comm_->workq_ .completed_work_queue_ ;
159- }
160-
161157 cudaEvent_t getAsyncDependencyEvent () {
162158 return comm_->dependency_event_ ;
163159 }
@@ -180,7 +176,7 @@ class TorchWorkNCCLXQueueCommTest : public ::testing::Test {
180176
181177TEST_F (TorchWorkNCCLXQueueTest, GarbageCollectEmptyQueue) {
182178 // Test garbage collection on empty queue
183- auto status = queue_->garbageCollect (false );
179+ auto status = queue_->garbageCollect ();
184180 EXPECT_EQ (status, TorchWorkNCCLX::WorkStatus::COMPLETED);
185181}
186182
@@ -191,9 +187,9 @@ TEST_F(TorchWorkNCCLXQueueTest, FinalizeEmptyQueue) {
191187
192188TEST_F (TorchWorkNCCLXQueueTest, MultipleGarbageCollectCalls) {
193189 // Multiple garbage collect calls on empty queue should be safe
194- auto status1 = queue_->garbageCollect (false );
195- auto status2 = queue_->garbageCollect (false );
196- auto status3 = queue_->garbageCollect (true );
190+ auto status1 = queue_->garbageCollect ();
191+ auto status2 = queue_->garbageCollect ();
192+ auto status3 = queue_->garbageCollect ();
197193
198194 EXPECT_EQ (status1, TorchWorkNCCLX::WorkStatus::COMPLETED);
199195 EXPECT_EQ (status2, TorchWorkNCCLX::WorkStatus::COMPLETED);
@@ -202,7 +198,7 @@ TEST_F(TorchWorkNCCLXQueueTest, MultipleGarbageCollectCalls) {
202198
203199TEST_F (TorchWorkNCCLXQueueTest, MultipleFinalizeCallsAfterGarbageCollect) {
204200 // Garbage collect first
205- auto gc_status = queue_->garbageCollect (false );
201+ auto gc_status = queue_->garbageCollect ();
206202 EXPECT_EQ (gc_status, TorchWorkNCCLX::WorkStatus::COMPLETED);
207203
208204 // Multiple finalize calls should be safe
@@ -215,8 +211,8 @@ TEST_F(TorchWorkNCCLXQueueTest, MultipleFinalizeCallsAfterGarbageCollect) {
215211
216212TEST_F (TorchWorkNCCLXQueueTest, GarbageCollectMainThreadFlag) {
217213 // Test that the isMainThread flag doesn't cause issues on empty queue
218- auto status1 = queue_->garbageCollect (false );
219- auto status2 = queue_->garbageCollect (true );
214+ auto status1 = queue_->garbageCollect ();
215+ auto status2 = queue_->garbageCollect ();
220216
221217 EXPECT_EQ (status1, TorchWorkNCCLX::WorkStatus::COMPLETED);
222218 EXPECT_EQ (status2, TorchWorkNCCLX::WorkStatus::COMPLETED);
@@ -232,17 +228,16 @@ TEST_F(TorchWorkNCCLXQueueTest, ConcurrentGarbageCollectCalls) {
232228 // mutex-protected operations work correctly with multiple calls
233229
234230 for (int i = 0 ; i < 10 ; ++i) {
235- auto status =
236- queue_->garbageCollect (i % 2 == 0 ); // Alternate main thread flag
231+ auto status = queue_->garbageCollect ();
237232 EXPECT_EQ (status, TorchWorkNCCLX::WorkStatus::COMPLETED);
238233 }
239234}
240235
241236TEST_F (TorchWorkNCCLXQueueTest, ConcurrentFinalizeAndGarbageCollect) {
242237 // Test that finalize and garbage collect can be called in sequence safely
243- auto gc_status = queue_->garbageCollect (false );
238+ auto gc_status = queue_->garbageCollect ();
244239 auto finalize_status = queue_->finalize ();
245- auto gc_status2 = queue_->garbageCollect (true );
240+ auto gc_status2 = queue_->garbageCollect ();
246241
247242 EXPECT_EQ (gc_status, TorchWorkNCCLX::WorkStatus::COMPLETED);
248243 EXPECT_EQ (finalize_status, TorchWorkNCCLX::WorkStatus::COMPLETED);
@@ -278,7 +273,7 @@ TEST_F(TorchWorkNCCLXQueueTest, QueueCreationAndDestruction) {
278273 EXPECT_NE (queue2, nullptr );
279274
280275 // Test basic operations on new queue
281- auto status = queue2->garbageCollect (false );
276+ auto status = queue2->garbageCollect ();
282277 EXPECT_EQ (status, TorchWorkNCCLX::WorkStatus::COMPLETED);
283278
284279 status = queue2->finalize ();
@@ -294,8 +289,8 @@ TEST_F(TorchWorkNCCLXQueueTest, MultipleQueuesIndependent) {
294289 auto queue3 = std::make_unique<TorchWorkNCCLXQueue>();
295290
296291 // Operations on different queues should not interfere
297- auto status1 = queue_->garbageCollect (false );
298- auto status2 = queue2->garbageCollect (true );
292+ auto status1 = queue_->garbageCollect ();
293+ auto status2 = queue2->garbageCollect ();
299294 auto status3 = queue3->finalize ();
300295
301296 EXPECT_EQ (status1, TorchWorkNCCLX::WorkStatus::COMPLETED);
@@ -322,12 +317,11 @@ TEST_F(TorchWorkNCCLXQueueCommTest, NoLeakedObjectsAfterFinalize) {
322317 auto work = comm_->send (tensor, 1 , true ); // async send
323318
324319 // Simulate the timeout thread calling checkWorkQueue
325- checkWorkQueue (/* isMainThread= */ false );
320+ checkWorkQueue ();
326321 // Comm finalize will call the work queue finalize().
327322 comm_->finalize ();
328323
329324 EXPECT_EQ (getStreamWorkQueues ().size (), 0 );
330- EXPECT_EQ (getCompletedWorkQueue ().size (), 0 );
331325}
332326
333327TEST_F (TorchWorkNCCLXQueueCommTest, NoFailureUnderCudaGraphMode) {
@@ -370,12 +364,11 @@ TEST_F(TorchWorkNCCLXQueueCommTest, NoFailureUnderCudaGraphMode) {
370364 auto work = comm_->send (tensor, 1 , true ); // async send
371365
372366 // Simulate the timeout thread calling checkWorkQueue
373- checkWorkQueue (/* isMainThread= */ false );
367+ checkWorkQueue ();
374368 // Comm finalize will call the work queue finalize().
375369 comm_->finalize ();
376370
377371 EXPECT_EQ (getStreamWorkQueues ().size (), 0 );
378- EXPECT_EQ (getCompletedWorkQueue ().size (), 0 );
379372}
380373
381374} // namespace comms
0 commit comments